J'ai une boîte Vagrant avec centos 7 où je crée des conteneurs LXC. Une course Ansible dans la boîte Vagabond. Je crée le récipient avec Ansible comme ceci:Autorisation SSH dans Ansible entre hôte local et hôte distant
- name: Create containers
lxc_container:
name: localdev_nginx
container_log: true
template: centos
container_config:
- 'lxc.network.ipv4 = 192.168.42.110/24'
- 'lxc.network.ipv4.gateway = 192.168.42.1'
container_command: |
yum -y install openssh-server
echo "Som*th1ng" | passwd root --stdin
ssh-keygen -b 2048 -t rsa -f /root/.ssh/id_rsa -q -N ""
state: started
C'est de créer le conteneur pour moi, mais après cela, je ne peut pas accéder au conteneur du Ansible. Juste si je prends le pubkey ssh contenant les Vagrant known_hosts comme ceci:
- name: Tell the host about our servers it might want to ssh to
shell: ssh-keyscan -t rsa 192.168.42.110 >> /root/.ssh/known_hosts
Et si j'ajouter le mot de passe root du conteneur dans les hôtes Ansible fichiers comme ceci:
[dev-webservers]
loc-dev-www1.internavenue.com hostname=loc-dev-www1.internavenue.com ansible_ssh_host=192.168.42.110 ansible_connection=ssh ansible_user=root ansible_ssh_pass=Som*th1ng
J'espère qu'il a un meilleure solution, parce que vraiment mauvais. Comment puis-je le faire normalement?