Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Paikallisen Web-palvelimen Konfigurointi Ansiblella | Infrastruktuurin Automatisointi DevOpsissa
DevOpsin Perusteet

bookPaikallisen Web-palvelimen Konfigurointi Ansiblella

Opit yhdistämään etä-Ubuntu-palvelimeen ja hallitsemaan sitä käyttäen Ansiblea. Luomme konfiguraatiotiedostoja, joiden avulla voit automatisoida rutiinitehtäviä. Esimerkkinä päivitämme pakettihakemiston ja asennamme Gitin — ensimmäinen vaihe palvelimen valmistelussa kehitystä tai DevOps-tehtäviä varten.

Note
Huomio

Jos käytät Windowsia, suorita nämä komennot wsl:ssä. Jos käytät macOS:ää tai Linuxia, voit käyttää suoraan terminaalia.

Ansible-asennus

Varmista ennen aloittamista, että Ansible on asennettu koneellesi:

sudo apt update
sudo apt install ansible -y

Ensimmäinen komento, sudo apt update, päivittää järjestelmän pakettien luettelon, jotta se tietää uusimmat saatavilla olevat ohjelmistoversiot. Tämän jälkeen sudo apt install ansible -y asentaa Ansiblen koneellesi ja vahvistaa asennuksen automaattisesti ilman, että sinun tarvitsee kirjoittaa "yes".

Konfiguraatiotiedostojen luominen

Ensin sinun täytyy määrittää lista palvelimista, joihin Ansible muodostaa yhteyden. Tätä varten luodaan inventaariotiedosto nimeltä hosts.ini:

Liitä seuraava sisältö:

hosts.ini

hosts.ini

copy

[ubuntu_container] — isäntäryhmä, jota Ansible hallinnoi;

localhost — isännän osoite (tässä tapauksessa paikallinen kone, jossa Docker-kontti on käynnissä);

ansible_port=2222 — yhteyden SSH-portti;

ansible_user=root ja ansible_password=root — kirjautumistiedot SSH-yhteyttä varten;

ansible_connection=ssh — ohjeistaa Ansiblen käyttämään SSH:ta komentojen suorittamiseen.

hosts.ini-tiedosto määrittää, mihin Ansible yhdistää ja mitä parametreja käytetään. Ilman tätä tiedostoa playbook ei löydä palvelinta eikä voi suorittaa tehtäviä.

Playbook setup.yml

Seuraavaksi luodaan automaatioskripti eli playbook, setup.yml:

Liitä seuraava:

setup.yml

setup.yml

copy

Tiedosto setup.yml määrittelee tehtävät, jotka Ansible suorittaa palvelimella.

  • name: Configure Ubuntu container — playbookin otsikko;

  • hosts: ubuntu_container — isäntäryhmä tiedostosta hosts.ini;

  • become: true — suorittaa komennot pääkäyttäjänä (root);

  • tasks — luettelo toiminnoista, jotka suoritetaan järjestyksessä.

Tässä esimerkissä päivitetään pakettihakemisto ja asennetaan Git.

Ansible-konfiguraatio

Lopuksi määritetään Ansible itse. Tiedosto ansible.cfg mukauttaa Ansible-ohjelman toimintaa. Luo tiedosto ansible.cfg:

Liitä seuraava:

ansible.cfg

ansible.cfg

copy

Tässä tapauksessa poistamme käytöstä SSH-isäntäavaimen tarkistuksen. Tavallisesti Ansible varmistaa palvelimen sormenjäljen turvallisen yhteyden takaamiseksi. Tässä ohjeessa tämä helpottaa toimintaa, koska käytämme väliaikaista Docker-konttia.

Yhteyden testaaminen

Kun olet luonut kaikki määritystiedostot, on tärkeää varmistaa, että kaikki on asetettu oikein. Tämä varmistaa, että Ansible voi muodostaa yhteyden etäiseen Ubuntu-palvelimeen ja suorittaa tehtävät odotetusti.

Kun suoritat tämän komennon, Ansible yrittää muodostaa yhteyden Ubuntu-konttiin SSH:n kautta käyttäen hosts.ini-tiedostossa määriteltyjä tunnistetietoja ja porttia. Jos kaikki on asetettu oikein, näet seuraavaa:

Nyt on aika suorittaa playbook oikeasti, sillä yhteystarkistus onnistui ja voit luottaa siihen, että kaikki toimii oikein.

Kun tämä komento suoritetaan, Ansible yhdistää etäiseen Ubuntu-palvelimeen SSH:n kautta, korottaa oikeudet käyttämällä become: true -asetusta ja suorittaa kaikki tehtävät peräkkäin. Tässä esimerkissä se päivittää ensin pakettien hakemiston, jotta järjestelmä tietää uusimmat ohjelmistoversiot, ja asentaa sitten Git-ohjelmiston.

Kun playbook on suoritettu, voit varmistaa, että Git on asennettu Ubuntu-palvelimelle. Yhdistä ensin palvelimeen SSH:n avulla:

Tarkista sitten asennetun Git-version:

Jos kaikki toimi oikein, näet Git-version, mikä vahvistaa, että playbook suoritettiin onnistuneesti.

1. Mikä on hosts.ini-tiedoston tarkoitus Ansible-ympäristössä?

2. Miksi playbookissa käytetään become: true-määritystä?

question mark

Mikä on hosts.ini-tiedoston tarkoitus Ansible-ympäristössä?

Select the correct answer

question mark

