ansible
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| ansible [2014/06/26 20:18] – kobe | ansible [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Ansible ====== | ||
| - | Il codice relativo ad Ansible e' suddiviso in roles (una sorta di moduli, pacchetti). | ||
| - | |||
| - | //A role is just an organizational container that you can apply to one or multiple hosts in any configuration.// | ||
| - | |||
| - | Un role puo' avere come dipendenza un altro o piu' roles. | ||
| - | //Ansible Galaxy// e' una sorta di gestore pacchetti dei roles e s' | ||
| - | ===== Roles ===== | ||
| - | |||
| - | Premesse: | ||
| - | - sul mio portatile o su un altro server (non master) e' gia' pronto un ambiente Ansible funzionante (vedi piu' sotto) | ||
| - | - sul server c' | ||
| - | |||
| - | L'idea e' di realizzare: | ||
| - | * un numero ristretto di role ad alta priorita' | ||
| - | * tutti i role per le singole app o funzionalita' | ||
| - | |||
| - | I role '' | ||
| - | * server su cui agiscono | ||
| - | * frequenza con cui vengono rieseguiti | ||
| - | |||
| - | ==== 0. Master ==== | ||
| - | |||
| - | * Target: master | ||
| - | * Obiettivo: si assicura che e' installato/ | ||
| - | * Tasks: | ||
| - | * installazione di Ansible e Cron | ||
| - | * configurazione di Ansible (symlink a '' | ||
| - | * configurazione [[SSH config|client SSH]] (symlink a '' | ||
| - | * cronizzazione di tutti i role di Ansible, alta e bassa priorita' | ||
| - | * Cron: ogni 30 minuti? | ||
| - | |||
| - | Nota: una volta lanciato questo dal portatile non bisogna fare piu' niente, si attiva tutto da solo | ||
| - | |||
| - | ==== 1. Core ==== | ||
| - | |||
| - | * Target: all | ||
| - | * Obiettivo: si assicura che il server SSH, i demoni e processi essenziali* e le risorse principali sul server siano OK, in caso contrario invia una mail o un messaggio su jabber | ||
| - | * Cron: ogni 5 minuti? | ||
| - | |||
| - | *In caso di interventi manuali, sara' comunque possibile creare un file di lock per evitare il controllo di certi demoni/ | ||
| - | ==== 2. Test ==== | ||
| - | |||
| - | * Target: 1-2 server | ||
| - | * Obiettivo: si assicura che tutti gli URL ritornino 200, in caso contrario invia una mail o un messaggio su jabber | ||
| - | * Cron: 5 minuti? | ||
| - | |||
| - | Nota: non puo' essere unito a '' | ||
| - | |||
| - | ==== 3+. Tutti gli altri roles ==== | ||
| - | |||
| - | * Target: all (dipende da quali app/ | ||
| - | * Obiettivi: | ||
| - | * template '' | ||
| - | * backup/ | ||
| - | * git rebase master dal branch prod di 1ring | ||
| - | * installazione/ | ||
| - | * app della SPES (rilettore..) | ||
| - | * tutti gli altri task a priorita' | ||
| - | * Cron: 1 volta al giorno? | ||
| - | |||
| - | ===== Installare Ansible (>= 1.6) ===== | ||
| - | |||
| - | Ovviamente e' disponibile la guida ufficiale per [[http:// | ||
| - | |||
| - | **Arch e derivate**: la versione nei repo e' costantemente aggiornata, si puo' installare da li': | ||
| - | # pacman -S ansible | ||
| - | |||
| - | **Ubuntu (e derivate)**: | ||
| - | |||
| - | **Debian testing/ | ||
| - | # apt install ansible | ||
| - | |||
| - | **Debian stable/ | ||
| - | # echo 'deb http:// | ||
| - | # apt-get update | ||
| - | # apt-get -t wheezy-backports install ansible | ||
| - | |||
| - | **#TODO**: | ||
| - | * configurazione | ||
| - | * ambiente testing vagrant/ | ||
| - | * wiki per aggiunta server | ||
| - | * aggiungere chiave pubblica da altro server | ||
| - | * creare connessione e lanciare task | ||
| - | * poi aggiungere in hosts.ini, creare host_vars/ | ||
| - | * wiki workflow git | ||
| - | |||
| - | ===== Note tecniche per l' | ||
| - | |||
| - | * '' | ||
ansible.1403813937.txt.gz · Last modified: 2014/10/28 11:28 (external edit)
