Dacă sunteți în căutarea unei modalități excelente de a învăța mai multe despre Ansible, urmați linkul către cea mai recentă carte a noastră, Ansible Answers
Acesta este un exemplu destul de elementar, dar sper că veți vedea că tot ce aveți nevoie este un pic de cunoștințe de Python, combinate cu abilitățile dumneavoastră Ansible și veți putea începe să vă creați propriile module Ansible…Nu vă faceți griji dacă cunoștințele dvs. sunt puțin deficitare la oricare dintre ele, totul vă va fi explicat pe măsură ce vom trece împreună prin ele.
Vom acoperi doar un modul de bază „Hello World”, pentru a vă arăta cât de ușor este. Această postare nu va acoperi instalarea și elementele de bază ale Ansible, așa că nu ezitați să consultați postările noastre anterioare pentru mai multe detalii.
1.Începeți prin a accesa mediul dvs. de lucru, care are deja Ansible instalat pe el. În cadrul directorului, în care lucrați, creați un director de bibliotecă:
mkdir library
2.În cadrul directorului de bibliotecă, creați noul dvs. fișier de modul cu numele hello_module.py:
touch library/hello_module.py
3. Cu editorul de text preferat, deschideți noul fișier și adăugați următorul cod(Numerele din stânga sunt doar pentru referință și nu trebuie adăugate în fișier):
Nu este nimic prea complicat aici, dar dacă nu sunteți familiarizat cu Python, iată o defalcare a fiecărei linii. Linia 1 specifică faptul că trebuie să folosească versiunea de Python instalată local. Linia 3 importă modulele specifice care vor rula cu Ansible. Liniile 5-8 reprezintă funcția care va rula ca parte a modulului dumneavoastră, în special linia 6 furnizează clasa AnsibleModule care ne permite să gestionăm parametrii de intrare și ne permite să ieșim din program, răspunsul fiind „hello” și apoi „world!” în linia 7. Liniile 10 și 11 rulează apoi funcția atunci când modulul este apelat.
4.Acum putem crea un playbook pentru a rula modulul. În directorul dvs. de lucru, creați fișierul newmodule_test.yml:
touch newmodule_test.yml
5.Acum puteți porni editorul de text și adăugați următoarele detalii pentru ca playbook-ul dvs. să ruleze
1 ---
2 - hosts: 127.0.0.1
3 tasks:
4 - name: testing our new module
5 hello_module:
6 register: result
7
8 - debug: var=result
Dacă nu ați mai lucrat cu Ansible înainte, codul de mai sus este capabil să atribuie gazda din linia 2 pentru a fi cea pe care lucrați. Liniile de la 3 la 6 rulează noul modul, linia 4 denumind sarcina, linia 5 apelând modulul, iar linia 6 înregistrând rezultatul ca o variabilă numită rezultat. Apoi, în cele din urmă, linia 8 folosește funcția de depanare pentru a afișa rezultatele pentru a vă arăta că totul a funcționat.
6.Acum putem rula noul playbook cu următoarea comandă:
ansible-playbook newmodule_test.yml
Ceea ce vă oferă următoarea ieșire:
Dacă totul a mers bine, ar trebui să vedeți ieșirea menționată mai sus, dându-vă un frumos „bună ziua”: „world!” ca ieșire.
Ok, am fost destul de rapid și murdar aici și acesta a fost scopul postării, dar tot ce aveți nevoie este să vă extindeți cunoștințele de Python și veți putea, de asemenea, să extindeți ceea ce pot face modulele voastre.
Ați găsit această postare utilă? Vă rugăm să apăsați pe butonul de aplauze de mai jos! 🙂
Despre autor
.