Ansible Version 2.1
Ich habe eine Inventardatei hosts
[nodes]
host1
host2
...
Und ein einfaches Spielbuch site.yml
---
- hosts: all
tasks:
- include: tasks/main.yml
Wenn ich gerade mit dem Spiel beginne,
ansible-playbook -i hosts site.yml -vvvv
Ich bekomme diesen Fehler für alle Hosts,
ESTABLISH SSH CONNECTION FOR USER: None
fatal: [host1]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh.", "unreachable": true}
...
Beim Lesen des Ansible Inventory- Dokuments habe ich ansible_user
der hosts
Datei jedoch Folgendes hinzugefügt :
[nodes]
host1 ansible_user=root
host2 ansible_user=root
...
Dies löst den SSH CONNECTION UNREACHABLE
Fehler. Muss ich jedoch ansible_user=root
neben allen Hosts hinzufügen ? Oder gibt es einen einfacheren Weg, dies zu tun?
Eine andere Möglichkeit besteht darin
--user
, den Remote-SSH-Benutzer zu definieren. Geben Sie einansible-playbook --help
, um mehr zu lesen. Dies ist mein typischer Befehl:ansible-playbook -i hosts site.yml --user <user> --ask-pass -vvvv
--ask-pass
fordert Sie auf, das Passwort für einzugeben--user
quelle
Zusätzlich zum Ändern von
ansible.cfg
können Sie auch Variablen für 'alle' Gruppen oder andere Gruppen definierenhttps://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html#group-variables
quelle