Ansible Advanced Host List Inventory

Ansible Advanced Host List Inventory

Ved å bruke en av de nyeste styringsteknikkene, "Ansible", introduserer vi hvordan vi viser hver overvåket vert på enheten. I Ansible bruker vi "Inventory" -plugin for å liste opp alle verter i nettverket.

Det er avgjørende å ha en liste over alle vertsmaskinene dine i Ansible. Det er like avgjørende å holde en varelagerfil organisert som å opprettholde spillbøkene eller oppgavene fordi du stadig vil finne deg selv i en tilstand av usikkerhet og spør deg selv med flere bekymringer hvis varelagerfilen din er feilstyrt. I tillegg til det foregående, minimerer inventarfilens definisjon av de nødvendige variablene oppgavens innhold i spillbøker og fremskynder tolkningene. Det er en gruppe variabler som kan deklareres i både spillbøker og ansible lagerfiler som er ansvarlige for å koble til og konfigurere oppførselen til tilkoblingen til vertsmaskinen.

Forutsetninger:

Følgende er kravene før du implementerer vertslistebeholdningskommandoen i Ansible:

  • For å begynne å implementere, trenger vi først en programvare som brukes til Ansible -konfigurasjon som er installert i serverenheten med den nyeste versjonen. Ansible må konfigureres slik at vi enkelt kan liste opp all-host-maskinen i vårt nettverk.
  • For å gjøre noen konfigurasjonsoppgaver i Ansible, trenger vi en hovedkonfigurasjonsbehandling. I denne opplæringen bruker vi kontrollerserveren som hovedkontroller.
  • For å implementere eventuelle endringer, må vi målrette vertsserverne i vertslisten Inventory Tutorial. Her har vi to målforsøkede verter.

Eksempel: Vertslistebeholdning i maskinen

Her er eksemplet som vi implementerer i Ansible Tool for å sjekke eller definere vertslistebeholdningen. For det vil vi gjøre dette eksemplet i forskjellige trinn, slik at vi lett kan forstå arbeid og implementering av denne opplæringen. Følgende er trinnene:

Trinn 1: Sjekk standard vertslistebeholdningen i Target Remote Host -enheten

Først sjekker vi hvor mange verter som er i varelageret til Ansible Tool. For det bruker vi "Ansible" -uttalelsen med "-liste-vert", slik at vi kan vise standardhåndterte noder i varelageret.

[root@master ansible]# ansible alle-list-verter

Her er utgangen etter å ha skrevet forrige kommando:

Ansible Terminal viser “0 verter” som du kan se i den medfølgende responsen fordi vi ikke erklærte varelageret. Vi genererer varelageret for å liste vertens varebeholdning i terminalen før vi tar opp dette.

Standardbeholdning:

Når vi installerer Ansible i programvaren, bygger Ansible en varelagerfil som blir funnet ved å skrive følgende uttalelse i terminalen:

[root@master ansible]# sudo nano/etc/ansible/hosts

Utfallet genereres når vi skriver forrige uttalelse. Deretter ber den deg om å oppgi passordet:

I dette øyeblikksbildet gir standard Ansible Hosts -filen informasjonen om de ugrupperte vertene og webservergruppevertene. Disse vertene inkluderer nettadressene og forskjellige IP -adresser.

Trinn 2: Definer den tilpassede varelageret i Ansible

I Ansible kan vi også definere varelageret vårt ved å skrive flere uttalelser i Ansible Terminal. Å definere varelageret når du kjører uttalelser og spillbøker er en klok beslutning som forhindrer sammenstøt vertene og fiasko mens du kobler til vertene.

For å begynne å definere varelageret på egen hånd, skriver vi først følgende uttalelse slik at vi kan bygge varelageret i Ansible og liste vertene i den slik at vi gjør forbindelsen mellom Ansible -kontrolleren og de målrettede eksterne vertene.

[root@master ansible]# nano hosts.yml

Etter å ha skrevet den forrige uttalelsen, opprettes og lanseres varelageret i en ny Ansible -terminal med “Vertene.YML ”-tittel. Deretter viser vi de målrettede vertene en etter en i varelageret. Den aller første verten som vi kobler til er en Linux -vert. Vi oppgir IP -adressen til Linux -verten, Ansible -brukeren, Ansible -passordet, typen tilkobling og Ansible portnummer. Vi gjør det samme med den andre målverten. Den andre verten som vi bruker er Ansible -verten. Alle verter som vi har oppført er under Ansible -parameteren i varelageret.

Ansible:
verter:
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: Iris
Ansible_Password: TPSTPS_1
Ansible_Connection: SSH
Ansible_port: 22

Etter å ha laget varelagerfilen og levert vertene i den, avslutter vi nå varelagerfilen og går tilbake til den viktigste Ansible Terminal.

Trinn 3: Lag spillboken i Ansible

Deretter lager vi spillboken i Ansible -verktøyet slik at vi definerer oppgavene. For det skriver vi følgende kommando i Ansible hovedterminalen:

[root@master ansible]# nano ansible_advanced_inventory.yml

Nå lanseres spillboken i en ny terminal. Først skriver vi tittelen på lekeboken. I neste linje gir vi målverten. Vi bruker alternativet Samle fakta som brukes til å få hele informasjonen om verter. Men her passerer vi "nei", noe som betyr at vi ikke vil få alle dataene til vertene.

Deretter viser vi oppgavene i spillboken. Den første oppgaven brukes til å vise målverten med vertsnavnet. I neste oppgave skriver vi ut vertsresultatene.

- Navn: Ansible Advanced Host Inventory
Verter: Ansible [0]
Samle_facts: Nei
oppgaver:
- Navn: Få vertsnavn på den administrerte noden
Shell: "Hostname"
Register: Resultat
- Navn: Skriv ut vertsnavn
Debug:
msg: "resultat.stdout "

Nå ønsker vi å utføre spillboken sammen med varelagerfilen. Så vi avslutter spillboken først. Følgende er uttalelsen som vi bruker for å kjøre kommandoen:

[root@master ansible]# ansible-playbook ansible_advanced_inventory.yml -i vert.yml

Følgende er utgangsdisplayet som viser at tilkoblingen er vellykket. Siden vi passerte Ansible [0] i spillboken, vises den første verten i utgangen:

Konklusjon

Vi hadde en grundig diskusjon på Ansible Inventory gjennom denne opplæringen. Vi lærte hvordan vi bygger opp varelageret i Ansible og kobler dem deretter til Target Remote -vertene. Vi implementerte også et eksempel slik at vi enkelt kan forstå begrepene som varbar inventar.