Dette er en utrolig funksjon som lar CI/CD -verktøyene som Jenkins integrere med Ansible som gir deg mer kontroll og automatisering av oppgavene du utfører.
Krav
For å følge med denne opplæringen, må du sørge for at du har følgende krav:
Du kan også trenge tilstrekkelige tillatelser til å utføre kommandoene på agenten/kontrolleren eller Ansible Nodes.
Eksempel på prosjektkonfigurasjon
Ansible Inventory Layout
La oss bryte ned prosjektoppsettet. For denne opplæringen har vi en Ubuntu -server som installerer Apache -webserveren ved hjelp av Ansible.
Følgende viser utformingen av vår Ansible Host Inventory -fil:
[Webserverere]
172.29.42.58
Den forrige varelageret inneholder en Webserver -kategori med bare en vert som peker på IP -adressen til Ubuntu -serveren.
Ansible Playbook
Neste er Ansible Playbook som vi ønsker å utføre på serveren. Til slutt, som nevnt, må vi installere Apache Webserver på Ubuntu -maskinen.
Den tilsvarende spillboken er som følger:
---
- Verter: Alle
bli: sant
oppgaver:
- Navn: Oppdater pakningsadministrator cache
apt:
Update_cache: sant
- Navn: Installer Apache Web Server
apt:
Navn: Apache2
Stat: Nåværende
- Navn: Start Apache Web Server
service:
Navn: Apache2
Stat: startet
Den medfølgende lekeboken starter med å oppdatere pakningsadministratoren cache på målverten. Siden vi bare har en vert på Ansible Inventory -filen, kan vi sette vertene til alle som vist i forrige spillbok.
Deretter installerer vi Apache -webserveren ved hjelp av ANTIBLE APT -modulen. Endelig starter vi webserveren ved å bruke servicemodulen.
Jenkinsfile manus
Den siste filen som vi trenger er Jenkinsfile som definerer trinnene og trinnene i Jenkins -rørledningen.
Følgende viser målet Jenkinsfile:
rørledning
agent etikett 'debian'
Stadier
scene ('kjør av Ansible playbook')
trinn
Sh 'Ansible -Playbook -I/etc/Ansible/Hosts -u Ubuntu ~/Playbooks/Install -Apache.yml '
I dette tilfellet bruker Jenkinsfile agenten med "Debian" -etiketten . Deretter påkaller Jenkinsfile Ansible-Playbook-kommandoen for å kjøre installasjon-apache.YML Playbook på målverten.
Å bygge en Jenkins -rørledning
Når målfilene og verktøyene er klare, kan vi sette opp et eksempel på Jenkins -rørledningen.
Logg inn i Jenkins -kontrolleren din og lag en ny Jenkins -rørledning.
I rørledningsdelen velger du "Pipeline -skriptet" og lim inn Jenkinsfile som vi opprettet tidligere.
Klikk "Lagre" og velg "Bygg nå".
Når vi klikker på Build, påkaller Jenkins kommandoene og kjører Ansible -oppgavene som er definert i spillboken.
Konklusjon
Du oppdaget hvordan du bruker Jenkins til å kjøre Ansible Playbooks på målverten ved hjelp av Jenkins Ansible Plugin.