Ansible Galaxy¶
Ansible tööriistadega tuleb ka kaasa ansible-galaxy käsureatööriist, mis lihtsustab erinevaid protsesse. Vaatame kuidas see käib.
Best-practice rolli loomine¶
Rolli loomine on Ansibles tegelt suht tüütu protsess - palju kaustu, faile, jms mida peab meeles pidama.
ansible-galaxy teeb selle märkimisväärselt lihtsamaks.
Complete
Teeme uue rolli kasutades ansible-galaxy tööriista.
Mine oma Ansible roles/ kausta, ja uuri ansible-galaxy --help ja ansible-galaxy role --help väljundeid.
Vastavalt väljundile, proovi ansible-galaxy role init <rollinimi> käsku.
Verify
Käsk peaks andma väljundi - Role <rollinimi> was created successfully.
Lisaks, peaks olema tekkinud kaust, rollinimega, kus on sees best-practice stiilis roll.
Roll Ansible Galaxy-st¶
ansible-galaxy lubab ka rolle alla laadida ja manageerida.
Complete
Proovime ise alla tõmmata ja kasutada rolli, lihtsuse huvides alustame rolliga geerlingguy.java.
Tõmbame selle alla: ansible-galaxy role install geerlingguy.java
Kontrollime, et sai installitud: ansible-galaxy role list
Kasutame rolli enda playbooki sees:
- hosts: servers
roles:
- role: geerlingguy.java
become: yes
Ja jooksutame seda playbooki.
Verify
Roll peaks installima, tekkima rollide nimekirja, Ansiblet käivitades rolliga pannakse see käima.
Pärast Ansible jooksutamist peaks masina sees töötama java käsk.
Collection Ansible Galaxyst¶
Collections are a distribution format for Ansible content that can include playbooks, roles, modules, and plugins.
See tähendab, et kollektsiooni sees võib olla põhimõtteliselt kõike, aga kuna eelmises taskis me juba rolli installisime, siis proovime kuidas mooduleid lisada ja kasutada.
Hea näide on timezone moodul. Loe kindlasti ka dokumentatsiooni lehe alguses olevat bannerit.
This module is part of the community.general collection (version 12.1.0).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install community.general.
To use it in a playbook, specify: community.general.timezone
Complete
Installeerime community.general kollektsiooni: ansible-galaxy collection install community.general
Lisame playbooki taski, mis muudab ajatsooni UTC-ks:
- name: Set timezone to UTC
community.general.timezone:
name: UTC
Ja pane playbook pärast käima.
Verify
Playbook jooksis ilusti, ja pärast masinast kontrollides date käsuga on ajatsoon UTC.
Boonus¶
Siin ka väike boonusülesanne neile, kel huvi ja aega.
Complete
Kasutades geerlingguy.nginx Ansible Galaxy rolli:
- Installi serverisse Nginx
- Konfigureeri see serveerima sarnast veebilehte, nagu meil juba kasutusel
- Lülita sisse
nginx_remove_default_vhost=truemuutuja, et meie vana seis eemaldataks.
Verify
Peale Ansible playbooki jooksutamist, mis kasutab geerlingguy.nginx rolli, vastab konfigureeritud veebileht.