Verwalten von Python 2-Paketen in Azure Automation
In diesem Artikel wird beschrieben, wie Sie Python 2-Pakete in Azure Automation, das in der Azure-Sandboxumgebung und auf Hybrid Runbook Workern ausgeführt wird, importieren, verwalten und verwenden. Zur Vereinfachung von Runbooks können Sie Python-Pakete verwenden, um die benötigten Module zu importieren.
Informationen zum Verwalten von Python 3-Paketen finden Sie unter Verwalten von Python 3-Paketen.
Importieren von Paketen
Wählen Sie in Ihrem Azure Automation-Konto unter Python-Pakete die Option Freigegebene Ressourcen aus. Wählen Sie + Python-Paket hinzufügen aus.
Wählen Sie auf der Seite Python-Paket hinzufügen ein lokales Paket für den Upload aus. Das Paket kann eine WHL-Datei sein.
Geben Sie den Namen ein, und wählen Sie für die Runtimeversion entsprechend 2.x.x aus.
Klicken Sie auf Importieren.
Nachdem ein Paket importiert wurde, wird es in Ihrem Automation-Konto auf der Seite Python-Pakete aufgelistet. Um ein Paket zu entfernen, wählen Sie das Paket und dann Löschen aus.
Importieren von Paketen mit Abhängigkeiten
Azure Automation löst Abhängigkeiten für Python-Pakete während des Importvorgangs nicht auf. Es gibt zwei Möglichkeiten, um ein Paket mit allen seinen Abhängigkeiten zu importieren. Nur einer der folgenden Schritte muss verwendet werden, um die Pakete in Ihr Automation-Konto zu importieren.
Manuelles Herunterladen
Führen Sie auf einem Windows-Computer (64-Bit), auf dem Python2.7 und pip installiert sind, den folgenden Befehl aus, um ein Paket mit allen seinen Abhängigkeiten herunterzuladen:
C:\Python27\Scripts\pip2.7.exe download -d <output dir> <package name>
Sobald die Pakete heruntergeladen sind, können Sie sie in Ihr Azure Automation-Konto importieren.
Runbook
Um ein Runbook zu erhalten, importieren Sie aus der Azure Automation-GitHub-Organisation Python 2-Pakete aus pypi in Ihr Azure Automation-Konto. Stellen Sie sicher, dass die Ausführungseinstellungen auf Azure festgelegt sind, und starten Sie das Runbook mit den Parametern. Stellen Sie sicher, dass verwaltete Identität für Ihr Automation-Konto aktiviert ist und über Zugriff als Automation-Mitwirkender verfügt, um das Paket erfolgreich zu importieren. Für jeden Parameter stellen Sie sicher, dass Sie ihn mit dem Parameter starten, wie er in der folgende Liste und Abbildung zu sehen ist:
- -s <subscriptionId>
- -g <resourceGroup>
- -a <automationAccount>
- -m <modulePackage>
Mithilfe des Runbooks können Sie angeben, welches Paket heruntergeladen werden soll. Verwenden Sie beispielsweise den Azure
-Parameter, um alle Azure-Module und alle Abhängigkeiten (etwa 105) herunterzuladen. Nach Abschluss des Runbooks können Sie die Seite Python-Pakete unter Freigegebene Ressourcen in Ihrem Automation-Konto überprüfen, um zu bestätigen, dass das Paket ordnungsgemäß importiert wurde.
Verwenden eines Pakets in einem Runbook
Nachdem Sie ein Paket importiert haben, können Sie es in einem Runbook verwenden. Fügen Sie den folgenden Code hinzu, um alle Ressourcengruppen in einem Azure-Abonnement aufzulisten:
#!/usr/bin/env python
import os
import requests
# printing environment variables
endPoint = os.getenv('IDENTITY_ENDPOINT') + "?resource=https://management.azure.com/"
identityHeader = os.getenv('IDENTITY_HEADER')
payload = {}
headers = {
'X-IDENTITY-HEADER': identityHeader,
'Metadata': 'True'
}
response = requests.request("GET", endPoint, headers=headers, data=payload)
print response.text
Entwickeln und Testen von Runbooks im Offlinemodus
Um Ihre Python 2-Runbooks offline zu entwickeln und zu testen, können Sie die für das Python-Modul emulierten Azure Automation-Assets auf GitHub verwenden. Mit diesem Modul können Sie auf Ihre freigegebenen Ressourcen wie Anmeldeinformationen, Variablen, Verbindungen und Zertifikate verweisen.
Nächste Schritte
Informationen zum Vorbereiten eines Python-Runbooks finden Sie unter Tutorial: Erstellen eines Python-Runbooks.