Kuidas luua ja alla laadida rakenduses Ansible Galaxy rolle ning neid kasutada - 9. osa
Üksiku mänguraamatu faili 9. osas.
Esitusraamatute kirjutamine sama teenuse haldamiseks erinevates keskkondades võib olla üsna tülikas ja see toob tavaliselt kaasa koodi koondamise. Lisaks võib keerulisem kõigi seadmete haldamine raskendada.
Sisse tulevad rollid. Rakenduses Ansible kasutatakse rolle esitusraamatute jaotamiseks korduvkasutatavateks failideks, mida saab kasutada mitmel muul juhul, kui tekib vajadus sarnase ülesande täitmiseks. See välistas vajaduse mänguraamatuid uuesti ja uuesti kirjutada ning säästab palju aega ja energiat.
Rollid on lihtsalt mänguraamatute funktsioonid. Rolli juurde kuulub üsna palju seda, mis moodustaks mänguraamatu: ülesanded, failid, moodulid, muutujad ja mallid. Pange tähele ka seda, et iga roll piirdub konkreetse ülesande või soovitud väljundiga.
Anonüümse rolli loomine
Rakenduses Ansible rolli loomiseks kasutage lihtsalt süntaksit.
# ansible-galaxy init role_name
Teie praeguses töökataloogis luuakse mitu kataloogi ja faili. Sel juhul olen otsustanud luua rolli kataloogis/etc/ansible/rollid.
Looge roll nimega apache.
# ansible-galaxy init apache
Puu abil saate visata pilgu rolli kataloogistruktuurile.
# tree apache
Nagu näete, on loodud mitu kataloogi, kuid kõiki neid ei kasutata mänguraamatus.
Nüüd, kui soovite oma äsja loodud rolli mängiraamatus kasutada, määrake ülesanne failis main.yml, mis asub teie uue rolli ülesannete kataloogis.
/apache/tasks/main.yml --- - hosts: database_servers tasks: - name: Install Apache2 on Ubuntu webserver apt: name: apache2 state: installed
Seejärel looge mänguraamatu fail ja helistage rollile nagu näidatud.
--- - hosts: webservers roles: - apache
Rolli installimine võimalikust galaktikast
Rollid mängivad otsustavat rolli Ansible kogukonna teiste kasutajatega, kasutades Ansible Galaxy platvormi. Rakenduses Ansible Galaxy saate tuhandeid rolle, mis täidavad erinevaid ülesandeid, näiteks veebiserverite ja andmebaaside installimist, jälgimistööriistu jne.
Ansible Galaxy on Ansible rollide andmebaas või hoidla, mida saate kasutada oma raamatutes ja aidata oma ülesandeid sujuvamaks muuta.
Ansible Galaxy rollist otsimiseks käivitage lihtsalt käsk.
# ansible-galaxy search <role>
Näiteks rolli otsimiseks nimega mysql run.
# ansible-galaxy search mysql
Nagu näete, on sadu rolle, mis vastavad otsingusõnale mysql. Kuid mitte kõik rollid ei täida teie kavatsusi, seetõttu on soovitatav juhised hoolikalt läbi lugeda.
Rolli kohta lisateabe saamiseks käivitage lihtsalt käsk Ansible:
# ansible-galaxy info 5KYDEV0P5.skydevops-mysql
Meie näites installime rolli 5KYDEV0P5.skydevops-mysql.
# ansible-galaxy install 5KYDEV0P5.skydevops-mysql
Roll laaditakse alla ja eraldatakse vaikerollide kataloogi, mis asub aadressil/etc/ansible/role.
Rolli võib seejärel kutsuda mänguraamatusse, näiteks:
--- - name: Install MySQL server hosts: webservers roles: • 5KYDEV0P5.skydevops-mysql
Nüüd saate rakendust Ansible ohutult käivitada, nagu näidatud.
# ansible-playbook install_mysql.yml
Lisaks võite veebibrauseri kaudu külastada Ansible Galaxy'd ja otsida käsitsi rolle erinevate ülesannete täitmiseks, nagu juhtpaneelil on kirjeldatud.
Näiteks jälgimisrolli, näiteks elasticsearchi otsimiseks klõpsake valikul ‘Monitoring’ ja otsige rolli nagu näidatud.
Ansible Galaxy muudab kasutajate jaoks parimate rollide installimise lihtsamaks, loetledes kõige populaarsemad ja enim allalaaditud rollid. Konkreetse rolli kohta lisateabe saamiseks klõpsake lihtsalt seda.
Mänguraamatus saate määrata ka näiteks mitu rolli.
--- - name: Install MySQL server hosts: webservers roles: • 5KYDEV0P5.skydevops-mysql • Aaronpederson.mariadb
Installitud rollide loetlemiseks käivitage lihtsalt.
# ansible-galaxy list
Rollide abil on Ansiblei raamatute taaskasutamine ja jagamine üsna lihtne. Nii säästavad nad kasutajat palju aega, proovides kirjutada palju üleliigseid koode, ja kulutavad liiga palju aega, mida oleks kasutatud muude süsteemihaldustoimingute jaoks. Ja see on selle juhendi jaoks kõik.