Criar e aprovisionar um dispositivo IoT Edge no Windows com chaves simétricas
Aplica-se a: IoT Edge 1.1
Importante
IoT Edge 1,1 data de fim do suporte foi 13 de dezembro de 2022. Consulte o Ciclo de Vida de Produtos da Microsoft para obter informações sobre como é suportado este 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 IoT Edge.
Este artigo fornece instruções ponto a ponto para registar e aprovisionar um dispositivo Windows IoT Edge.
Nota
O Azure IoT Edge com contentores do Windows não será suportado a partir da versão 1.2 do Azure IoT Edge.
Considere utilizar o novo método para executar IoT Edge em dispositivos Windows, a IoT Edge do Azure para Linux no Windows.
Se quiser utilizar o Azure IoT Edge para Linux no Windows, pode seguir os passos no guia de procedimentos equivalente.
Todos os dispositivos que se ligam a um hub IoT têm um ID de dispositivo que é utilizado para monitorizar comunicações da cloud para o dispositivo ou do dispositivo para a cloud. Configure um dispositivo com as respetivas informações de ligação, incluindo o nome do anfitrião do hub IoT, o ID do dispositivo e as informações que o dispositivo utiliza para autenticar para Hub IoT.
Os passos neste artigo explicam um processo chamado aprovisionamento manual, onde liga um único dispositivo ao respetivo hub IoT. Para o aprovisionamento manual, tem duas opções para autenticar dispositivos IoT Edge:
Chaves simétricas: quando cria uma nova identidade de dispositivo no Hub IoT, o serviço cria duas chaves. Coloca uma das teclas no dispositivo e esta apresenta a chave para Hub IoT durante a autenticação.
Este método de autenticação é mais rápido de começar, mas não tão seguro.
X.509 autoassinado: cria dois certificados de identidade X.509 e coloca-os no dispositivo. Quando cria uma nova identidade de dispositivo no Hub IoT, fornece thumbprints de ambos os certificados. Quando o dispositivo é autenticado para Hub IoT, apresenta um certificado e Hub IoT verifica se o certificado corresponde ao thumbprint.
Este método de autenticação é mais seguro e recomendado para cenários de produção.
Este artigo aborda a utilização de chaves simétricas como método de autenticação. Se quiser utilizar certificados X.509, consulte Criar e aprovisionar um dispositivo IoT Edge no Windows com certificados X.509.
Nota
Se tiver muitos dispositivos para configurar e não quiser aprovisionar manualmente cada um deles, utilize um dos seguintes artigos para saber como IoT Edge funciona com o serviço de aprovisionamento de dispositivos Hub IoT:
Pré-requisitos
Este artigo aborda o registo do seu dispositivo IoT Edge e a instalação de IoT Edge no mesmo. Estas tarefas têm diferentes pré-requisitos e utilitários utilizados para as realizar. Certifique-se de que tem todos os pré-requisitos abrangidos antes de continuar.
Ferramentas de gestão de dispositivos
Pode utilizar a portal do Azure, o Visual Studio Code ou a CLI do Azure para obter os passos para registar o seu dispositivo. Cada utilitário tem os seus próprios pré-requisitos:
Um hub IoT gratuito ou standard na sua subscrição do Azure.
Requisitos dos dispositivos
Um dispositivo Windows.
IoT Edge com contentores do Windows requer a versão 1809/compilação 17763 do Windows, que é a compilação de suporte de longo prazo mais recente do Windows. Certifique-se de que revê a lista de sistemas suportados para obter uma lista de SKUs suportados.
Tenha em atenção que as versões do Windows no contentor e no anfitrião têm de corresponder. Para obter mais informações, veja Não foi possível iniciar o módulo devido a um erro de correspondência do SO.
Registar o seu dispositivo
Pode utilizar o portal do Azure, o Visual Studio Code ou a CLI do Azure para registar o seu dispositivo, consoante a sua preferência.
No seu hub IoT no portal do Azure, IoT Edge dispositivos são criados e geridos separadamente dos dispositivos IoT que não estão ativados no Edge.
Inicie sessão no portal do Azure e navegue para o seu hub IoT.
No painel esquerdo, selecione Dispositivos no menu e, em seguida, selecione Adicionar Dispositivo.
Na página Criar um dispositivo , forneça as seguintes informações:
- Crie um ID de dispositivo descritivo. Tome nota deste ID do dispositivo, pois irá utilizá-lo mais tarde.
- Selecione a caixa de verificação IoT Edge Dispositivo.
- Selecione Chave simétrica como o tipo de autenticação.
- Utilize as predefinições para gerar automaticamente chaves de autenticação e ligar o novo dispositivo ao hub.
Selecione Guardar.
Agora que tem um dispositivo registado no Hub IoT, obtenha as informações que utiliza para concluir a instalação e o aprovisionamento do IoT Edge runtime.
Ver dispositivos registados e obter informações de aprovisionamento
Os dispositivos que utilizam a autenticação de chave simétrica precisam das respetivas cadeias de ligação para concluir a instalação e o aprovisionamento do IoT Edge runtime.
Os dispositivos com capacidade edge que se ligam ao seu hub IoT estão listados na página Dispositivos . Pode filtrar a lista por tipo Dispositivo Iot Edge.
Quando estiver pronto para configurar o seu dispositivo, precisa da cadeia de ligação que liga o dispositivo físico à respetiva identidade no hub IoT.
Os dispositivos que se autenticam com chaves simétricas têm as respetivas cadeias de ligação disponíveis para cópia no portal.
- Na página Dispositivos no portal, selecione o IoT Edge ID do dispositivo na lista.
- Copie o valor da Cadeia de Ligação Primária ou da Cadeia de Ligação Secundária.
Instalar IoT Edge
Nesta secção, vai preparar a VM do Windows ou o dispositivo físico para IoT Edge. Em seguida, instale IoT Edge.
O Azure IoT Edge depende de um runtime de contentor compatível com o OCI. O Moby, um motor baseado no Moby, está incluído no script de instalação, o que significa que não existem passos adicionais para instalar o motor.
Para instalar o runtime do IoT Edge:
Execute o PowerShell como um administrador.
Utilize uma sessão AMD64 do PowerShell e não do PowerShell(x86). Se não souber que tipo de sessão está a utilizar, 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 seu computador Windows está numa versão suportada
- Ativa a funcionalidade contentores
- Transfere o motor moby e o runtime IoT Edge
. {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; ` Deploy-IoTEdge
Reinicie o dispositivo, se lhe for pedido.
Quando instala IoT Edge num dispositivo, pode utilizar parâmetros adicionais para modificar o processo, incluindo:
- Direcionar o tráfego para passar por um servidor proxy
- Aponte o instalador para um diretório local para instalação offline
Para obter mais informações sobre estes parâmetros adicionais, veja Scripts do PowerShell para IoT Edge com contentores do Windows.
Aprovisionar o dispositivo com a respetiva identidade na cloud
Agora que o motor de contentor e o IoT Edge runtime estão instalados no seu dispositivo, está pronto para o próximo passo, que consiste em configurar o dispositivo com as respetivas informações de identidade e autenticação na cloud.
No dispositivo IoT Edge, execute o PowerShell como administrador.
Utilize o comando Initialize-IoTEdge para configurar o IoT Edge runtime no seu computador. O comando é predefinido para o aprovisionamento manual com contentores do Windows.
. {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; ` Initialize-IoTEdge -ManualConnectionString -ContainerOs Windows
Se transferiu o script IoTEdgeSecurityDaemon.ps1 para o seu dispositivo para instalação offline ou de versão específica, certifique-se de que referencia a cópia local do script.
. <path>/IoTEdgeSecurityDaemon.ps1 Initialize-IoTEdge -ManualConnectionString -ContainerOs Windows
Quando lhe for pedido, indique a cadeia de ligação do dispositivo que obteve na secção anterior. A cadeia de ligação do dispositivo associa o dispositivo físico a um ID de dispositivo no Hub IoT e fornece informações de autenticação.
A cadeia de ligação do dispositivo utiliza o seguinte formato e não deve incluir aspas:
HostName={IoT_hub_name}.azure-devices.net;DeviceId={device_name};SharedAccessKey={key}
Quando aprovisiona um dispositivo manualmente, pode utilizar parâmetros adicionais para modificar o processo, incluindo:
- Direcionar o tráfego para passar por um servidor proxy
- Declarar uma imagem de contentor edgeAgent específica e fornecer credenciais se estiver num registo privado
Para obter mais informações sobre estes parâmetros adicionais, veja Scripts do PowerShell para IoT Edge com contentores do Windows.
Verificar a configuração com êxito
Verifique se o runtime foi instalado e configurado com êxito no seu dispositivo IoT Edge.
Verifique o estado do serviço IoT Edge.
Get-Service iotedge
Examine os registos do serviço.
. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; Get-IoTEdgeLog
Listar módulos em execução.
iotedge list
Instalação de versões offline ou específica (opcional)
Os passos nesta secção destinam-se a cenários não abrangidos pelos passos de instalação padrão. Isto pode incluir:
- Instalar IoT Edge offline
- Instalar uma versão candidata à versão
- Instalar uma versão diferente da mais recente
Durante a instalação, são transferidos três ficheiros:
- Um script do PowerShell, que contém as instruções de instalação
- Cab do Microsoft Azure IoT Edge, que contém o daemon de segurança IoT Edge (iotedged), o motor de contentor moby e a CLI moby
- Instalador do pacote redistribuível do Visual C++ (runtime do VC)
Se o seu dispositivo estiver offline durante a instalação ou se quiser instalar uma versão específica do IoT Edge, pode transferir estes ficheiros com antecedência para o dispositivo. Quando for altura de instalar, aponte o script de instalação para o diretório que contém os ficheiros transferidos. O instalador verifica primeiro esse diretório e, em seguida, apenas transfere os componentes que não são encontrados. Se todos os ficheiros estiverem disponíveis offline, pode instalar sem ligação à Internet.
Para obter os ficheiros de instalação de IoT Edge mais recentes, juntamente com versões anteriores, veja Versões do Azure IoT Edge.
Localize a versão que pretende instalar e transfira os seguintes ficheiros da secção Recursos das notas de versão para o seu dispositivo IoT:
- IoTEdgeSecurityDaemon.ps1
- Microsoft-Azure-IoTEdge-amd64.cab do canal de lançamento 1.1.
É importante utilizar o script do PowerShell a partir da mesma versão que o ficheiro de .cab que utiliza porque a funcionalidade é alterada para suportar as funcionalidades em cada versão.
Se o ficheiro de .cab que transferiu tiver um sufixo de arquitetura, mude o nome do ficheiro para apenas Microsoft-Azure-IoTEdge.cab.
Opcionalmente, transfira um instalador para Visual C++ redistribuível. Por exemplo, o script do PowerShell utiliza esta versão: vc_redist.x64.exe. Guarde o instalador na mesma pasta no seu dispositivo IoT que o IoT Edge ficheiros.
Para instalar com componentes offline, dot origem a cópia local do script do PowerShell.
Execute o comando Deploy-IoTEdge com o
-OfflineInstallationPath
parâmetro . Indique o caminho absoluto para o diretório de ficheiros. Por exemplo,. path_to_powershell_module_here\IoTEdgeSecurityDaemon.ps1 Deploy-IoTEdge -OfflineInstallationPath path_to_file_directory_here
O comando de implementação utilizará todos os componentes encontrados no diretório de ficheiros local fornecido. Se o ficheiro .cab ou o instalador do Visual C++ estiver em falta, tentará transferi-los.
Desinstalar IoT Edge
Se quiser remover a instalação IoT Edge do seu dispositivo Windows, utilize o comando Desinstalar-IoTEdge a partir de uma janela administrativa do PowerShell. Este comando remove o IoT Edge runtime, juntamente com a configuração existente e os dados do motor Moby.
. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; `
Uninstall-IoTEdge
Para obter mais informações sobre as opções de desinstalação, utilize o comando Get-Help Uninstall-IoTEdge -full
.
Passos seguintes
Continue a implementar IoT Edge módulos para saber como implementar módulos no seu dispositivo.