Je reçois une liste d'adresse IP dans le fichier test.text à partir de laquelle j'essaie d'obtenir la propriété intellectuelle en boucle puis essayer d'entrer en groupe ou variable et l'utiliser comme hôtes (dynamic_groups)
ci-dessous est ma liste de lecture p> après exécution ci-dessus playbbok, je reçois ci-dessous l'erreur p> Qu'est-ce que je manque ici? p> p>
3 Réponses :
ci-dessous est une voie correcte d'utiliser la variable
- name: Add Instance IP Addresses to temporary inventory groups add_host: groups: working_hosts hostname: "{{item}}" with_items: "{{ serverlist.stdout_lines }}"
Vous pouvez simplement utiliser Ansible-Playbook -I Inventory_File_Name Playbook.YAML pour cela. inventaire_file est le fichier contenant vos groupes et IPS. p>
Comme indiqué dans le message d'erreur fatal "Impossible de se connecter à l'hôte via SSH: SSH: Impossible de résoudre le nom d'hôte serveurlist.stdout_lines" em>, il tente de se connecter à "serverlist.stdout_lines", pas à une adresse IP valide. Ceci est causé par une erreur lors du passage de la variable pour avec_items em>. Dans votre tâche: p> il passe serverlist.stdout_lines string et non sa valeur. P> with_items em> nécessite une définition variable utilisant "{{...}}" ( HTTPS: // docs.ansible.com/ansible/2.7/user_guide/playbooks_loops.html#with-items ). P> C'est la bonne façon pour votre tâche: p> - name: Add Instance IP Addresses to temporary inventory groups
add_host:
groups: dynamic_groups
hostname: "{{item}}"
with_items: "{{ serverlist.stdout_lines }}"
Oui, cela fonctionne comme @jaydeep suggéré plus tôt. Merci.
Êtes-vous sûr que vous avez chaque numéro dans une ligne différente?>
Quelle est cette tâche "de la commande"? Parce que c'est votre erreur où il essaie de faire SSH, vous ne pouvez peut-être pas lire de bonne manière