Junior
Nombra las formas de asignar variables en Ansible.
sobes.tech AI
Respuesta de la IA
Las variables en Ansible se pueden definir de varias maneras:
- Archivos de inventario: en archivos
hostso en archivos separados en los directoriosgroup_varsyhost_vars. - Línea de comandos: usando la opción
--extra-varso-e. - Playbooks: en las secciones
vars,vars_files,include_vars. - Roles: en los directorios
varso mediante parámetros al llamar al rol. - Archivos de configuración de Ansible: en
ansible.cfg, aunque no se recomienda para valores específicos. - Inventario dinámico: mediante scripts que generan inventario y variables en tiempo de ejecución.
- Vaults: para almacenar datos secretos.
El orden de prioridad para asignar variables en Ansible de menor a mayor:
ansible.cfg- Archivos de inventario (
host_vars,group_vars) - Roles (de
default, luego devars) - Sección
varsen el playbook - Variables pasadas por línea de comandos
Ejemplo de asignación de variable en inventario:
# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100
[webservers:vars]
http_port=80
Ejemplo de asignación de variable en playbook:
# playbook.yml
---
- name: Configurar servidor web
hosts: webservers
vars:
greeting: "Hello, World!"
tasks:
- name: Imprimir saludo
debug:
msg: "{{ greeting }}"
Ejemplo de asignación de variable desde línea de comandos:
ansible-playbook playbook.yml -e "user=admin"