Schnellstart: Erstellen einer verbundenen Registrierung mithilfe der Azure CLI

In dieser Schnellstartanleitung verwenden Sie die Azure CLI, um eine verbundene Registrierungsressource in Azure zu erstellen. Mit dem Azure Container Registry-Feature für verbundene Registrierungen können Sie eine Registrierung remote oder lokal bereitstellen und Images und andere Artefakte mit der Cloudregistrierung synchronisieren.

Hier erstellen Sie zwei verbundene Registrierungsressourcen für eine Cloudregistrierung: Eine verbundene Registrierung ermöglicht Lese- und Schreibfunktionen (Pull- und Pushvorgänge für Artefakte), die andere ermöglicht schreibgeschützte Funktionen.

Nach dem Erstellen der verbundenen Registrierung können Sie in anderen Leitfäden erfahren, wie Sie diese in Ihrer lokalen oder Remoteinfrastruktur bereitstellen und verwenden.

Voraussetzungen

  • Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.

  • Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.

    • Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.

    • Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.

    • Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.

  • Azure Container Registry: Wenn Sie noch nicht über eine Containerregistrierung verfügen, erstellen Sie eine (Premium-Tarif erforderlich) in einer Region, die verbundene Registrierungen unterstützt.

Aktivieren des dedizierten Datenendpunkts für die Cloudregistrierung

Aktivieren Sie den dedizierten Datenendpunkt für die Azure-Containerregistrierung in der Cloud mithilfe des Befehls az acr update. Dieser Schritt ist erforderlich, damit eine verbundene Registrierung mit der Cloudregistrierung kommunizieren kann.

# Set the REGISTRY_NAME environment variable to identify the existing cloud registry
REGISTRY_NAME=<container-registry-name>

az acr update --name $REGISTRY_NAME \
  --data-endpoint-enabled

Importieren von Images in die Cloudregistrierung

Importieren Sie mit dem Befehl az acr import die folgenden Containerimages in Ihre Cloudregistrierung. Überspringen Sie diesen Schritt, wenn Sie diese Images bereits importiert haben.

Image der verbundenen Registrierung

Um geschachtelte IoT Edge-Szenarien zu unterstützen, muss das Containerimage der Runtime der verbundenen Registrierung in Ihrer privaten Azure-Containerregistrierung verfügbar sein. Mit dem Befehl az acr import können Sie das Image der verbundenen Registrierung in Ihre private Registrierung importieren.

# Use the REGISTRY_NAME variable in the following Azure CLI commands to identify the registry
REGISTRY_NAME=<container-registry-name>

az acr import \
  --name $REGISTRY_NAME \
  --source mcr.microsoft.com/acr/connected-registry:0.8.0

Images von IoT Edge- und API-Proxy

Um die verbundene Registrierung für geschachteltes IoT Edge zu unterstützen, müssen Sie Module für den IoT Edge- und API-Proxy bereitstellen. Importieren Sie diese Images in Ihre private Registrierung.

Das IoT Edge- und API-Proxymodul ermöglicht einem IoT Edge Gerät, mehrere Dienste über das HTTPS-Protokoll am selben Port verfügbar zu machen, z. B. 443.

az acr import \
  --name $REGISTRY_NAME \
  --source mcr.microsoft.com/azureiotedge-agent:1.2.4

az acr import \
  --name $REGISTRY_NAME \
  --source mcr.microsoft.com/azureiotedge-hub:1.2.4

az acr import \
  --name $REGISTRY_NAME \
  --source mcr.microsoft.com/azureiotedge-api-proxy:1.1.2

az acr import \
  --name $REGISTRY_NAME \
  --source mcr.microsoft.com/azureiotedge-diagnostics:1.2.4

Image „hello-world“

Importieren Sie das Image, um die verbundene Registrierung hello-world zu testen. Dieses Repository wird mit der verbundenen Registrierung synchronisiert und von den verbundenen Registrierungsclients gepullt.

az acr import \
  --name $REGISTRY_NAME \
  --source mcr.microsoft.com/hello-world:1.1.2

Erstellen einer verbundenen Registrierungsressource für Lese- und Schreibfunktionen

Erstellen Sie eine verbundene Registrierung mithilfe des Befehls az acr connected-registry create. Der Name der verbundenen Registrierung muss mit einem Buchstaben beginnen und darf nur alphanumerische Zeichen enthalten. Er muss 5 bis 40 Zeichen lang und in der Hierarchie für diese Azure-Containerregistrierung eindeutig sein.

# Set the CONNECTED_REGISTRY_RW environment variable to provide a name for the connected registry with read/write functionality
CONNECTED_REGISTRY_RW=<connnected-registry-name>

