meta data de esta página
  •  

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
aplicaciones:ansible [2018/01/22 13:32] – [Conceptos básicos] lcaplicaciones:ansible [2023/01/18 14:10] (actual) – editor externo 127.0.0.1
Línea 12: Línea 12:
  
 ==== Conceptos básicos ==== ==== Conceptos básicos ====
-  * Inventario .  Archivo donde agrupamos una lista de servidores+  * Inventario .  Archivo donde agrupamos una lista de servidores. Por defecto en /etc/ansible/hosts
   * Playbooks.  Es un archivo donde listamos las tareas que de deben ejecutar.  Se escribe en formato YAML   * Playbooks.  Es un archivo donde listamos las tareas que de deben ejecutar.  Se escribe en formato YAML
   * Task.  Un bloque dentro del Playbook , en el que definimos una acción concreta a realizar.   * Task.  Un bloque dentro del Playbook , en el que definimos una acción concreta a realizar.
Línea 20: Línea 20:
  
  
 +{{tag>ansible}}
 ==== Comandos básicos ==== ==== Comandos básicos ====
-=== Verificar que tenemos acceso a los clientes === +=== Configurar el acceso a los clientes  === 
-<sxh>ansible -i miinventario -m ping all</sxh>+Verificar que tenemos acceso a los clientes <sxh>ansible -i miinventario -m ping all</sxh> 
 + 
 +Generamos nuestras llaves ssh <sxh>ssh-keygen</sxh> 
 +<sxh bash> 
 +[root@localhost ~]# ssh-keygen 
 +Generating public/private rsa key pair. 
 +Enter file in which to save the key (/root/.ssh/id_rsa): 
 +Created directory '/root/.ssh'
 +Enter passphrase (empty for no passphrase): 
 +Enter same passphrase again: 
 +Your identification has been saved in /root/.ssh/id_rsa. 
 +Your public key has been saved in /root/.ssh/id_rsa.pub. 
 +The key fingerprint is: 
 +SHA256:LXpEhlOQ04nsA3CF/nKfPB3GgDJv0JBw2TZNwgGF1kI root@localhost.localdomain 
 +The key's randomart image is: 
 ++---[RSA 2048]----+ 
 +|  o+E&*Oo.       | 
 +|   oX @++        | 
 +|   o Bo+o        | 
 +|    = =+..       | 
 +|     * .So.      | 
 +|    . =o .+      | 
 +|     +.o.+ .     | 
 +|       .= .      | 
 +|               | 
 ++----[SHA256]-----+ 
 +[root@localhost ~]# 
 +</sxh> 
 +Una vez finalizado el proceso de generación disponemos de 2 ficheros: ~/.ssh/id_rsa y ~/.ssh/id_rsa.pub 
 + 
 +El siguiente paso sería copiar nuestro fichero de llave pública al cliente   
 +<sxh>ssh-copy-id -i ~/.ssh/id_rsa.pub usuario@ipcliente</sxh> 
 + 
 +si todo ha ido bien ahora deberiamos de poder acceder desde nuestro servidor de ansible al equipo cliente ejecutando  
 +<sxh>ssh ip_maquina_cliente</sxh> 
 + 
 +=== Configurar nuestra lista de clientes === 
 +El fichero que viene por defecto para indicar los clientes es **/etc/ansible/hosts** aunque nosotros podemos definir distintos ficheros según nuestas necesidades. 
 + 
 +Editamos es fichero por defecto y definimos los equipos clientes  
 +<sxh>vi /etc/ansible/hosts</sxh> 
 +<file> 
 +[centos] 
 +hostcliente.midominio.local 
 +hostcliente2.midominio.net 
 +</file> 
 + 
 +Para comprobar que todos nuestros nodos reponden podemos realizar un ping. 
 + 
 +<sxh>ansible all -m ping </sxh> 
 + 
 +Si por ejemplo queremos ejecutar un comando en todos nuestros nodos: 
 + 
 +<sxh>ansible all -a "/etc/init.d/httpd start"</sxh> 
 + 
 + 
 +===== Referencias ===== 
 +  * [[https://github.com/ansible/ansible-examples|Ejemplos]] 
 +  * https://www.ssh.com/ssh/copy-id 
 +  * https://voragine.net/linux/acceso-ssh-seguro-servidor-autenticacion-clave-publica 
 +  * https://blog.deiser.com/es/primeros-pasos-con-ansible 
 +  * https://www.maquinasvirtuales.eu/docker-swarm-instalar-ansible-awx/