User Tools

Site Tools


informatica:linux:ansible

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
informatica:linux:ansible [2019/09/10 11:56] joseinformatica:linux:ansible [2019/12/17 19:35] – [Variables para cada servidor] javi
Line 56: Line 56:
                  
 </code> </code>
 +
 +====== Variables para cada servidor ======
 +Dentro de vars/<fichero>.yml El nombre del fichero da igual, pero mejor poner algo representativo
 +<code>
 +---
 +vars:
 +  hosts:
 +    server1:
 +      variable_comun: valor1
 +    server2:
 +      variable_comun: valor2
 +</code>
 +
 +====== Almacenar información sensible (vaults) ======
 +
 +===== Crear archivo con y sin cifrar =====
 +
 +1. Crear un archivo con las variables, y llamarlo "vars.yml" con el siguiente contenido:
 +
 +  var1 = "pepe"
 +  
 +2. Copiar el archivo y llamarlo "vault.yml":
 +
 +  cp vars.yml vault.yml
 +  
 +3. Editar "vault.yml" y añadir (es pura convención) "vault_" delante de cada variable:
 +
 +  vault_var1 = "pepe"
 +
 +4. Cifrar "vault.yml", le añadiremos la etiqueta (es pura convención) "prod":
 +
 +  ansible-vault encrypt vault.yml --vault-id prod@prompt
 +
 +5. Teclear dos veces la contraseña (y anotarla en algún lugar)
 +
 +6. Editar "vars.yml" para que cada variable apunte a su correspondiente "vault_":
 +
 +  vim vault.yml
 +  
 +Y dejarlo tal que así:
 +
 +  var1 = "{{ vault_var1 }}"
 +  
 +7. Incluir los archivos "vars.yml" y "vault.yml". En este ejemplo lo hacemos en las tasks:
 +
 +<code>
 +- name: Include vars.yml
 +  include_vars: vars.yml
 +
 +- name: Include vault.yml
 +  include_vars: vault.yml
 +</code>
 +
 +===== Comandos útiles =====
 +
 +* Editar archivo encriptado
 +
 +  ansible-vault edit vault.yml --ask-vault-pass
 +
 +* Editar y proporcionar archivo (con la contraseña en plano) para no tener que teclearla cada vez
 +
 +  ansible-vault edit vault.yml --vault-id prod@examples/password
 +  
 +* Editar y proporcionar archivo (con la contraseña en plano) para no tener que teclearla cada vez
 +
 +  ansible-vault view vault.yml --vault-id prod@examples/password
 +  
 +
 +  
 +  
 +
 +===== BB =====
 +
 +BB
  
informatica/linux/ansible.txt · Last modified: 2020/01/21 08:00 by javi