Ansible versión 2.1
Tengo un archivo de inventario hosts
[nodes]
host1
host2
...
Y un simple libro de jugadas site.yml
---
- hosts: all
tasks:
- include: tasks/main.yml
Si acabo de comenzar la obra,
ansible-playbook -i hosts site.yml -vvvv
Me sale este error para todos los hosts,
ESTABLISH SSH CONNECTION FOR USER: None
fatal: [host1]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh.", "unreachable": true}
...
Sin embargo, al leer el documento de inventario de Ansible , agregué ansible_user
al hosts
archivo,
[nodes]
host1 ansible_user=root
host2 ansible_user=root
...
Esto resuelve el SSH CONNECTION UNREACHABLE
error. Sin embargo, ¿tengo que agregar al ansible_user=root
lado de todos los hosts? ¿O hay una manera más simple de hacer esto?
Otra forma es usar
--user
para definir un usuario ssh remoto. Escribaansible-playbook --help
para leer más. Este es mi comando típico:ansible-playbook -i hosts site.yml --user <user> --ask-pass -vvvv
--ask-pass
le pedirá que ingrese la contraseña para--user
fuente
Además de modificar el
ansible.cfg
, también puede definir variables para 'todos' los grupos u otros gruposhttps://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html#group-variables
fuente