Spillene, rollene og oppgavene er den vanskelige strukturen, og denne ansible strukturen inneholder det viktige attributtet som kalles tagger i Ansible. Hver gang vi lanserer en spillbok i Ansible, kan du bruke -tags og -skip tags -kommandoene slik at vi bare kan utføre en bestemt serie med oppgaver, spill og roller. Hvis vi har en spillbok som inneholder så mange oppgaver, men vi ikke ønsker å utføre alle oppgavene i spillboken, i stedet for å utføre hele spillboken, vil vi bare kjøre noen få oppgaver ved å bruke tag -kommandoen i Ansible Playbook.
Vi skal diskutere tagger i dette emnet, som fungerer som en av de viktigste fasettene i Ansible. Vi vil prøve å forklare hva tagger er og hvordan tagger fungerer i Ansible fordi dette er en forvirrende funksjon på Ansible -plattformen.
For eksempel kan en spillbok inneholde tre ansvarsområder: å installere modulen, konfigurere den og sjekke statusen til den distribuerte modulen, for eksempel om tjenesten kjører og tilgjengelig. Siden vi ganske enkelt trenger å se tilstanden til modulene på noen få eksterne maskiner, bruker vi Ansible -tagger i denne situasjonen i stedet for å utføre alle oppgavene i lekeboken. Det gjør oss i stand til å kjøre en viss operasjon utelukkende, slik at vi kan redusere kjøretiden ved å oppbevare alle relaterte aktiviteter i en enkelt lekebok.
Forutsetninger for å bruke taggene i Ansible Playbook
For å sette de praktiske eksemplene i Ansible -programvaren, må vi oppfylle følgende krav.
Det må kreves en ansible kontrollerende server. For å bruke tag -parameteren i Ansible -programvaren, trenger vi de lokale vertene for å kommunisere med dem. I dette tilfellet bruker vi den lokale verten gjennom hele utførelsen som en Target Remote Server. Vi vil lage spillbøker, utføre Ansible tag-kommandoer og overvåke resultatene på eksterne verter fra Ansible-Controller-enheten.
Vi vil ta sikte på å bruke forskjellige scenarier for å undersøke noen av de ansible taggene slik at eleven lett kan forstå konseptet med tagger i en Ansible Playbook.
Eksempel 01: Å få tilgang til en enkelt oppgave i Ansible Playbook
Vi kommer til å implementere i Ansible ved å tilby flere oppgaver i spillboken, og så får vi tilgang til bare en enkelt oppgave ved å bruke taggene i den. For å gjøre det, vil vi først opprette spillboken ved å skrive følgende kommando:
[root@master ansible]# nano ansible_tags.ymlEtter å ha opprettet og lansert Ansible_tags.YML Playbook. Nå begynner vi å skrive kommandoene i spillboken. Først vil vi passere de medfølgende vertene i "Hosts" -parameteren som vi vil bruke "Localhost". Deretter vil vi skrive den "falske" verdien i parameteren "Samle_facts" slik at vi ikke kan få den ekstra informasjonen om Localhost når vi utfører spillboken.
Etter det vil vi begynne å liste opp aktivitetene under "oppgavene" -parameteren en etter en som vi ønsker å utføre. Vi vil avgjøre om dokumentet er der på LocalHost -maskinen i den første prosessen. Hvis det er tilgjengelig, lagrer vi den i "Register" -parameteren, og så vil vi gi det unike navnet til taggen slik at når vi utfører spillboken, vil det være enkelt for oss å få tilgang til taggen. I den andre oppgaven vil vi gjøre det samme som vi har gjort i den første oppgaven, men taggen må være unik, og da vil vi bruke feilsøkingsalternativet for å vise frem oppgaven sammen med den relaterte meldingen.
- verter:Nå vil vi lagre spillboken og deretter lukke den. Vi ønsker å kjøre Ansible_tags.YML Playbook slik at vi skriver følgende kommando i Ansible Terminal for å vise frem utdataene for brukerne.
[root@master ansible]# ansible-playbook ansible_tags.yml -tags check_fileEtter å ha kjørt kommandoen over, vil vi få ønsket utgang i retur. Som vist nedenfor er bare en oppgave utført, og som vises i utdataene som er "sjekk filens eksistens".
Eksempel 02: Ignorer en bestemt tag i Ansible Playbook
Her er det andre eksemplet på Ansible -taggen der vi skal til "hopp" -merket. Det er opp til deg om du vil ignorere alle oppgavene, eller du vil ignorere en bestemt oppgave fra spillboken i Ansible. Vi bruker eksemplet 1 -implementeringen, og da vil vi bare hoppe over oppgaven ved å skrive uttalelsen nedenfor i Ansible Terminal.
[root@master ansible]# ansible-playbook ansible_tags.yml--skip-tags check_fileFra kommandoen over har vi ganske enkelt ignorert oppgaven "sjekkfilen". Nå vises bare en enkelt oppgave i utdataene som er "fil tilgjengelig" i grønn skrift.
Eksempel 03: Fortsett alltid å kjøre oppgaven i Ansible Playbook
Vi skal implementere det tredje eksemplet basert på Ansible -taggen. I dette eksemplet vil vi bruke "alltid" -merket som betyr at en bestemt tag alltid vil utføre i Ansible Playbook. For å starte spillboken, bruk følgende kommando:
[root@master ansible]# nano ansible_tags.ymlI spillboken har vi opprettet flere oppgaver for å kjøre, men vi passerte "alltid" -merket i den siste oppgaven som er "Slett passordet fra Inventory". Følgende er kommandoen implementert i spillboken:
- Verter: AlleEtter det vil vi opprette varelagerfilen for å bygge forbindelsen mellom kontrolleren og målet for målsemonne. Nedenfor er kommandoen:
[root@master ansible]# nano host.ymlHer er varelagerfilen som inneholder informasjonen relatert til “Linux_host” i Ansible.
Alle:For å få ønsket utgang, kjører vi følgende kommando i Ansible -terminalen:
[root@master ansible]# ansible-playbook ansible_tags.yml -tags check_file -i vert.ymlKonklusjon
Tagger i Ansible er blitt forklart i denne artikkelen. Vi forstår nå funksjonen til tagger og stedene i Ansible der vi vil bruke dem. For å hjelpe eleven til å forstå å forstå konseptet med Ansible -tagger, har vi utviklet en rekke eksempler.