Pas 1: instal·lació d'Ansible
Pas 2: Configuració de claus SSH
Pas 3: prova Ansible
Ansible és un sistema de gestió de configuració. La gestió de la configuració permet el desplegament automàtic, la configuració i la gestió centralitzada d'aplicacions. Això és útil si necessiteu desplegar la vostra aplicació en diversos servidors sense haver de fer-ho manualment a tots els vostres servidors. També podeu afegir servidors idèntics al vostre clúster. Amb això, per exemple, podeu configurar un equilibrador de càrrega/clúster/failover.
Ansible proporciona una gestió de configuració perquè pugueu afegir servidors idèntics al vostre clúster molt fàcilment. També podeu fer una gestió centralitzada de tots els vostres servidors en un sol lloc. Podeu executar un apt-get updatea tots els servidors alhora!
Personalment, prefereixo Ansible perquè fa la feina sense haver d'instal·lar programari manualment a tots els vostres servidors. Fa el desplegament i la gestió mitjançant SSH. SSH és un mitjà estàndard per a la gestió del servidor, però un desavantatge aquí és que cal habilitar SSH. Alguns podrien considerar que és un risc de seguretat, tot i que Ansible funciona amb claus SSH, que són més segures.
En aquest tutorial veurem com podem instal·lar Ansible a Ubuntu 14.04.
Pas 1: instal·lació d'Ansible
Podeu instal·lar Ansible amb:
apt-get install ansible
Heu de posar tots els servidors que voleu gestionar amb Ansible al /etc/ansible/hostsfitxer.
Haureu de comentar totes les línies. Aneu a l'última línia del hostsfitxer per crear una categoria. Suposem que teniu un clúster de servidors web i de bases de dades. Podeu crear dues categories diferents: webi db. Si voleu fer un canvi en tots els servidors de bases de dades, podeu utilitzar dbcom a selecció de manera que només es veurien afectats tots els servidors de bases de dades i no altres servidors com ara els vostres servidors web de la webcategoria.
Exemple:
[web]
localhost ansible_ssh_host=127.0.0.1
web1 ansible_ssh_host=192.168.2.2
web2 ansible_ssh_host=0.0.0.0
[db]
db1 ansible_ssh_host=192.168.2.3
db2 ansible_ssh_host=192.168.2.4
db3 ansible_ssh_host=192.168.2.5
db4 ansible_ssh_host=192.168.2.6
Format: name ansible_ssh_host=ip
Tingueu en compte que si utilitzeu Ansible 2.0, la ssh_part ha quedat obsoleta. En lloc d'utilitzar ansible_host.
nameés només un nom per referir-se al vostre servidor, ipés la IP real.
Això li diu a ansible que té 3 servidors web sobre les adreces IP 127.0.0.1, 192.168.2.2i 0.0.0.0i 4 servidors de bases de dades en les adreces IP 192.168.2.3-6.
Pas 2: Configuració de claus SSH
Ansible funciona amb claus SSH. Si la vostra clau SSH als nodes no és la mateixa que al vostre servidor Ansible, us donarà un error. Per tant, hem de generar una clau SSH.
ssh-keygen
Ara afegiu la vostra clau SSH als vostres nodes. Si tots els vostres nodes es troben a Vultr, aneu al gestor de claus SSH de Vultr i afegiu la vostra clau pública. Es pot trobar aquí:
cat ~/.ssh/id_rsa.pub
A continuació, quan desplegueu el vostre servidor, trieu la vostra clau SSH a la secció "Claus SSH".
Pas 3: prova Ansible
Per veure si podeu fer ping a tots els servidors del hostsfitxer, podeu utilitzar l'ordre següent:
ansible -m ping all
Això confirma si els vostres servidors estan en línia o no.
També podeu executar una ordre:
ansible web -m command -a 'shutdown -h now'
Acabem d'executar l'ordre shutdown -h nowa tots els servidors de la webcategoria.
En aquest punt, Ansible està configurat i llest per funcionar. Sembla bastant senzill, oi? Bé, encara no hem cobert la funció més potent d'Ansible: els llibres de jugades. Obteniu més informació sobre els llibres de jugades en aquest tutorial .