Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
AUF DIESER SEITE
 

Fehlerbehebung bei der Installation von Junos PyEZ (Junos-EZNC) für Ansible-Module

Problem

Beschreibung

Während der Ausführung eines juniper.device Moduls generiert der Ansible-Kontrollknoten einen Fehler, der junos-eznc nicht installiert ist. Zum Beispiel:

oder

Verursachen

Die Juniper Networks Ansible-Module in der juniper.device Sammlung verwenden die Junos PyEZ Python-Bibliothek, um Vorgänge auf Junos-Geräten auszuführen. Ansible generiert diesen Fehler, wenn die Bibliothek nicht installiert ist oder wenn Ansible die Bibliothek nicht finden kann. Ansible kann die Bibliothek möglicherweise nicht finden, z. B. wenn Sie Ansible in einer virtuellen Umgebung oder unter einer Python-Installation an einem nicht standardmäßigen Systemspeicherort installieren und Ansible die Bibliothek an einem anderen Speicherort als dem Standardspeicherort des Systems sucht.

Lösung

Installieren Sie Junos PyEZ auf dem Ansible-Steuerungsknoten und aktualisieren Sie alle erforderlichen Umgebungsvariablen. Weitere Informationen finden Sie unter https://github.com/Juniper/py-junos-eznc#installation .

Wenn Sie Ansible mit einer Python-Installation in einer virtuellen Umgebung oder an einem nicht standardmäßigen Systemspeicherort ausführen, müssen Sie:

  • Installieren Sie Junos PyEZ unter der gewünschten Python-Installation (je nach Bedarf in der virtuellen Umgebung oder am nicht standardmäßigen Systemspeicherort).

  • Geben Sie den Pfad zum Python-Interpreter an, indem Sie z. B. die interpreter_python Variable in der Ansible-Konfigurationsdatei festlegen oder die Variable für die entsprechenden Geräte in der Ansible-Bestandsdatei definieren ansible_python_interpreter .

    Weitere Informationen finden Sie unter Interpreter Discovery in der offiziellen Ansible-Dokumentation.

Um zu überprüfen, ob Junos PyEZ erfolgreich auf dem Steuerungsknoten installiert wurde, starten Sie die interaktive Python-Shell mit derselben Python-Installation, die Sie für Ansible-Operationen verwenden. Importieren Sie dann das jnpr.junos Paket.

Wenn Sie das jnpr.junos Paket erfolgreich importiert haben und keine Fehlermeldung angezeigt wird, wird Junos PyEZ auf dem Ansible-Steuerungsknoten installiert. Wenn beim Ausführen des Ansible-Moduls weiterhin dieselbe Fehlermeldung angezeigt wird, stellen Sie sicher, dass Sie den richtigen Speicherort für den Python-Interpreter in Ihrer Ansible-Umgebung angegeben haben.

Anmerkung:

Sie können die von Ansible verwendete Python-Installation überprüfen, indem Sie Ihr Ansible-Playbook mit der -vvv Option ausführen und die Protokollmeldungen überprüfen.