Ansible Advanced Host List Inventory

Ansible Advanced Host List Inventory



Hyödynnämme yhtä viimeisimmistä hallintatekniikoista, 'Ansible', esittelemme, kuinka luettelemme kaikki laitteen valvotut isännät. Ansiblessa käytämme 'inventory'-laajennusta luetteloimaan kaikki verkon isännät.

On erittäin tärkeää, että sinulla on luettelo kaikista isäntäkoneistasi Ansiblessa. Varastotiedoston pitäminen järjestyksessä on aivan yhtä tärkeää kuin pelikirjojen tai tehtävien ylläpitäminen, koska joudut jatkuvasti epävarmuuteen ja kysyt itseltäsi useita huolenaiheita, jos varastotiedostoasi hoidetaan väärin. Edellisen lisäksi inventaariotiedoston määrittely vaadituista muuttujista minimoi tehtävän sisällön leikkikirjoissa ja nopeuttaa tulkintaa. Sekä pelikirjoissasi että Ansible-inventaaritiedostoissa voidaan ilmoittaa joukko muuttujia, jotka vastaavat yhteyden muodostamisesta isäntäkoneeseen ja yhteyden toiminnan määrittämiseen.







Edellytykset:

Seuraavat ovat vaatimukset ennen isäntäluettelon inventointikomennon toteuttamista Ansiblessa:



  • Toteutuksen aloittamiseksi tarvitsemme ensin Ansible-konfigurointiin käytettävän ohjelmiston, joka on asennettu palvelinlaitteeseen uusimmalla versiolla. Ansible on konfiguroitava niin, että voimme helposti listata kaikki isäntäkoneen verkossamme.
  • Tarvitsemme pääkokoonpanonhallinnan tehdäksemme minkä tahansa Ansiblen määritystehtävän. Tässä opetusohjelmassa käytämme ohjainpalvelinta pääohjaimena.
  • Muutosten toteuttamiseksi meidän on kohdistettava isäntäpalvelimiin isäntäluettelon inventaarion opetusohjelmassa. Tässä meillä on kaksi etäisäntäkohdetta.

Esimerkki: Isäntäluettelo-varasto koneessa

Tässä on esimerkki, jonka otamme käyttöön Ansible-työkalussa isäntäluettelovaraston tarkistamiseksi tai määrittelemiseksi. Tätä varten teemme tämän esimerkin eri vaiheissa, jotta voimme helposti ymmärtää tämän opetusohjelman toimintaa ja toteutusta. Seuraavat vaiheet:



Vaihe 1: Tarkista kohde-etäisäntälaitteen Default Host List -varasto





Ensin tarkistamme, kuinka monta isäntiä on Ansible-työkalun luettelossa. Tätä varten käytämme 'ansible'-lausetta '—list-hosts' kanssa, jotta voimme näyttää oletusarvoisesti käsitellyt solmut inventaariossa.

[ juuri @ mestari mahdollinen ] # ansible all --list-hosts



Tässä on tulos edellisen komennon kirjoittamisen jälkeen:

Ansible-pääte näyttää '0 hosts', kuten näet toimitetusta vastauksesta, koska emme ilmoittaneet varastoa. Luomme varaston listataksemme isännän varaston terminaaliin ennen kuin käsittelemme asiaa.

Oletusmainosjakauma:

Kun asennamme Ansiblen ohjelmistoon, Ansible rakentaa inventaariotiedoston, joka löydetään kirjoittamalla terminaaliin seuraava lausunto:

[ juuri @ mestari mahdollinen ] # sudo nano /etc/ansible/hosts

Tulos syntyy, kun kirjoitamme edellisen lauseen. Sitten se pyytää sinua syöttämään salasanan:

Tässä tilannekuvassa oletusarvoinen Ansible hosts -tiedosto tarjoaa tiedot ryhmittämättömistä isännistä ja verkkopalvelinryhmien isännistä. Nämä isännät sisältävät URL-osoitteet ja erilaiset IP-osoitteet.

Vaihe 2: Määritä mukautettu varasto Ansiblessa

