Início Rápido: criar um registro conectado usando a CLI do Azure

Neste início rápido, você usará a CLI do Azure para criar um recurso de registro conectado no Azure. O recurso de registro conectado do Registro de Contêiner do Azure permite implantar um registro remotamente ou em seu local e sincronizar imagens e outros artefatos com o registro de nuvem.

Aqui, você cria dois recursos de registro conectados para um registro de nuvem: um registro conectado permite a funcionalidade de leitura e gravação (pull e push de artefato) e outro permite a funcionalidade somente leitura.

Depois de criar um registro conectado, você pode seguir outros guias para implantá-lo e usá-lo em sua infraestrutura local ou remota.

Pré-requisitos

  • Registro de Contêiner do Azure – Se ainda não tiver um registro de contêiner, crie um (precisa da camada Premium) em uma região que dê suporte a registros conectados.

Habilitar o ponto de extremidade de dados dedicado para o registro de nuvem

Habilita o ponto de extremidade de dados dedicado para o registro de contêiner do Azure na nuvem usando o comando az acr update. Essa etapa é necessária para que um registro conectado se comunique com o registro de nuvem.

# 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

Importar imagens para o registro na nuvem

Importe as seguintes imagens de contêiner para o registro na nuvem usando o comando az acr import. Ignore esta etapa se você já importou essas imagens.

Imagem do registro conectado

Para dar suporte a cenários de IoT Edge aninhados, a imagem de contêiner para o runtime do registro conectado deve estar disponível no registro de contêiner privado do Azure. Use o comando az acr import para importar a imagem de registro conectado para o 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.8.0

Imagens do proxy de API e IoT Edge

Para dar suporte ao registro conectado no IoT Edge aninhado, é necessário implantar módulos para o proxy de API e IoT Edge. Importe essas imagens para o registro privado.

O módulo de proxy de API do IoT Edge permite que um dispositivo de IoT Edge exponha vários serviços usando o protocolo HTTPS na mesma porta, 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

Imagem de olá, mundo

Para testar o registro conectado, importe a imagem hello-world. Esse repositório será sincronizado com o registro conectado e enviado para os clientes do registro conectado.

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

Criar um recurso de registro conectado para a funcionalidade de leitura e gravação

Crie um registro conectado usando o comando az acr connected-registry create. O nome do registro conectado precisa começar com uma letra e conter somente caracteres alfanuméricos. Ele deve ter de 5 a 40 caracteres e ser exclusivo na hierarquia para esse registro de contêiner do 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"

Esse comando cria um recurso de registro conectado cujo nome é o valor do $CONNECTED_REGISTRY_RW e o vincula ao registro de nuvem cujo nome é o valor do $REGISTRY_NAME. Nos guias de início rápido posteriores, você aprenderá sobre as opções para implantar o registro conectado.

  • Os repositórios especificados serão sincronizados entre o registro de nuvem e o registro conectado depois que ele for implantado.

  • Como nenhuma opção --mode é especificada para o registro conectado, ela é criada no modo ReadWrite padrão.

  • Como não há nenhum agendamento de sincronização definido para esse registro conectado, os repositórios serão sincronizados entre o registro de nuvem e o registro conectado sem interrupções.

    Importante

    Para dar suporte a cenários aninhados em que camadas inferiores não têm acesso à Internet, você sempre deve permitir a sincronização do repositório acr/connected-registry. Esse repositório contém a imagem do runtime do registro conectado.

Criar um recurso de registro conectado para a funcionalidade de somente leitura

Você também pode usar o comando az acr connected-registry create para criar um registro conectado com a funcionalidade somente leitura.

# 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

Esse comando cria um recurso de registro conectado cujo nome é o valor do $CONNECTED_REGISTRY_RO e o vincula ao registro de nuvem cujo nome é o valor do $REGISTRY_NAME.

  • Os repositórios especificados serão sincronizados entre o registro pai cujo nome é o valor do $CONNECTED_REGISTRY_RW e o registro conectado após a implantação.
  • Esse recurso é criado no modo ReadOnly, que habilita a funcionalidade somente leitura (pull de artefato) depois de implantado.
  • Como não há nenhum agendamento de sincronização definido para esse registro conectado, os repositórios serão sincronizados entre o registro pai e o registro conectado sem interrupções.

Verifique se os recursos são criados

Você pode usar o comando de registro conectado az acr connected-registry list para verificar se os recursos foram criados.

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

Você verá uma resposta conforme a seguir. Como os registros conectados ainda não foram implantados, o estado de conexão "Offline" indica que eles estão desconectados da nuvem no momento.

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

Próximas etapas

Neste início rápido, você usará a CLI do Azure para criar dois recursos de registro conectado no Azure. Esses novos recursos de registro conectados estão vinculados ao registro de nuvem e permitem a sincronização de artefatos com o registro de nuvem.

Continue nos guias de implantação do registro conectado para saber como implantar e usar um registro conectado em sua infraestrutura de IoT Edge.