2017-02-05 4 views
0

Ich habe diese Textbuch:Fatal error bei Provisioning während Python Installation

--- 
- hosts: all 
    become: yes 
    become_user: root 
    gather_facts: no 
    pre_tasks: 
    - name: 'install python2' 
     raw: sudo apt-get -y install python-simplejson 
    roles: 
    - git 
    ... 

Manchmal funktioniert es völlig in Ordnung, und manchmal gibt es mir diese Fehlermeldung:

==> default: Running provisioner: ansible... 
    default: Running ansible-playbook... 
PYTHONUNBUFFERED=1 ANSIBLE_FORCE_COLOR=true ANSIBLE_HOST_KEY_CHECKING=false ANSIBLE_SSH_ARGS='-o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -i '/var/www/test/.vagrant/machines/default/virtualbox/private_key' -o ForwardAgent=yes -o ControlMaster=auto -o ControlPersist=60s' ansible-playbook --connection=ssh --timeout=30 --extra-vars="ansible_ssh_user='ubuntu'" --limit="all" --inventory-file=ansible/hosts/hosts_linux.txt -v ansible/site.yml 
Using /etc/ansible/ansible.cfg as config file 

PLAY *************************************************************************** 

TASK [install python2] ********************************************************* 
fatal: [10.0.11.44]: FAILED! => {"changed": false, "failed": true, "rc": 255, "stderr": "", "stdout": "", "stdout_lines": []} 

PLAY RECAP ********************************************************************* 
10.0.11.44     : ok=0 changed=0 unreachable=0 failed=1 

Ansible failed to complete successfully. Any error output should be 
visible above. Please fix these errors and try again. 

Ich frage mich, warum ich dieser Fehler und was bedeutet das? Es gibt keine Ausgabe auf den Fehler und der genau gleiche Code funktioniert, wenn ich das viele Male versuche. Das macht keinen Sinn. Warum kann Ansible Python nicht installieren?

+0

Was ist die ansible Version? Haben Sie versucht, ein Ansible-Playbook mit der Option -vvvv zu starten, um weitere Debug-Informationen zu erhalten? – gile

+0

Es fragt dies: Die Authentizität des Hosts '10 .0.11.44 (10.0.11.44)' kann nicht festgestellt werden. ECDSA-Schlüssel-Fingerabdruck ist SHA256: OdyB21PWYP5NqgU6MfaV5Gr82tWsZxCg + juGVGub62M. Sind Sie sicher, dass Sie die Verbindung fortsetzen möchten (ja/nein)? ja –

+0

Danach bekomme ich viele Fehler mit dem Versuch, privaten Schlüssel zu versuchen: /home/calinpristavu/.ssh/id_ed25519\r\ndebug3: keine solche Identität: /home/calinpristavu/.ssh/id_ed25519: Keine solche Datei oder Verzeichnis \ r \ ndebug2: Wir haben kein Paket gesendet, deaktivieren Sie die Methode \ r \ ndebug1: Keine weiteren Authentifizierungsmethoden zu versuchen. \ r \ nPermission denied (publickey, password) –

Antwort

0

Nach Ihren Kommentaren ist das Problem mit ssh. Sie können Ihre eigene ansible.cfg Datei in Ihrem aktuellen Arbeitsverzeichnis und Versorgungs openssh Optionen direkt erstellen, wie hier beschrieben: open-ssh options

Ich schlage vor, Sie versuchen:

[defaults] 
host_key_checking = False 

Und auch während des Playbook laufen, können Sie manuell angeben, welche sSH-Schlüssel verwenden wie:

ansible-playbook --private-key /path/to/ssh_key ... 

Schließlich stellen Sie sicher, dass es keinen IP-Konflikt, weil Ihr Servers ssh Fingerabdruck ändern soll nicht. Versuchen Sie es auch ein paar Mal manuell.

+0

Yep. Du hattest Recht mit dem letzten. Es gab einen IP-Konflikt mit einer anderen Konfiguration, die ich zuvor hatte. Ich musste nur die IP ändern und es funktionierte. Ich war mehr an der Bereitstellung der Bereitstellung interessiert, nicht an der Bereitstellung einer bestimmten IP-Adresse. Ich muss alles falsch mit den IP-Adressen haben und das war das Problem. Vielen Dank! –