Kif Oħloq u Niżżel Rwoli fuq Ansible Galaxy u Użahom - Parti 9


Fil-Parti 9 tal-fajl tal-playbook wieħed.

Madankollu, il-kitba ta 'playbooks għall-ġestjoni tal-istess servizz f'ambjenti differenti tista' tkun pjuttost ingombranti u dan ġeneralment iwassal għal redundancy tal-kodiċi. Barra minn hekk, aktar kumplessità tista 'żżid mad-diffikultà fil-ġestjoni tal-apparati kollha.

Fil jidħol rwoli. F'Ansible, ir-rwoli jintużaw għat-tkissir tal-playbooks f'fajls li jistgħu jerġgħu jintużaw li jistgħu jintużaw f'diversi każijiet oħra fejn tinħoloq il-ħtieġa li twettaq kompitu simili. Dan eliminat il-ħtieġa għal kitba mill-ġdid tal-playbooks għal darb'oħra u jiffranka ħafna ħin u enerġija.

Ir-rwoli huma sempliċiment funzjonalitajiet tal-playbooks. Rwol iwassal bi kważi dak li jikkostitwixxi playbook: Kompiti, fajls, moduli, varjabbli u mudelli. Ukoll, innota li kull rwol huwa limitat għal kompitu partikolari jew l-output mixtieq.

Noħolqu Rwol Ansible

Biex toħloq rwol f'Ansible, sempliċement uża s-sintassi.

# ansible-galaxy init role_name 

Direttorji u fajls multipli se jinħolqu fid-direttorju tax-xogħol attwali tiegħek. F'dan il-każ, iddeċidejt li noħloq rwol fid-direttorju /etc/ansible/roles.

Ejja noħolqu rwol imsejjaħ apache.

# ansible-galaxy init apache

Uża l-kmand tas-siġra biex tagħti ħarsa lejn l-istruttura tad-direttorju tar-rwol.

# tree apache

Kif tistgħu taraw, inħolqu diversi direttorji, madankollu, mhux kollha se jintużaw fil-playbook.

Issa, biex tuża r-rwol maħluq ġdid tiegħek f'playbook, iddefinixxi kompitu fil-fajl main.yml li jinsab fid-direttorju tal-kompiti tar-rwol il-ġdid tiegħek.

/apache/tasks/main.yml

---

- hosts: database_servers

  tasks:

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

Wara, oħloq fajl playbook u sejjaħ ir-rwol kif muri.

--- 
- hosts: webservers
  roles:
   - apache

Installazzjoni ta 'Rwol minn Ansible Galaxy

Ir-rwoli għandhom rwol kruċjali fil-qsim tal-kodiċi ma 'utenti oħra fil-komunità Ansible bl-użu tal-pjattaforma Ansible Galaxy. F'Ansible Galaxy, ikollok eluf ta 'rwoli li jwettqu kompiti differenti bħall-installazzjoni ta' servers tal-web u databases, għodod ta 'monitoraġġ, eċċ.

Ansible Galaxy hija database jew repożitorju ta' rwoli Ansible li tista' tisfrutta fil-playbooks tiegħek u tgħin biex tissimplifika l-kompiti tiegħek.

Biex tfittex rwol f'Ansible Galaxy, sempliċement mexxi l-kmand.

# ansible-galaxy search <role>

Per eżempju biex tfittex rwol jismu mysql run.

# ansible-galaxy search mysql

Kif tistgħu taraw, hemm mijiet ta 'rwoli li jaqblu mal-keyword ta' tfittxija mysql. Madankollu, mhux ir-rwoli kollha se jwettqu dak li biħsiebek, għalhekk huwa rakkomandat li taqra l-istruzzjonijiet bir-reqqa.

Biex tiġbor aktar informazzjoni dwar rwol, sempliċement ħaddem il-kmand Ansible:

# ansible-galaxy info 5KYDEV0P5.skydevops-mysql

Fl-eżempju tagħna, se ninstallaw ir-rwol 5KYDEV0P5.skydevops-mysql.

# ansible-galaxy install 5KYDEV0P5.skydevops-mysql

Ir-rwol huwa mniżżel u estratt fid-direttorju tar-rwoli default li jinsab f'/etc/ansible/roles.

Ir-rwol jista' mbagħad jissejjaħ fi playbook, pereżempju:

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

 roles:
    • 5KYDEV0P5.skydevops-mysql

Issa tista 'tmexxi b'mod sikur il-playbook Ansible kif muri.

# ansible-playbook install_mysql.yml

Barra minn hekk, tista 'żżur Ansible Galaxy permezz tal-web browser tiegħek u manwalment tfittex rwoli biex twettaq diversi kompiti kif deskritti mid-dashboard.

Pereżempju, biex tfittex rwol ta’ monitoraġġ bħal elasticsearch, ikklikkja fuq l-għażla ‘Monitoraġġ’ u fittex ir-rwol kif muri.

Ansible Galaxy jagħmilha aktar faċli għall-utenti biex jinstallaw l-aħjar rwoli billi telenka l-aktar rwoli popolari u l-aktar imniżżla. Biex tikseb aktar informazzjoni dwar rwol speċifiku, sempliċement ikklikkja fuqu.

Fi playbook, tista 'wkoll tispeċifika aktar minn rwol wieħed, pereżempju.

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

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

Biex telenka r-rwoli installati, sempliċement mexxi.

# ansible-galaxy list

Ir-rwoli jagħmluha pjuttost faċli li jerġgħu jintużaw u jaqsmu l-playbooks Ansible. B'dan il-mod jiffrankaw ħafna ħin lill-utent biex jipprova jikteb ħafna kodiċi żejda u jqatta' wisq ħin li kien jintuża f'kompiti oħra ta' amministrazzjoni tas-sistema. U dak hu għal din il-gwida.