Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
IoT Edge 1.5
Importante
IoT Edge 1.5 LTS é a versão suportada. IoT Edge 1.4 LTS atingiu o fim da vida útil em 12 de novembro de 2024. Se você estiver usando uma versão anterior, consulte Update IoT Edge.
Experimente o Azure IoT Edge neste tutorial rápido, implantando código em contêineres em um dispositivo IoT Edge que executa Linux no Windows. IoT Edge permite gerenciar remotamente o código em seus dispositivos para que você possa executar mais cargas de trabalho na periferia. Para este início rápido, é recomendável que você use seu próprio dispositivo cliente Windows para ver como é fácil usar Azure IoT Edge para Linux no Windows. Se você quiser usar Windows Server ou uma VM Azure para criar sua implantação, siga as etapas no guia de instruções sobre instalação e provisionamento Azure IoT Edge para Linux em um dispositivo Windows.
Neste guia de início rápido, você aprende a:
- Crie um Hub IoT.
- Registre um dispositivo IoT Edge no hub IoT.
- Instale e inicie o IoT Edge para Linux em Windows runtime em seu dispositivo.
- Implante remotamente um módulo em um dispositivo IoT Edge e envie telemetria.
Este início rápido explica como configurar o Azure IoT Edge para Linux em um dispositivo Windows. Em seguida, você implanta um módulo do portal do Azure em seu dispositivo. O módulo usado é um sensor simulado que gera dados de temperatura, umidade e pressão. Outros tutoriais Azure IoT Edge baseiam-se no trabalho que você faz aqui implantando módulos que analisam os dados simulados para insights de negócios.
Se você não tiver uma assinatura Azure ativa, crie uma conta gratuita antes de começar.
Pré-requisitos
Prepare seu ambiente para o Azure CLI.
Use o ambiente bash em Azure Cloud Shell. Para obter mais informações, consulte Get iniciado com Azure Cloud Shell.
Se você preferir executar comandos de referência da CLI localmente, instalar o Azure CLI. Se você estiver executando em Windows ou macOS, considere executar Azure CLI em um contêiner do Docker. Para obter mais informações, consulte Como executar o Azure CLI em um contêiner do Docker.
Se você estiver usando uma instalação local, entre no Azure CLI usando o comando az login. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para obter outras opções de entrada, consulte Authenticate para Azure usando Azure CLI.
Quando for solicitado, instale a extensão Azure CLI no primeiro uso. Para obter mais informações sobre extensões, consulte Use e gerencie extensões com o Azure CLI.
Execute o comando az version para localizar a versão e as bibliotecas dependentes que estão instaladas. Para atualizar para a versão mais recente, execute az upgrade.
Crie um grupo de recursos de nuvem para gerenciar todos os recursos usados neste início rápido.
az group create --name IoTEdgeResources --location westus2
Verifique se o dispositivo IoT Edge atende aos seguintes requisitos:
Requisitos de sistema
- Windows 101/11 (Pro, Enterprise, IoT Enterprise) 1 Windows 10 compilação mínima 17763 com todas as atualizações cumulativas atuais instaladas.
Requisitos de hardware
- Memória livre mínima: 1 GB
- Espaço mínimo em disco livre: 10 GB
Crie um hub IoT
Comece criando um hub IoT usando o Azure CLI.
A camada gratuita de Azure IoT Hub funciona para este início rápido. Se você usou anteriormente IoT Hub e já tem um hub, pode usar esse IoT hub.
O código a seguir cria um hub F1 disponível no grupo de recursos IoTEdgeResources. Substitua {hub_name} por um nome exclusivo para o hub IoT. Pode levar alguns minutos para criar um Hub IoT.
az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2
Se você receber um erro porque já existe um hub gratuito na sua assinatura, altere o SKU para S1. Caso você receba um erro porque o nome do Hub IoT não está disponível, isso significa que alguém já tem um hub com esse nome. Tente usar um novo nome.
Registrar um dispositivo IoT Edge
Registre um dispositivo IoT Edge com o hub IoT recém-criado.
Crie uma identidade de dispositivo para seu dispositivo simulado para que ele possa se comunicar com o hub IoT. A identidade do dispositivo está na nuvem, e você usa uma cadeia de conexão exclusiva do dispositivo para associar um dispositivo físico a uma identidade de dispositivo.
IoT Edge dispositivos se comportam e podem ser gerenciados de forma diferente dos dispositivos IoT típicos. Use o sinalizador --edge-enabled para declarar que essa identidade é para um dispositivo IoT Edge.
Em Azure Cloud Shell, insira o comando a seguir para criar um dispositivo chamado myEdgeDevice em seu hub.
az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}Se você receber um erro sobre
iothubownerchaves de política, verifique se Cloud Shell está executando a versão mais recente da extensão Azure IoT.Exiba a cadeia de conexão do seu dispositivo, que vincula seu dispositivo físico à sua identidade em IoT Hub. Ele contém o nome do seu hub IoT, o nome do seu dispositivo e uma chave compartilhada que autentica as conexões entre os dois.
az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}Copie o valor da chave
connectionStringda saída JSON e salve-o. Este valor é a string de conexão do dispositivo. Use-o para configurar o runtime do IoT Edge na próxima seção.Por exemplo, seu connection string deve ser semelhante a
HostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE_SHARED_ACCESS_KEY>.
Instalar e iniciar o runtime do IoT Edge
Instale o IoT Edge para Linux no Windows em seu dispositivo e configure-o com a cadeia de conexão do dispositivo.
Execute os seguintes comandos do PowerShell no dispositivo de destino em que você deseja implantar Azure IoT Edge para Linux no Windows. Para implantar em um dispositivo de destino remoto usando o PowerShell, use o PowerShell Remoto para estabelecer uma conexão com um dispositivo remoto e executar esses comandos remotamente no dispositivo.
Em uma sessão do PowerShell com privilégios elevados, execute o comando a seguir para habilitar Hyper-V. Para obter mais informações, consulte Hyper-V no Windows 10.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -AllEm uma sessão do PowerShell com privilégios elevados, execute cada um dos comandos a seguir para baixar IoT Edge para Linux no Windows.
X64/AMD64
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_X64" -OutFile $msiPathARM64
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_ARM64" -OutFile $msiPath
Instale IoT Edge para Linux em Windows em seu dispositivo.
Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"Defina a política de execução no dispositivo de destino como
AllSignedse ainda não estiver. Você pode verificar a política de execução atual em um prompt do PowerShell com privilégios elevados usando:Get-ExecutionPolicy -ListSe a política de execução de
local machinenão forAllSigned, defina a política de execução usando o seguinte comando:Set-ExecutionPolicy -ExecutionPolicy AllSigned -ForceCrie a implantação do IoT Edge para Linux no Windows.
Deploy-EflowInsira Y para aceitar os termos de licença.
Insira O ou R para ativar ou desativar dados de diagnóstico opcionais, dependendo de sua preferência. Uma implantação bem-sucedida é mostrada na imagem a seguir.
Provisione seu dispositivo usando a cadeia de conexão do dispositivo que você recuperou na seção anterior. Substitua o texto do espaço reservado pelos seus próprios valores.
Provision-EflowVm -provisioningType ManualConnectionString -devConnString "<CONNECTION_STRING_HERE>"
Seu dispositivo IoT Edge agora está configurado. Ele está pronto para executar os módulos implantados na nuvem.
Implantar um módulo
Gerencie seu dispositivo Azure IoT Edge da nuvem para implantar um módulo que envia dados de telemetria para IoT Hub.
Uma das principais funcionalidades do Azure IoT Edge é implantar código em seus dispositivos IoT Edge da nuvem. IoT Edge módulos são pacotes executáveis implementados como contêineres. Nesta seção, você implantará um módulo predefinido da seção módulos IoT Edge do Registro de Artefatos da Microsoft.
O módulo que você implanta nesta seção simula um sensor e envia os dados gerados. Este módulo é um código útil quando você está começando a usar IoT Edge porque você pode usar os dados simulados para desenvolvimento e teste. Se você quiser ver exatamente o que este módulo faz, poderá exibir o código-fonte do sensor de temperatura simulado.
Siga estas etapas para implantar o primeiro módulo.
Entre no portal Azure e vá para o IoT Hub.
No menu à esquerda, selecione Dispositivos no menu Gerenciamento de dispositivos.
Selecione a identificação do dispositivo de destino da lista de dispositivos.
Observação
Quando você cria um novo dispositivo IoT Edge, ele exibe o código de status
417 -- The device's deployment configuration is not setno portal Azure. Esse status é normal e significa que o dispositivo está pronto para receber uma implantação do módulo.Na barra superior, selecione Definir Módulos.
Escolha quais módulos deseja executar no dispositivo. Você pode escolher entre módulos que você já criou, módulos do Registro de Artefatos da Microsoft ou módulos que você mesmo criou. Neste início rápido, você implantará um módulo do Registro de Artefatos da Microsoft.
Na seção IoT Edge módulos, selecione Add e escolha IoT Edge Module.
Atualize as seguintes configurações de módulo:
Configuração Valor Nome do módulo IoT SimulatedTemperatureSensorURI da imagem mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latestPolítica de reinicialização sempre Status desejado executando Selecione Avançar: Rotas para continuar a configurar rotas.
Adicione uma rota que envia todas as mensagens do módulo de temperatura simulado para IoT Hub.
Configuração Valor Nome SimulatedTemperatureSensorToIoTHubValor FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstreamSelecione Avançar: Revisar + criar.
Examine o arquivo JSON e selecione Criar. O arquivo JSON define todos os módulos que você implanta em seu dispositivo IoT Edge.
Observação
Quando você envia um novo deploy para um dispositivo IoT Edge, nada é transferido para o seu dispositivo. Em vez disso, o dispositivo consulta o IoT Hub regularmente para receber quaisquer novos comandos. Se o dispositivo encontrar um manifesto de implantação atualizado, ele usará as informações sobre a nova implantação para extrair as imagens do módulo da nuvem e, em seguida, começará a executar os módulos localmente. Esse processo pode levar alguns minutos.
Depois que você criar os detalhes de implantação do módulo, o assistente direcionará você à página de detalhes do dispositivo. Veja o status da implantação na guia Módulos.
Você verá três módulos: $edgeAgent, $edgeHub e SimulatedTemperatureSensor. Se um ou mais módulos tiverem Yes em Specified in Deployment mas não em Reportado pelo Dispositivo, seu dispositivo IoT Edge ainda os iniciará. Aguarde alguns minutos e atualize a página.
Se você tiver problemas para implantar módulos, consulte Solucionar problemas de dispositivos IoT Edge no portal do Azure.
Exibir os dados gerados
Neste início rápido, você criou um novo dispositivo IoT Edge e instalou o IoT Edge runtime nele. Em seguida, você usou o portal Azure para implantar um módulo IoT Edge para ser executado no dispositivo sem precisar fazer alterações no próprio dispositivo.
O módulo que você envia por push gera dados de ambiente de exemplo que você pode usar para teste posteriormente. O sensor simulado monitora um computador e o ambiente ao redor do computador. Por exemplo, esse sensor pode estar em uma sala de servidor, em um chão de fábrica ou em uma turbina eólica. As mensagens que ele envia incluem temperatura ambiente e umidade, temperatura do computador e pressão e um carimbo de data/hora. IoT Edge tutoriais usam os dados criados por este módulo como dados de teste para análise.
Acesse a sua máquina virtual do IoT Edge para Linux no Windows usando o seguinte comando na sessão do PowerShell:
Connect-EflowVmObservação
A única conta permitida para o SSH da máquina virtual é o usuário que a criou.
Depois de entrar, verifique a lista de módulos IoT Edge em execução usando o seguinte comando linux:
sudo iotedge listExiba as mensagens enviadas do módulo do sensor de temperatura para a nuvem usando o seguinte comando Linux:
sudo iotedge logs SimulatedTemperatureSensor -fDica
Os comandos do IoT Edge diferenciam maiúsculas de minúsculas quando se referem a nomes de módulo.
Limpar os recursos
Se você quiser continuar para os tutoriais do IoT Edge, ignore esta etapa. Você pode usar o dispositivo que você registrou e configurou neste guia de início rápido. Caso contrário, exclua os recursos de Azure que você criou para evitar encargos.
Se você criou sua máquina virtual e o hub IoT em um novo grupo de recursos, exclua esse grupo e todos os recursos associados. Se você não quiser excluir todo o grupo, exclua recursos individuais.
Importante
Verifique o conteúdo do grupo de recursos para ter certeza de que não haja nada que você queira manter. A exclusão de um grupo de recursos é irreversível.
Use o comando a seguir para remover o grupo IoTEdgeResources. A exclusão pode levar alguns minutos.
az group delete --name IoTEdgeResources
É possível confirmar se esse grupo de recursos foi removido usando este comando para exibir a lista dos grupos de recursos.
az group list
Desinstalar IoT Edge para Linux no Windows
Para remover a instalação do Azure IoT Edge para Linux no Windows do seu dispositivo, siga estas etapas.
- Abra Configurações no Windows.
- Selecione Adicionar ou remover programas.
- Selecione o aplicativo Azure IoT Edge.
- Selecione Desinstalar.
Próximas etapas
Neste início rápido, você criou um dispositivo IoT Edge e usou a interface de nuvem Azure IoT Edge para implantar código no dispositivo. Agora, você tem um dispositivo de teste que gera dados brutos sobre o respectivo ambiente.
No próximo tutorial, você aprenderá a monitorar a atividade e a integridade do dispositivo no portal do Azure.