Miksi playbookissa käytetään become: true-määritystä?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 6

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Awesome!

Completion rate improved to 3.7

bookPaikallisen Web-palvelimen Konfigurointi Ansiblella

Pyyhkäise näyttääksesi valikon

Opit yhdistämään etä-Ubuntu-palvelimeen ja hallitsemaan sitä käyttäen Ansiblea. Luomme konfiguraatiotiedostoja, joiden avulla voit automatisoida rutiinitehtäviä. Esimerkkinä päivitämme pakettihakemiston ja asennamme Gitin — ensimmäinen vaihe palvelimen valmistelussa kehitystä tai DevOps-tehtäviä varten.

Note
Huomio

Jos käytät Windowsia, suorita nämä komennot wsl:ssä. Jos käytät macOS:ää tai Linuxia, voit käyttää suoraan terminaalia.

Ansible-asennus

Varmista ennen aloittamista, että Ansible on asennettu koneellesi:

sudo apt update
sudo apt install ansible -y

Ensimmäinen komento, sudo apt update, päivittää järjestelmän pakettien luettelon, jotta se tietää uusimmat saatavilla olevat ohjelmistoversiot. Tämän jälkeen sudo apt install ansible -y asentaa Ansiblen koneellesi ja vahvistaa asennuksen automaattisesti ilman, että sinun tarvitsee kirjoittaa "yes".

Konfiguraatiotiedostojen luominen

Ensin sinun täytyy määrittää lista palvelimista, joihin Ansible muodostaa yhteyden. Tätä varten luodaan inventaariotiedosto nimeltä hosts.ini:

Liitä seuraava sisältö:

hosts.ini

hosts.ini

copy

[ubuntu_container] — isäntäryhmä, jota Ansible hallinnoi;

localhost — isännän osoite (tässä tapauksessa paikallinen kone, jossa Docker-kontti on käynnissä);

ansible_port=2222 — yhteyden SSH-portti;

ansible_user=root ja ansible_password=root — kirjautumistiedot SSH-yhteyttä varten;

ansible_connection=ssh — ohjeistaa Ansiblen käyttämään SSH:ta komentojen suorittamiseen.

hosts.ini-tiedosto määrittää, mihin Ansible yhdistää ja mitä parametreja käytetään. Ilman tätä tiedostoa playbook ei löydä palvelinta eikä voi suorittaa tehtäviä.

Playbook setup.yml

Seuraavaksi luodaan automaatioskripti eli playbook, setup.yml:

Liitä seuraava:

setup.yml

setup.yml

copy

Tiedosto setup.yml määrittelee tehtävät, jotka Ansible suorittaa palvelimella.

  • name: Configure Ubuntu container — playbookin otsikko;

  • hosts: ubuntu_container — isäntäryhmä tiedostosta hosts.ini;

  • become: true — suorittaa komennot pääkäyttäjänä (root);

  • tasks — luettelo toiminnoista, jotka suoritetaan järjestyksessä.

Tässä esimerkissä päivitetään pakettihakemisto ja asennetaan Git.

Ansible-konfiguraatio

Lopuksi määritetään Ansible itse. Tiedosto ansible.cfg mukauttaa Ansible-ohjelman toimintaa. Luo tiedosto ansible.cfg:

Liitä seuraava:

ansible.cfg

ansible.cfg

copy

Tässä tapauksessa poistamme käytöstä SSH-isäntäavaimen tarkistuksen. Tavallisesti Ansible varmistaa palvelimen sormenjäljen turvallisen yhteyden takaamiseksi. Tässä ohjeessa tämä helpottaa toimintaa, koska käytämme väliaikaista Docker-konttia.

Yhteyden testaaminen

Kun olet luonut kaikki määritystiedostot, on tärkeää varmistaa, että kaikki on asetettu oikein. Tämä varmistaa, että Ansible voi muodostaa yhteyden etäiseen Ubuntu-palvelimeen ja suorittaa tehtävät odotetusti.

Kun suoritat tämän komennon, Ansible yrittää muodostaa yhteyden Ubuntu-konttiin SSH:n kautta käyttäen hosts.ini-tiedostossa määriteltyjä tunnistetietoja ja porttia. Jos kaikki on asetettu oikein, näet seuraavaa:

Nyt on aika suorittaa playbook oikeasti, sillä yhteystarkistus onnistui ja voit luottaa siihen, että kaikki toimii oikein.

Kun tämä komento suoritetaan, Ansible yhdistää etäiseen Ubuntu-palvelimeen SSH:n kautta, korottaa oikeudet käyttämällä become: true -asetusta ja suorittaa kaikki tehtävät peräkkäin. Tässä esimerkissä se päivittää ensin pakettien hakemiston, jotta järjestelmä tietää uusimmat ohjelmistoversiot, ja asentaa sitten Git-ohjelmiston.

Kun playbook on suoritettu, voit varmistaa, että Git on asennettu Ubuntu-palvelimelle. Yhdistä ensin palvelimeen SSH:n avulla:

Tarkista sitten asennetun Git-version:

Jos kaikki toimi oikein, näet Git-version, mikä vahvistaa, että playbook suoritettiin onnistuneesti.

1. Mikä on hosts.ini-tiedoston tarkoitus Ansible-ympäristössä?

2. Miksi playbookissa käytetään become: true-määritystä?

question mark

Mikä on hosts.ini-tiedoston tarkoitus Ansible-ympäristössä?

Select the correct answer

question mark

Miksi playbookissa käytetään become: true-määritystä?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 6
some-alt