Guía de inicio rápido: Creación de un registro conectado mediante la CLI de Azure

En este inicio rápido, usará la CLI de Azure para crear un recurso de registro conectado en Azure. La característica de registro conectado de Azure Container Registry le permite implementar un registro de forma remota o local y sincronizar imágenes y otros artefactos con el registro en la nube.

Aquí se crean dos recursos de registro conectados para un registro en la nube: un registro conectado permite la funcionalidad de lectura y escritura (extracción e inserción de artefactos) y otro permite la funcionalidad de solo lectura.

Después de crear un registro conectado, puede seguir otras guías para implementarlo y usarlo en la infraestructura local o remota.

Requisitos previos

  • Use el entorno de Bash en Azure Cloud Shell.

    Iniciar Cloud Shell en una nueva ventana

  • Si lo prefiere, instale la CLI de Azure para ejecutar sus comandos de referencia.

    • Si usa una instalación local, inicie sesión en la CLI de Azure mediante el comando az login. Siga los pasos que se muestran en el terminal para completar el proceso de autenticación. Para ver otras opciones de inicio de sesión, consulte Inicio de sesión con la CLI de Azure.

    • Cuando se le solicite, instale las extensiones de la CLI de Azure la primera vez que la use. Para más información sobre las extensiones, consulte Uso de extensiones con la CLI de Azure.

    • Ejecute az version para buscar cuál es la versión y las bibliotecas dependientes que están instaladas. Para realizar la actualización a la versión más reciente, ejecute az upgrade.

  • Azure Container Registry: si aún no tiene un registro de contenedor, cree uno (se requiere el nivel Premium) en una región que admita registros conectados.

Habilitación del punto de conexión de datos dedicado para el registro en la nube

Habilite el punto de conexión de datos dedicado para Azure Container Registry en la nube mediante el comando az acr update. Este paso es necesario para que un registro conectado se comunique con el registro en la nube.

# 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

Importación de imágenes en el registro en la nube

Importe las siguientes imágenes de contenedor en el registro en la nube mediante el comando az acr import. Omita este paso si ya ha importado estas imágenes.

Imagen de registro conectado

Para admitir escenarios de IoT Edge, la imagen de contenedor para el entorno de ejecución del registro conectado debe estar disponible en la instancia privada de Azure Container Registry. Use el comando az acr import para importar la imagen del registro conectado en el registro privado.

# 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.5.0

IoT Edge e imágenes del proxy de API

Para admitir el registro conectado en IoT Edge anidado, debe implementar módulos para IoT Edge y el proxy de API. Importe estas imágenes en el registro privado.

El módulo del proxy de API de IoT Edge permite que un dispositivo IoT Edge exponga varios servicios mediante el protocolo HTTPS en el mismo puerto, como 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

Imagen de Hola mundo

Para probar el registro conectado, importe la imagen hello-world. Este repositorio se sincronizará con el registro conectado y lo extraerán los clientes del registro conectado.

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

Creación de un recurso de registro conectado para la funcionalidad de lectura y escritura

Cree un registro conectado mediante el comando az acr connected-registry create. El nombre del registro conectado debe empezar con una letra y contener solo caracteres alfanuméricos. Debe tener entre 5 y 40 caracteres y ser único en la jerarquía de este registro de contenedor de Azure.

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

Este comando crea un recurso de registro conectado cuyo nombre es el valor de $CONNECTED_REGISTRY_RW y lo vincula al registro en la nube cuyo nombre es el valor de $REGISTRY_NAME. En las guías de inicio rápido posteriores, aprenderá sobre las opciones que tiene para implementar el registro conectado.

  • Los repositorios especificados se sincronizarán entre el registro en la nube y el registro conectado una vez implementado.

  • Dado que no se especifica ninguna opción --mode para el registro conectado, se crea en el modo ReadWrite predeterminado.

  • Dado que no hay ninguna programación de sincronización definida para este registro conectado, los repositorios se sincronizarán entre el registro en la nube y el registro conectado sin interrupciones.

    Importante

    Para admitir escenarios anidados en los que las capas inferiores no tienen acceso a Internet, siempre debe permitir la sincronización del repositorio acr/connected-registry. Este repositorio contiene la imagen del entorno de ejecución del registro conectado.

Creación de un recurso de registro conectado para la funcionalidad de solo lectura

También puede usar el comando az acr connected-registry create para crear un registro conectado con funcionalidad de solo lectura.

# 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

Este comando crea un recurso de registro conectado cuyo nombre es el valor de $CONNECTED_REGISTRY_RO y lo vincula al registro en la nube cuyo nombre es el valor de $REGISTRY_NAME.

  • Los repositorios especificados se sincronizarán entre el registro primario denominado con el valor $CONNECTED_REGISTRY_RW y el registro conectado una vez implementado.
  • Este recurso se crea en el modo ReadOnly, que habilita la funcionalidad de solo lectura (extracción de artefactos) una vez implementada.
  • Dado que no hay ninguna programación de sincronización definida para este registro conectado, los repositorios se sincronizarán entre el registro primario y el registro conectado sin interrupciones.

Comprobación de la creación de los recursos

Puede usar el comando az acr connected-registry list para comprobar que se han creado los recursos.

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

Debería ver una respuesta que indica lo siguiente. Dado que los registros conectados aún no están implementados, el estado "Sin conexión" indica que están desconectados actualmente de la nube.

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

Pasos siguientes

En este inicio rápido, usará la CLI de Azure para crear dos recursos de registros conectados en Azure. Esos nuevos recursos de registro conectados están vinculados al registro en la nube y permiten la sincronización de artefactos con el registro en la nube.

Continúe con las guías de implementación del registro conectado para aprender a implementar y usar un registro conectado en la infraestructura de IoT Edge.