J'essaye Ansible mais je fais fasse à un problème dont je ne trouve pas la source, ou plutot comment le résoudre.
Voilà mon message d'erreur suite a un essai de déploiement d'un paquet qu'une VM qui tourne sur Ubuntu ( Master ) et la machine CentOs ( Slave) sur laquelle je veux installer un paquet.
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# ansible-playbook -i hosts Playbook.yml
PLAY [Installation des serveurs web] *********************************************************************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************************************************************
fatal: [192.168.1.29]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Permission denied (publickey,password).\r\n", "unreachable": true}
to retry, use: --limit @/home/rbo/Documents/Ansible/Playbook.retry
PLAY RECAP ***********************************************************************************************************************************************************************
192.168.1.29 : ok=0 changed=0 unreachable=1 failed=0
Test de connexion success
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# ansible all -m ping
Enter passphrase for key '/root/.ssh/id_rsa':
192.168.1.26 | SUCCESS => {
"changed": false,
"failed": false,
"ping": "pong"
}
Fichier hosts et playbook.yml
[web]
192.168.1.26
Playbook.yml
---
- name: Installation des serveurs web
hosts: web
remote_user: root
tasks:
- name: Installation de Git
yum: name=git
Je peux me connecter en ssh à ma machine CentOs sans problème mais le deploiement refuse de se faire à cause de cette erreur denied access.
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# ssh root@192.168.1.26
Enter passphrase for key '/root/.ssh/id_rsa':
Last login: Fri Nov 10 02:42:19 2017 from rbo-virtualbox.home
[root@pc-271 ~]#
Problème de config dans le playbook hôtes je pense, car dans le premier snippet on a une tentative de connexion sur '192.168.1.29' au lieu de '192.168.1.26'.
Problème de config dans le playbook hôtes je pense, car dans le premier snippet on a une tentative de connexion sur '192.168.1.29' au lieu de '192.168.1.26'.
- Edité par mika83 il y a 3 minutes
Slt Mika,
Mais corrige moi si je le trompe mais le hosts et playbook.yml doivent se situer sur ma machine master uniquement ?
Parceque j'ai bien renseigné l'IP de la machine slave dans le fichier hosts qui est 192.168.1.26
Désolé j'avais écris un peu vite, je voulais dire 'problème dans la définition de l'hôte'. Il est possible de définir les hôtes à plusieurs endroits :
par défaut '/etc/ansible/hosts' (peut être changé via la directive 'inventory = /new/path/hosts' dans le fichier de configuration '/etc/ansible/ansible.cfg')
sur le fichier d'inventaire souhaité via l'option '-i inventoryfile,' (ce que tu as fais)
via des variables et variables spéciales (que ce soit dans la commande ou dans le playbook)
d'autres possibilités ...
Juste une petite remarque concernant l'option '-i', il faut être vigilant car :
# ici le fichier d'inventaire 'hosts' est utilise :
ansible-playbook -i hosts Playbook.yml
# ici l'hote 'hosts' est utilise en se basant sur l'inventaire par defaut :
ansible-playbook -i hosts, Playbook.yml
Sinon concernant ton problème, que donne les commandes suivante :
# liste les hotes utilises
ansible-playbook -i hosts Playbook.yml --list-hosts
# affiche le fichier d'inventaire qui est utilise
ansible-playbook -vvv -i hosts Playbook.yml | grep inventory
# pour nous donner un apercu du repertoire de travail
tree /your/working/directory/
Désolé j'avais écris un peu vite, je voulais dire 'problème dans la définition de l'hôte'. Il est possible de définir les hôtes à plusieurs endroits :
par défaut '/etc/ansible/hosts' (peut être changé via la directive 'inventory = /new/path/hosts' dans le fichier de configuration '/etc/ansible/ansible.cfg')
sur le fichier d'inventaire souhaité via l'option '-i inventoryfile,' (ce que tu as fais)
via des variables et variables spéciales (que ce soit dans la commande ou dans le playbook)
d'autres possibilités ...
Juste une petite remarque concernant l'option '-i', il faut être vigilant car :
# ici le fichier d'inventaire 'hosts' est utilise :
ansible-playbook -i hosts Playbook.yml
# ici l'hote 'hosts' est utilise en se basant sur l'inventaire par defaut :
ansible-playbook -i hosts, Playbook.yml
Sinon concernant ton problème, que donne les commandes suivante :
# liste les hotes utilises
ansible-playbook -i hosts Playbook.yml --list-hosts
# affiche le fichier d'inventaire qui est utilise
ansible-playbook -vvv -i hosts Playbook.yml | grep inventory
# pour nous donner un apercu du repertoire de travail
tree /your/working/directory/
- Edité par mika83 il y a environ 1 heure
Voici le résultat des commandes :
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# ansible-playbook -i hosts Playbook.yml --list-hosts
playbook: Playbook.yml
play #1 (web): Installation des serveurs web TAGS: []
pattern: [u'web']
hosts (1):
192.168.1.26
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# ansible-playbook -vvv -i hosts Playbook.yml | grep inventory
Parsed /home/rbo/Documents/Ansible/hosts inventory source with ini plugin
Enter passphrase for key '/root/.ssh/id_rsa':
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# tree /your/working/directory/
The program 'tree' is currently not installed. You can install it by typing:
apt install tree
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# tree /your/working/directory/
The program 'tree' is currently not installed. You can install it by typing:
apt install tree
Euh, lis quand même le résultat au lieu de poster sans réfléchir
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# tree /your/working/directory/
The program 'tree' is currently not installed. You can install it by typing:
apt install tree
Euh, lis quand même le résultat au lieu de poster sans réfléchir
Merci mais pas besoin d'être méchant.
Je ne comprends pas la signification du "tree". J'ai suivi un les étapes listé sur le site et j'ai aussi suivi un tuto et il n'en parle absolument pas
tree est un programme qui affiche le contenu d'un répertoire sous la forme d'une arborescence de fichiers Je t'ai demandé cette commande pour voir l'arborescence de ton projet (au cas ou ...). Donc aucun rapport avec Ansible. Normalement tu dois pouvoir l'installer comme ceci :
apt install tree
# ou si c'est un autre gestionnaire de paquets
# dnf install tree
# yum install tree
tree est un programme qui affiche le contenu d'un répertoire sous la forme d'une arborescence de fichiers Je t'ai demandé cette commande pour voir l'arborescence de ton projet (au cas ou ...). Donc aucun rapport avec Ansible. Normalement tu dois pouvoir l'installer comme ceci :
apt install tree
# ou si c'est un autre gestionnaire de paquets
# dnf install tree
# yum install tree
maintenance ça fonctionne en effet le truc tree etait manquant
Ah non, pas du tout, l'installation de la commande tree n'a rien à voir avec le fait que ça fonctionne maintenant. Je ne sais pas pourquoi ça fonctionne maintenant mais pas avant. Ce qui me semblerait le plus plausible serait une modification que tu as apportés sur l'inventaire, mais tu nous l'aurais dit. Sinon le fait d'entrer la passphrase pour accéder à /root/.ssh/id_rsa, mais je doute que ce soit ça car la demande aurait du être faite lors de l'exécution du playbook.
Enfin bon, le plus important est que ça fonctionne maintenant.
maintenance ça fonctionne en effet le truc tree etait manquant
Ah non, pas du tout, l'installation de la commande tree n'a rien à voir avec le fait que ça fonctionne maintenant. Je ne sais pas pourquoi ça fonctionne maintenant mais pas avant. Ce qui me semblerait le plus plausible serait une modification que tu as apportés sur l'inventaire, mais tu nous l'aurais dit. Sinon le fait d'entrer la passphrase pour accéder à /root/.ssh/id_rsa, mais je doute que ce soit ça car la demande aurait du être faite lors de l'exécution du playbook.
Enfin bon, le plus important est que ça fonctionne maintenant.
- Edité par mika83 il y a 25 minutes
Je viens de voir ton lien vers ton site, je suis ton nouveau lecteur tu es maintenant dans mes favoris
J'essaye Ansible mais je fais fasse à un problème dont je ne trouve pas la source, ou plutot comment le résoudre.
Voilà mon message d'erreur suite a un essai de déploiement d'un paquet qu'une VM qui tourne sur Ubuntu ( Master ) et la machine CentOs ( Slave) sur laquelle je veux installer un paquet.
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# ansible-playbook -i hosts Playbook.yml
PLAY [Installation des serveurs web] *********************************************************************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************************************************************
fatal: [192.168.1.29]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Permission denied (publickey,password).\r\n", "unreachable": true}
to retry, use: --limit @/home/rbo/Documents/Ansible/Playbook.retry
PLAY RECAP ***********************************************************************************************************************************************************************
192.168.1.29 : ok=0 changed=0 unreachable=1 failed=0
Test de connexion success
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# ansible all -m ping
Enter passphrase for key '/root/.ssh/id_rsa':
192.168.1.26 | SUCCESS => {
"changed": false,
"failed": false,
"ping": "pong"
}
Fichier hosts et playbook.yml
[web]
192.168.1.26
Playbook.yml
---
- name: Installation des serveurs web
hosts: web
remote_user: root
tasks:
- name: Installation de Git
yum: name=git
Je peux me connecter en ssh à ma machine CentOs sans problème mais le deploiement refuse de se faire à cause de cette erreur denied access.
root@rbo-VirtualBox:/home/rbo/Documents/Ansible# ssh root@192.168.1.26
Enter passphrase for key '/root/.ssh/id_rsa':
Last login: Fri Nov 10 02:42:19 2017 from rbo-virtualbox.home
[root@pc-271 ~]#
Une idée ? Merci
- Edité par czar1983 10 novembre 2017 à 11:27:55
Ansible Failed to connect to the host via ssh
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
GNU/Linux SysAdmin - un blog sur les lignes de commande GNU/Linux (mikael-flora.fr)
GNU/Linux SysAdmin - un blog sur les lignes de commande GNU/Linux (mikael-flora.fr)
Blond, bouclé, toujours le sourire aux lèvres...
GNU/Linux SysAdmin - un blog sur les lignes de commande GNU/Linux (mikael-flora.fr)
GNU/Linux SysAdmin - un blog sur les lignes de commande GNU/Linux (mikael-flora.fr)
GNU/Linux SysAdmin - un blog sur les lignes de commande GNU/Linux (mikael-flora.fr)
GNU/Linux SysAdmin - un blog sur les lignes de commande GNU/Linux (mikael-flora.fr)