Hvernig á að búa til og hlaða niður hlutverkum á Ansible Galaxy og nota þau - Part 9


Í hluta 9 af einni leikbókarskrá.

Hins vegar getur verið ansi flókið að skrifa leikrit til að stjórna sömu þjónustu í mismunandi umhverfi og það leiðir venjulega til offramboðs kóða. Að auki getur flóknara aukið erfiðleikana við að stjórna öllum tækjunum.

Inn kemur hlutverk. Í Ansible eru hlutverk notuð til að brjóta niður leikbækur í endurnýtanlegar skrár sem hægt er að nota í nokkrum öðrum tilvikum þar sem þörf er á að framkvæma svipað verkefni. Þetta útilokaði þörfina á að endurskrifa leikritabækur aftur og aftur og sparar mikinn tíma og orku.

Hlutverk eru einfaldlega virkni leikbóka. Hlutverk fylgir nokkurn veginn það sem myndi teljast leikbók: Verkefni, skrár, einingar, breytur og sniðmát. Athugaðu einnig að hvert hlutverk er takmarkað við tiltekið verkefni eða æskilega framleiðsla.

Að búa til Ansible hlutverk

Til að búa til hlutverk í Ansible, notaðu einfaldlega setningafræðina.

# ansible-galaxy init role_name 

Margar möppur og skrár verða búnar til í núverandi vinnumöppu þinni. Í þessu tilviki hef ég ákveðið að búa til hlutverk í /etc/ansible/roles möppunni.

Við skulum búa til hlutverk sem kallast apache.

# ansible-galaxy init apache

Notaðu tréskipunina til að líta yfir möppuuppbyggingu hlutverksins.

# tree apache

Eins og þú sérð hafa nokkrar möppur verið búnar til, en þær verða ekki allar notaðar í leikbókinni.

Nú, til að nota nýstofnað hlutverk þitt í leikbók, skilgreindu verkefni í main.yml skránni sem er í verkefnaskránni í nýja hlutverkinu þínu.

/apache/tasks/main.yml

---

- hosts: database_servers

  tasks:

    - name: Install Apache2 on Ubuntu webserver
      apt:
         name: apache2
         state: installed

Síðan skaltu búa til leikbókarskrá og hringja í hlutverkið eins og sýnt er.

--- 
- hosts: webservers
  roles:
   - apache

Að setja upp hlutverk frá Ansible Galaxy

Hlutverk gegna mikilvægu hlutverki við að deila kóða með öðrum notendum í Ansible samfélaginu með því að nota Ansible Galaxy pallinn. Í Ansible Galaxy færðu þúsundir hlutverka sem sinna mismunandi verkefnum eins og uppsetningu á vefþjónum og gagnagrunnum, eftirlitsverkfærum o.s.frv.

Ansible Galaxy er gagnagrunnur eða geymsla Ansible hlutverka sem þú getur nýtt þér í leikbókunum þínum og hjálpað til við að hagræða verkefnum þínum.

Til að leita að hlutverki í Ansible Galaxy skaltu einfaldlega keyra skipunina.

# ansible-galaxy search <role>

Til dæmis til að leita að hlutverki sem heitir mysql run.

# ansible-galaxy search mysql

Eins og þú sérð eru hundruð hlutverka sem passa við leitarorðið mysql. Hins vegar munu ekki öll hlutverk framkvæma það sem þú ætlar þér, svo það er mælt með því að þú lesir leiðbeiningarnar vandlega.

Til að afla frekari upplýsinga um hlutverk skaltu einfaldlega keyra Ansible skipunina:

# ansible-galaxy info 5KYDEV0P5.skydevops-mysql

Í dæminu okkar ætlum við að setja upp hlutverkið 5KYDEV0P5.skydevops-mysql.

# ansible-galaxy install 5KYDEV0P5.skydevops-mysql

Hlutverkið er hlaðið niður og dregið út í sjálfgefna hlutverkaskrána sem staðsett er á /etc/ansible/roles.

Hlutverkið er síðan hægt að kalla í leikbók, til dæmis:

---
- name: Install MySQL server
  hosts: webservers

 roles:
    • 5KYDEV0P5.skydevops-mysql

Nú geturðu örugglega keyrt Ansible leikbókina eins og sýnt er.

# ansible-playbook install_mysql.yml

Að auki geturðu heimsótt Ansible Galaxy í gegnum vafrann þinn og leitað handvirkt að hlutverkum til að framkvæma ýmis verkefni eins og lýst er á mælaborðinu.

Til dæmis, til að leita að eftirlitshlutverki eins og elasticsearch, smelltu á 'Vöktun' valkostinn og leitaðu að hlutverkinu eins og sýnt er.

Ansible Galaxy auðveldar notendum að setja upp bestu hlutverkin með því að skrá vinsælustu og mest niðurhalaða hlutverkin. Til að fá frekari upplýsingar um tiltekið hlutverk, smelltu einfaldlega á það.

Í leikbók er einnig hægt að tilgreina fleiri en eitt hlutverk, til dæmis.

---
- name: Install MySQL server
  hosts: webservers

 roles:
    • 5KYDEV0P5.skydevops-mysql
    • Aaronpederson.mariadb

Til að skrá uppsett hlutverk skaltu einfaldlega keyra.

# ansible-galaxy list

Hlutverk gera það auðvelt að endurnýta og deila Ansible leikbókum. Þannig spara þeir notanda mikinn tíma við að reyna að skrifa fullt af óþarfa kóða og eyða of miklum tíma sem hefði verið notaður í önnur kerfisstjórnunarverkefni. Og það er það fyrir þennan handbók.