Condividi tramite


Guida introduttiva: Creare un registro connesso usando l'interfaccia della riga di comando di Azure (deprecazione imminente)

In questa guida introduttiva si usa l'interfaccia della riga di comando di Azure per creare una risorsa registro connesso in Azure. La funzionalità registro connesso in Registro Azure Container consente di distribuire un registro in modalità remota o in locale e sincronizzare immagini e altri artefatti con il registro cloud.

Qui si creano due risorse registro connesse per un registro cloud: un registro connesso consente la funzionalità di lettura e scrittura (pull e push degli artefatti) e una consente la funzionalità di sola lettura.

Dopo aver creato un registro connesso, è possibile seguire altre guide per distribuirlo e usarlo nell'infrastruttura locale o remota.

Prerequisiti

  • Registro Azure Container: se non si ha già un registro contenitori, crearne uno (livello Premium obbligatorio) in un'area che supporta i registri connessi.

Abilitare l'endpoint dati dedicato per il registro cloud

Abilitare l'endpoint dati dedicato per il Registro Azure Container nel cloud usando il comando az acr update. Questo passaggio è necessario per consentire a un registro connesso di comunicare con il registro cloud.

# 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

Importare immagini nel registro cloud

Importare le seguenti immagini del contenitore nel registro cloud usando il comando az acr import. Ignorare questo passaggio se queste immagini sono già state importate.

Immagine del registro connesso

Per supportare scenari IoT Edge annidati, l'immagine del contenitore per il runtime del registro connesso deve essere disponibile nel Registro Azure Container privato. Usare il comando az acr import per importare l'immagine del registro connessa nel registro privato.

# 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

Immagini proxy dell'API e di IoT Edge

Per supportare il registro connesso in IoT Edge annidato, è necessario implementare moduli per il proxy dell'API e IoT Edge. Importare queste immagini nel registro privato.

Il modulo proxy dell'API IoT Edge consente a un dispositivo IoT Edge di esporre più servizi usando il protocollo HTTPS sulla stessa porta, ad esempio 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

Immagine hello-world

Per testare il registro connesso, importare l'immagine hello-world. Questo repository verrà sincronizzato con il registro connesso per il pull dai client del registro connesso.

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

Creare una risorsa registro connesso per la funzionalità di lettura e scrittura

Creare un registro connesso usando il comando az acr connected-registry create. Il nome del registro connesso deve iniziare con una lettera e contenere solo caratteri alfanumerici. Deve avere una lunghezza compresa tra 5 e 40 caratteri e deve essere univoco nella gerarchia per questo registro Azure Container.

# 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"

Questo comando crea una risorsa registro connesso denominato $CONNECTED_REGISTRY_RW e la collega al registro cloud denominato $REGISTRY_NAME. Nelle guide introduttive successive vengono fornite informazioni sulle opzioni per distribuire il registro connesso.

  • I repository specificati verranno sincronizzati tra il registro cloud e il registro connesso dopo la distribuzione.

  • Poiché non viene specificata alcuna opzione --mode per il registro connesso, viene creato nella modalità ReadWrite predefinita.

  • Poiché non esiste alcuna pianificazione di sincronizzazione definita per questo registro connesso, i repository verranno sincronizzati tra il registro cloud e il registro connesso senza interruzioni.

    Importante

    Per supportare scenari annidati in cui i livelli inferiori non hanno accesso a Internet, è sempre necessario consentire la sincronizzazione del repository acr/connected-registry. Questo repository contiene l'immagine per il runtime del registro connesso.

Creare una risorsa registro connesso per la funzionalità di sola lettura

È anche possibile usare il comando az acr connected-registry create per creare un registro connesso con funzionalità di sola lettura.

# 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

Questo comando crea una risorsa registro connesso denominato $CONNECTED_REGISTRY_RO e la collega al registro cloud denominato $REGISTRY_NAME.

  • I repository specificati verranno sincronizzati tra il registro padre denominato $CONNECTED_REGISTRY_RW e il registro connesso una volta distribuito.
  • Questa risorsa viene creata nella modalità ReadOnly, che abilita la funzionalità di sola lettura (pull degli artefatti) dopo la distribuzione.
  • Poiché non esiste alcuna pianificazione di sincronizzazione definita per questo registro connesso, i repository verranno sincronizzati tra il registro padre e il registro connesso senza interruzioni.

Verificare che siano state create le risorse

È possibile usare il comando az acr connected-registry list del registro connesso per verificare che le risorse siano state create.

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

Verrà visualizzata una risposta simile alla seguente. Poiché i registri connessi non sono ancora distribuiti, lo stato della connessione "Offline" indica che sono attualmente disconnessi dal cloud.

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

Passaggi successivi

In questa guida introduttiva è stata usata l'interfaccia della riga di comando di Azure per creare due risorse registro connesso in Azure. Queste nuove risorse registro connesso sono associate al registro cloud e consentono la sincronizzazione degli artefatti con il registro cloud.

Continuare con le guide alla distribuzione del registro connesso per informazioni su come distribuire e usare un registro connesso nell'infrastruttura IoT Edge.