Ansible

Come usare Ansible Galaxy

Come usare Ansible Galaxy
Ansible Galaxy è un responsabile del ruolo e della raccolta per Ansible. Puoi confrontarlo con il gestore di pacchetti NPM (Node Package Manager) di Node.js.

Ansible Galaxy ospita ruoli e raccolte Ansible creati dalla community. Invece di riscriverli da zero, puoi installarli sul tuo computer utilizzando lo strumento da riga di comando di Ansible Galaxy e utilizzarli sui tuoi playbook.

Puoi anche scrivere i tuoi ruoli e raccolte e caricarli su Ansible Galaxy. Questo è fuori dallo scopo di questo articolo.

In questo articolo, ti mostrerò come utilizzare lo strumento da riga di comando di Ansible Galaxy per installare ruoli e raccolte di Ansible Galaxy e utilizzarli sul tuo playbook. Quindi iniziamo.

Prerequisiti:

Se vuoi provare gli esempi di questo articolo,

1) Devi avere Ansible installato sul tuo computer.

2) Devi avere almeno 2 host Linux (un Debian 10 e un CentOS 7) configurati per l'automazione di Ansiblensible.

Ci sono molti articoli su LinuxHint dedicati all'installazione di Ansible e alla configurazione degli host per l'automazione di Ansible. Puoi controllarli se necessario.

Configurazione di una directory di progetto:

Prima di iniziare, creiamo una directory di progetto in modo da poter organizzare i nostri file di progetto.

Per creare una directory di progetto galassia-demo/ nel tuo CASA directory, eseguire il seguente comando:

$ mkdir -pv galaxy-demo/playbooks,vars

Ora vai a galassia-demo/ directory come segue:

$ cd galaxy-demo/

Crea un file di configurazione Ansible ansible.cfg nella directory del tuo progetto come segue:

$ nano ansible.cfg

Digita nelle seguenti righe il tuo ansible.cfg file.

[predefiniti]
inventario           = host
host_key_checking   = Falso

Quando hai finito, premi + X seguito da e per salvare il ansible.cfg file di configurazione.

Crea un file di inventario Ansible padroni di casa nella directory del tuo progetto come segue:

$ nano host

Digita le seguenti righe nel tuo dell'ospite file di inventario.

[Banca dati]
vm1.nodokite.come
[ragnatela]
vm9.nodokite.come

Qui, vm1.nodokite.come è un host Debian 10 e vm9.nodokite.come è un host CentOS 7.

Quando hai finito, premi + X seguito da e per salvare il padroni di casa file di inventario.

Per verificare se puoi eseguire il ping degli host Ansible remoti dal tuo computer, esegui il comando seguente:

$ ansible all -u ansible -m ping

Come puoi vedere, posso eseguire il ping dei miei host Ansible remoti vm1.nodokite.com e vm9.nodokite.come.

Ricerca di ruoli e raccolte di Ansible Galaxy:

Puoi cercare i ruoli e le raccolte di Ansible Galaxy nel sito Web ufficiale di Ansible Galaxy.

Una volta caricata la pagina web, fai clic sull'icona di ricerca per cercare ruoli e raccolte di Ansible Galaxy.

Ora digita ciò che stai cercando e fai clic sull'icona di ricerca.

In questo esempio, ho cercato server mysql. Come puoi vedere, viene visualizzato il risultato della ricerca.

Il termine di ricerca server mysql restituito 2 collezioni e molti ruoli.

Un ruolo è un modulo Ansible che fa cose specifiche. Una collezione ha molti ruoli. Questa è la principale differenza tra un ruolo e una collezione.

Per visualizzare ulteriori informazioni su un ruolo, fare clic sul ruolo.

Il Dettagli la scheda di un pacchetto di ruoli mostrerà le informazioni tecniche sul ruolo.

Il Leggimi la scheda visualizzerà le informazioni di installazione e utilizzo del ruolo.

Allo stesso modo, un pacchetto di raccolta avrà le informazioni di installazione sul Dettagli tab.

Sul Soddisfare scheda, verranno visualizzati i ruoli che verranno installati dalle raccolte.

Il Leggimi la scheda mostrerà informazioni utili sulla collezione.

Installazione e utilizzo dei ruoli di Ansible Galaxy:

In questa sezione, ti mostrerò come installare e utilizzare un ruolo Ansible Galaxy. Quindi iniziamo.

Diciamo; vuoi installare il ruolo Ansible Galaxy geerlingguy.mysql.

Per farlo, esegui il seguente comando:

$ ansible-galaxy installa geerlingguy.mysql

Il ruolo della Galassia Ansible geerlingguy.mysql dovrebbe essere installato.

Crea un playbook install_database.igname nel libri di gioco/ directory per testare il geerlingguy.mysql ruolo come segue:

$ nano playbook/install_database.igname

Quindi, digita le seguenti righe nel install_database.igname file.

- host: database
utente: ansible
diventa: sì
file_vars:
-… /vars/database.igname
ruoli:
- ruolo: geerlingguy.mysql

Quando hai finito, premi + X seguito da e per salvare il install_database.igname file.

Qui, il ruolo di geerlingguy.mysql è usato in ruoli sezione.

