Revista Tecnología

Primeros pasos con Ansible

Publicado el 02 febrero 2015 por Dbigcloud @dbigcloud

Ansible es una herramienta de software libre para despliegues de forma automatizada en entornos TI, con esta herramienta conseguimos distribuir aplicaciones o ficheros de configuración, entre otras cosas, por los diferentes nodos de nuestro entorno, es lo que se conoce como una herramienta de Orquestación, como pueden ser Puppet, Chef o Salt. La ventaja de usar Ansible es que no necesitamos instalar agentes ya que realiza estas tareas a través de SSH, utiliza YAML como formato de serialización para describir las configuraciones reusable de los sistemas.

primeros pasos con ansible por DBigCloud

Hoy en día la automatización de tareas en los datacenter se ha convertido en algo indispensable y Ansible nos puede ser muy útil, por ejemplo, cuando aparece una vuelnarabilidad en algún software y necesitamos actualizar multiples hosts, o bien necesitamos registrar una entrada nueva en algun fichero de configuración en multiples hosts, necesitamos automitzarlo y poder llevar un crontol de que servidores tienen dicha actualización.

Hoy vamos a ver como las diferentes opciones para instalar Ansible en las principales distribuciones de linux:

Instalar Ansible en Ubuntu

$ sudo apt-get install software-properties-common
$ sudo apt-add-repository ppa:ansible/ansible
$ sudo apt-get update
$ sudo apt-get install ansible 

Instalar Ansible en Centos, Red Hat o Fedora

Para la instalación de Ansible en estas distribuciones debemos tener configurado el repositorio epel-release, veremos un ejemplo de la instalación en Centos 6, instalando el repositorio para esta versión.

wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
sudo rpm -Uvh epel-release-6*.rpm
sudo yum install ansible 

Instalar Ansible via PIP

Ansible puede ser instalado via PIP, el administrador de paquetes de python.

sudo easy_install pip
sudo pip install ansible

Primeros pasos con Ansible

Ahora que ya disponemos de Ansible instalado, vamos a ver de forma general como usarlo.

El fichero en el que configuraremos todo los hosts es /etc/ansible/hosts tenemos que tener en cuenta que es necesaria establecer una relación de confianza entre el equipo con ansible y los que vamos a administrar de forma remota, por ejemplo añadiriamos los siguientes hosts:

10.0.2.15
dbigcloud01.dbc.com
dbigcloud02.dbc.com

Para comprobar que todos nuestros nodos reponden podemos realizar un ping.

ansible all -m ping 

Por ejemplo podemos si queremos ejecutar un comando en todos nuestros nodos podemos realizar lo siguiente:

ansible all -a "/etc/init.d/snmpd start"

De esta forma conseguimos arrancar el servicio snmp de todos los nodos que hemos configurado anteriormente. 

Con esta herramienta vamos a minimizar el esfuerzo y el tiempo a la hora de administrar hosts remotos, en el próximo artículo os explicare como gestionar inventarios para crear reglas entre diferentes grupos de hosts y realizar despliegues más complejos.



Volver a la Portada de Logo Paperblog

Dossier Paperblog

Revista