az acr connected-registry create --registry $REGISTRY_NAME \
  --name $CONNECTED_REGISTRY_RW \
  --repository "hello-world" "acr/connected-registry" "azureiotedge-agent" "azureiotedge-hub" "azureiotedge-api-proxy"

Dieser Befehl erstellt eine verbundene Registrierungsressource, deren Name der Wert von $CONNECTED_REGISTRY_RW ist, und verknüpft sie mit der Cloudregistrierung, deren Name der Wert $REGISTRY_NAME ist. In späteren Schnellstartanleitungen erfahren Sie mehr über Optionen zum Bereitstellen der verbundenen Registrierung.

  • Die angegebenen Repositorys werden nach der Bereitstellung zwischen der Cloudregistrierung und der verbundenen Registrierung synchronisiert.

  • Da für die verbundene Registrierung keine --mode-Option angegeben ist, wird sie im standardmäßigen ReadWrite-Modus erstellt.

  • Da für diese verbundene Registrierung kein Synchronisierungszeitplan definiert ist, werden die Repositorys ohne Unterbrechungen zwischen der Cloudregistrierung und der verbundenen Registrierung synchronisiert.

    Wichtig

    Zur Unterstützung von geschachtelten Szenarien, in denen niedrigere Ebenen keinen Internetzugriff haben, müssen Sie die Synchronisierung des Repositorys acr/connected-registry immer zulassen. Dieses Repository enthält das Image für die Runtime der verbundenen Registrierung.

Erstellen einer verbundenen Registrierungsressource für schreibgeschützte Funktionen

Sie können auch den Befehl az acr connected-registry create verwenden, um eine verbundene Registrierung mit schreibgeschützter Funktionalität zu erstellen.

# Set the CONNECTED_REGISTRY_READ environment variable to provide a name for the connected registry with read-only functionality
CONNECTED_REGISTRY_RO=<connnected-registry-name>
az acr connected-registry create --registry $REGISTRY_NAME \
  --parent $CONNECTED_REGISTRY_RW \
  --name $CONNECTED_REGISTRY_RO \
  --repository "hello-world" "acr/connected-registry" "azureiotedge-agent" "azureiotedge-hub" "azureiotedge-api-proxy" \
  --mode ReadOnly

Dieser Befehl erstellt eine verbundene Registrierungsressource, deren Name der Wert von $CONNECTED_REGISTRY_RO ist, und verknüpft sie mit der Cloudregistrierung, deren Name der Wert $REGISTRY_NAME ist.

  • Die angegebenen Repositorys werden nach der Bereitstellung zwischen der übergeordneten Registrierung, deren Name der Wert $CONNECTED_REGISTRY_RW ist, und der verbundenen Registrierung synchronisiert.
  • Diese Ressource wird im ReadOnly-Modus erstellt, der nach der Bereitstellung schreibgeschützte Funktionen (Pullvorgänge für Artefakte) ermöglicht.
  • Da für diese verbundene Registrierung kein Synchronisierungszeitplan definiert ist, werden die Repositorys ohne Unterbrechungen zwischen übergeordneten Registrierung und der verbundenen Registrierung synchronisiert.

Überprüfen, ob die Ressourcen erstellt wurden

Sie können den Befehl az acr connected-registry list für die verbundene Registrierung verwenden, um zu überprüfen, ob die Ressourcen erstellt wurden.

az acr connected-registry list \
  --registry $REGISTRY_NAME \
  --output table

Es sollte eine Antwort wie die folgende zu sehen sein. Da die verbundenen Registrierungen noch nicht bereitgestellt wurden, gibt der Verbindungsstatus „Offline“ an, dass sie derzeit nicht mit der Cloud verbunden sind.

NAME                 MODE        CONNECTION STATE    PARENT               LOGIN SERVER    LAST SYNC (UTC)
-------------------  --------    ------------------  -------------------  --------------  -----------------
myconnectedregrw    ReadWrite    Offline
myconnectedregro    ReadOnly     Offline             myconnectedregrw

Nächste Schritte

In dieser Schnellstartanleitung haben Sie die Azure CLI verwendet, um zwei verbundene Registrierungsressourcen in Azure zu erstellen. Diese neuen verbundenen Registrierungsressourcen sind an Ihre Cloudregistrierung gebunden und ermöglichen die Synchronisierung von Artefakten mit der Cloudregistrierung.

Fahren Sie mit den Leitfäden zur Bereitstellung verbundener Registrierungen fort, um zu erfahren, wie Sie eine verbundene Registrierung in Ihrer IoT Edge-Infrastruktur bereitstellen und verwenden.