Criar e provisionar dispositivos IoT Edge em escala no Windows usando chaves simétricas
Aplica-se a: IoT Edge 1.1
Importante
IoT Edge 1.1 a data de término do suporte foi 13 de dezembro de 2022. Confira o Ciclo de Vida do Produto da Microsoft para obter informações sobre o suporte deste produto, serviço, tecnologia ou API. Para obter mais informações sobre como atualizar para a versão mais recente do IoT Edge, consulte Atualizar o IoT Edge.
Este artigo fornece instruções de ponta a ponta para o provisionamento automático de um ou mais dispositivos do Windows IoT Edge usando chaves simétricas. Você pode provisionar automaticamente dispositivos do Azure IoT Edge com o serviço de provisionamento de dispositivos no Hub IoT do Azure (DPS em IoT). Se você não estiver familiarizado com o processo de provisionamento automático, reveja a visão geral de provisionamento antes de continuar.
Observação
O Azure IoT Edge com contêineres do Windows não terá suporte a partir da versão 1.2 do Azure IoT Edge.
Considere o uso do novo método para executar o IoT Edge em dispositivos Windows, Azure IoT Edge para Linux no Windows.
Se você quiser usar o Azure IoT Edge para Linux no Windows, poderá seguir as etapas no guia de instruções equivalente.
As tarefas são as seguintes:
- Crie um registro individual para um único dispositivo ou um registro de grupo para um conjunto de dispositivos.
- Instale o runtime do IoT Edge e conecte ao Hub IoT.
O atestado de chave simétrica é uma abordagem simples para autenticar o dispositivo com uma instância do serviço de provisionamento de dispositivos. Esse método de atestado representa uma experiência de "Olá, Mundo" para desenvolvedores que são novos no provisionamento de dispositivos ou não tem requisitos de segurança rígidos. O atestado de dispositivo usando um TPM ou certificados X.509 é mais seguro e deve ser usado para requisitos de segurança mais rigorosos.
Pré-requisitos
Recursos de nuvem
- Um Hub IoT ativo
- Uma instância do Serviço de Provisionamento de Dispositivos no Hub IoT no Azure, vinculada ao seu hub IoT
- Se você não tiver uma instância do Serviço de Provisionamento de Dispositivos, poderá seguir as instruções nas seções Criar um novo Serviço de Provisionamento de Dispositivos no Hub IoT e Vincular o Hub IoT e o Serviço de Provisionamento de Dispositivos do início rápido do Serviço de Provisionamento de Dispositivos no Hub IoT.
- Depois de executar o Serviço de Provisionamento de Dispositivo, copie o valor do Escopo de ID da página de visão geral. Você usa esse valor ao configurar o runtime do Azure IoT Edge.
Requisitos do dispositivo
Um dispositivo físico ou virtual do Windows para ser o dispositivo IoT Edge.
Você precisará definir uma ID de registro exclusiva para identificar cada dispositivo. Você pode usar o endereço MAC, o número de série ou qualquer informação exclusiva do dispositivo. Por exemplo, você pode usar uma combinação de endereço MAC e número de série para formar a seguinte cadeia de caracteres da ID de registro: sn-007-888-abc-mac-a1-b2-c3-d4-e5-f6
. São válidos caracteres alfanuméricos minúsculos e traço (-
).
Criar um registro de DPS
Crie um registro para provisionar um ou mais dispositivos por meio do DPS.
Se você quiser provisionar um único dispositivo IoT Edge, crie um registro individual. Se você precisar de vários dispositivos provisionados, siga as etapas para criar um registro de grupo do DPS.
Ao criar uma inscrição no DPS, tem a oportunidade de declarar um estado inicial do dispositivo gêmeo. No dispositivo gêmeo, você pode definir tags para agrupar dispositivos por qualquer métrica que precisar em sua solução, como região, ambiente, local ou tipo de dispositivo. Essas marcas são usadas para criar implantações automáticas.
Para saber mais sobre registros no serviço de provisionamento de dispositivos, confira Como gerenciar registros de dispositivo.
Criar um registro individual de DPS
Dica
As etapas neste artigo são para o portal do Microsoft Azure, mas também é possível criar registros individuais usando a CLI do Azure. Para obter mais informações, confira Registro az iot dps. Como parte do comando da CLI, use o sinalizador habilitado para o Edge para especificar que o registro é para um dispositivo do IoT Edge.
No portal do Azure, navegue até sua instância do serviço de provisionamento de dispositivos no Hub IoT.
Em Configurações, selecione Gerenciar registros.
Selecione adicionar registro individual, em seguida, conclua as seguintes etapas para configurar o registro:
Em Mecanismo, selecione Chave Simétrica.
Forneça uma ID de registro exclusiva para o seu dispositivo.
Opcionalmente, forneça uma ID de Dispositivo do Hub IoT para o seu dispositivo. Você pode usar IDs de dispositivo para um dispositivo individual para a implantação do módulo de destino. Se você não fornecer uma ID de dispositivo, a ID de registro será usada.
Selecione True para declarar que o registro é para um dispositivo IoT Edge.
Opcionalmente, adicione um valor de marca para o Estado inicial do dispositivo gêmeo. Você pode usar marcas para grupos de dispositivos de destino para a implantação do módulo. Por exemplo:
{ "tags": { "environment": "test" }, "properties": { "desired": {} } }
Selecione Salvar.
Copie o valor da Chave Primária do registro individual a ser usado ao instalar o runtime do IoT Edge.
Agora que existe um registro para esse dispositivo, o runtime do IoT Edge pode provisionar automaticamente o dispositivo durante a instalação.
Instalar o Edge IoT
Nesta seção, você preparará a VM ou o dispositivo físico Windows para o IoT Edge. Em seguida, você instalará o IoT Edge.
O Azure IoT Edge depende de um runtime de contêiner compatível com OCI. O Moby, um mecanismo baseado em Moby, está incluído no script de instalação, o que significa que não há etapas adicionais para instalar o mecanismo.
Para instalar o runtime do Azure IoT Edge:
Execute o PowerShell como administrador.
Use uma sessão AMD64 do PowerShell, não o PowerShell(x86). Para saber qual tipo de sessão você está usando, execute o seguinte comando:
(Get-Process -Id $PID).StartInfo.EnvironmentVariables["PROCESSOR_ARCHITECTURE"]
Execute o comando Deploy-IoTEdge, que executa as seguintes tarefas:
- Verifica se o computador Windows está em uma versão compatível
- Ativa o recurso de contêineres
- Baixa o mecanismo Moby e o runtime do IoT Edge
. {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; ` Deploy-IoTEdge
Reinicie o dispositivo, se solicitado.
Ao instalar o IoT Edge em um dispositivo, é possível usar parâmetros adicionais para modificar o processo, incluindo:
- Tráfego direto para passar por um servidor proxy
- Apontar o instalador para um diretório local para instalação offline
Para obter mais informações sobre esses parâmetros adicionais, consulte Scripts do PowerShell para IoT Edge com contêineres do Windows.
Provisionar o dispositivo com a identidade de nuvem dele
Depois que o runtime for instalado no seu dispositivo, configure-o com as informações que ele usa para se conectar ao serviço de provisionamento de dispositivos e ao Hub IoT.
Prepare as seguintes informações:
- Valor do escopo da ID do DPS
- ID de registro do dispositivo que você criou
- A Chave Primária de um registro individual ou uma chave derivada para dispositivos que usam um registro de grupo.
Abra uma janela do PowerShell no modo de administrador. Use a sessão AMD64 do PowerShell ao instalar o IoT Edge, não o PowerShell (x86).
O comando Initialize-IoTEdge configura o runtime do IoT Edge em seu computador. O comando usa como padrão o provisionamento manual com contêineres do Windows; portanto, use o sinalizador
-DpsSymmetricKey
para adotar o provisionamento automático com a autenticação de chave simétrica.Substitua os valores de espaço reservado
paste_scope_id_here
,paste_registration_id_here
epaste_symmetric_key_here
pelos dados coletados anteriormente.. {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; ` Initialize-IoTEdge -DpsSymmetricKey -ScopeId paste_scope_id_here -RegistrationId paste_registration_id_here -SymmetricKey paste_symmetric key_here
Verifique se a instalação bem-sucedida
Se o runtime foi iniciado com êxito, você pode entrar em seu Hub IoT e iniciar a implantação de módulos do IoT Edge em seu dispositivo.
Você pode verificar se o registro individual criado no serviço de provisionamento de dispositivos foi usado. Navegue até a sua instância do serviço de provisionamento de dispositivos do portal do Azure. Abra os detalhes de registro para o registro individual que você criou. Observe que o status do registro é atribuído e a ID do dispositivo está listada.
Use os seguintes comandos em seu dispositivo para verificar se o IoT Edge foi instalado e iniciado com êxito.
Verifique o status do serviço do IoT Edge.
Get-Service iotedge
Examine os logs de serviço.
. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; Get-IoTEdgeLog
Módulos de execução da lista.
iotedge list
Próximas etapas
O processo de registro do serviço de provisionamento de dispositivo permite definir a ID do dispositivo e as marcas do dispositivo gêmeo ao mesmo tempo, como provisionar o novo dispositivo. Você pode usar esses valores para dispositivos individuais ou grupos de dispositivos usando o gerenciamento automático de dispositivo de destino. Saiba como Implantar e monitorar os módulos de IoT Edge em escala usando o portal do Azure ou usando a CLI do Azure.