Ansiblessa voimme myös määrittää varastomme kirjoittamalla useita lausuntoja Ansible-päätteeseen. Varaston määrittäminen lauseita ja pelikirjoja suoritettaessa on viisas päätös, joka estää isäntien yhteentörmäyksen ja epäonnistumisen yhteyden muodostamisessa isäntien kanssa.

Aloitaksemme varaston määrittämisen itse, kirjoitamme ensin seuraavan lausunnon, jotta voimme rakentaa inventaarion Ansiblessa ja listata siinä olevat isännät, jotta voimme muodostaa yhteyden Ansible-ohjaimen ja kohdennettujen etäisäntien välille.

[ juuri @ mestari mahdollinen ] # nano hosts.yml

Edellisen lausunnon kirjoittamisen jälkeen inventaario luodaan ja käynnistetään uudessa Ansible-päätteessä, jonka otsikko on “hosts.yml”. Seuraavaksi luettelemme kohdeisännät yksitellen luetteloon. Ensimmäinen isäntä, johon olemme yhteydessä, on Linux-isäntä. Tarjoamme Linux-isännän IP-osoitteen, Ansible-käyttäjän, Ansible-salasanan, yhteystyypin ja Ansible-portin numeron. Teemme samoin myös toisen kohdeisännän kanssa. Toinen käyttämämme isäntä on Ansible-isäntä. Kaikki luettelemamme isännät ovat inventaarion Ansible-parametrin alla.

Mahdollinen:
isännät:
Linux_Host:
ansible_host: 192.168.3.229
ansible_user: root
ansible_password: tpstps_22
ansible_connection: ssh
ansible_port: 22

Ansible_Host:
ansible_host: 192.168.7.10
ansible_user: iiris
ansible_password: TpsTps_1
ansible_connection: ssh
ansible_port: 22

Kun inventaariotiedosto on tehty ja siinä olevat isännät on toimitettu, lopetamme inventaariotiedoston ja palaamme Ansible-pääterminaaliin.

Vaihe 3: Luo pelikirja Ansiblessa

Seuraavaksi luomme pelikirjan Ansible-työkalulla, jotta voimme määritellä tehtävät. Tätä varten kirjoitamme seuraavan komennon Ansible-pääterminaaliin:

[ juuri @ mestari mahdollinen ] # nano ansible_advanced_inventory.yml

Nyt pelikirja on julkaistu uudessa terminaalissa. Ensin kirjoitamme pelikirjan otsikon. Seuraavalla rivillä annamme kohdeisännän. Käytämme kerätä fakta -vaihtoehtoa, jota käytetään saamaan kaikki tiedot isännistä. Mutta tässä ohitamme 'ei', mikä tarkoittaa, että emme halua saada kaikkia isäntien tietoja.

Seuraavaksi luetellaan tehtävät pelikirjaan. Ensimmäistä tehtävää käytetään näyttämään kohdeisäntä isäntänimellä. Seuraavassa tehtävässä tulostamme isäntätulokset.

- nimi: mahdollinen edistynyt isäntävarasto
isännät: Ansible [ 0 ]
kerätä_facts: ei
tehtävät:

- nimi: Hanki isäntänimi hallitusta solmusta
kuori: 'isäntänimi'
rekisteröinti: tulos

- nimi: Tulosta isäntänimi
debug:
viesti: '{{tulos.stdout}}'

Nyt haluamme suorittaa pelikirjan yhdessä inventaariotiedoston kanssa. Joten lopetamme ensin pelikirjan. Seuraava on lause, jota käytämme komennon suorittamiseen:

[ juuri @ mestari mahdollinen ] # ansible-playbook ansible_advanced_inventory.yml –i host.yml

Seuraavassa on lähtönäyttö, joka osoittaa, että yhteys on onnistunut. Koska lähdimme Ansible[0]:n läpi pelikirjassa, ensimmäinen isäntä näkyy tulosteessa:

Johtopäätös

Kävimme perusteellisen keskustelun Ansible-inventaariosta koko tämän opetusohjelman ajan. Opimme luomaan varaston Ansiblessa ja yhdistämään ne sitten kohteena oleviin etäisänteihin. Totesimme myös esimerkin, jotta voimme helposti ymmärtää Ansible-inventaarion käsitteitä.