Il vars_files la sezione viene utilizzata per aggiungere le variabili ruolo/playbook richieste al playbook. Qui, le variabili verranno posizionate nel vars/database.igname file.

Ora, crea un Banca dati.igname file nel variabili/ directory come segue:

$ nano var/database.igname

Ora aggiungi le variabili desiderate nel in Banca dati.igname file. Ho aggiunto le seguenti variabili nel Banca dati.igname file.

database_mysql:
- nome: db01
codifica: utf8mb4
collation: utf8mb4_unicode_ci
utenti_mysql:
- nome: linuxhint
ospite: "%"
password: segreto
privato: "db01.*:TUTTI"

Queste variabili configurano geeringguy.mysql ruolo in modo che crei un nuovo utente linuxhint, imposta la password segreto per il linuxhint utente, crea un nuovo database db01 e sovvenzioni linuxhint utente pieno accesso al full db01 Banca dati.

Quando hai finito, premi + X seguito da e per salvare il Banca dati.igname file.

Ora puoi eseguire il install_database.igname playbook come segue:

$ playbook ansible-playbook/install_database.igname

Come puoi vedere, il playbook sta eseguendo il geerlingguy.mysql ruolo. Potrebbe volerci un po' di tempo per completare.

A questo punto il install_mysql.igname il playbook dovrebbe essere completato.

Sul mio vm1.nodokite.com Debian 10 host, il mysql il servizio è in esecuzione come puoi vedere nello screenshot qui sotto,

Posso anche accedere al server del database MySQL come linuxhint utente.

Come puoi vedere, il database db01 è anche creato.

Quindi, ecco come installi e usi i ruoli di Ansible Galaxy.

Installazione e utilizzo delle raccolte Ansible:

In questa sezione, ti mostrerò come installare e utilizzare una collezione Ansible Galaxy. Quindi iniziamo.

Diciamo; vuoi installare la collezione Ansible Galaxy geerlingguy.php_roles.

Per farlo, esegui il seguente comando:

$ ansible-galaxy collection installa geerlingguy.php_roles

La collezione geerlingguy.php_roles dovrebbe essere installato.

Per utilizzare la raccolta, crea una nuova playbook install_php.igname nel libri di gioco/ directory come segue:

$ nano playbook/install_php.igname

Ora, digita le seguenti righe nel install_php.igname file.

- host: web
utente: ansible
diventa: sì
collezioni:
- geerlingguy.php_roles
ruoli:
- ruolo: php
- ruolo: php_versions
variabili:
php_version: '7.3'

Quando hai finito, premi + X seguito da e per salvare il install_php.igname file.

Queste linee importano il geerlingguy.php_roles raccolta sul tuo playbook.

Nel ruoli sezione, puoi utilizzare i ruoli di cui hai bisogno dalla tua collezione. Qui ho aggiunto 2 ruoli (php e versioni_phpversion) dal geerlingguy.php_roles collezione.

Il php il ruolo non ha variabili specifiche per il ruolo.

Se vuoi configurare un ruolo usando le variabili, puoi aggiungerle sotto il vars sezione del ruolo come segue.

Puoi trovare quali ruoli sono disponibili per l'uso nella pagina ufficiale di Ansible Galaxy della collezione

La pagina ufficiale di Ansible Galaxy del ruolo avrà informazioni su quali variabili è possibile utilizzare per configurare il ruolo.

Ora puoi eseguire il install_php.igname playbook come segue:

$ ansible-playbook playbooks/install_php.igname

Come puoi vedere, il playbook è in esecuzione. Potrebbe volerci un po' di tempo per completare.

A questo punto, il playbook dovrebbe essere completato.

Come puoi vedere, posso accedere al server web Apache 2 in esecuzione sul mio host CentOS 7 vm9.nodokite.come.

Ho anche creato un indice.php file nel /var/www/html/ directory del mio host CentOS 7 vm9.nodokite.come.

Come puoi vedere, il server web può servire indice.php pagina correttamente.

Quindi, è così che installi e utilizzi le raccolte Ansible Galaxy.

Conclusione:

In questo articolo ho spiegato cos'è Ansible Galaxy. Ho anche dimostrato come installare e utilizzare ruoli/raccolte da Ansible Galaxy. Ansible Galaxy ti aiuterà a evitare di reinventare la ruota, nota anche come ripetizione del codice. Dovresti essere in grado di portare a termine i tuoi progetti Ansible più velocemente utilizzando Ansible Galaxy.

Recensione del mouse wireless Microsoft Sculpt Touch
Ho letto di recente del Microsoft Scolpisci il tocco mouse wireless e ho deciso di acquistarlo. Dopo averlo usato per un po', ho deciso di condividere...
Trackpad e puntatore del mouse su schermo AppyMouse per tablet Windows
Gli utenti di tablet spesso mancano il puntatore del mouse, soprattutto quando sono abituati a usare i laptop laptop. Gli smartphone e i tablet touchs...
Il pulsante centrale del mouse non funziona in Windows 10
Il tasto centrale del mouse ti aiuta a scorrere lunghe pagine web e schermate con molti dati. Se si ferma, finirai per usare la tastiera per lo scorri...