Exercício – Instalar o runtime do IoT Edge para Linux
Antes de começar, você precisará do seguinte:
- Uma assinatura do Microsoft Azure. Caso ainda não tenha uma, inscreva-se em uma avaliação gratuita em https://azure.microsoft.com/free . Se você é um estudante, inscreva-se em uma conta do Azure for Students.
Criar recursos de nuvem
Criar um grupo de recursos
Execute as etapas a seguir no ambiente do Azure Cloud Shell.
Selecione 'Bash' na parte superior esquerda como o ambiente do Cloud Shell.
Adicione a extensão de IoT do Azure à instância do Cloud Shell.
az extension add --name azure-iot
Crie um grupo de recursos na localização eastus2 usando o comando a seguir. Dê um nome ao grupo de recursos.
az group create --name <resource-group-name> --location eastus2
Criar um dispositivo IoT Edge no hub IoT
Crie um hub IoT de Camada F1 usando o comando a seguir. Dê um nome ao hub IoT e substitua-o pelo seu grupo de recursos.
az iot hub create --resource-group <resource-group-name> --name <iot-hub-name> --sku F1 --partition-count 2
Um dispositivo precisa ser registrado no Hub IoT antes de se conectar. Execute o comando a seguir para criar uma identidade do dispositivo no hub IoT. Dê um nome ao dispositivo IoT e substitua-o pelo hub IoT.
az iot hub device-identity create --hub-name <iot-hub-name> --device-id <device-id>
Instalar o IoT Edge para Linux
Observação
Acesse a página da Microsoft caso deseje saber mais sobre como instalar o IoT Edge para Linux.
Abra o terminal no computador Linux.
Instale a configuração do repositório que corresponde ao sistema operacional do seu dispositivo.
Ubuntu Server 18.04:
curl https://packages.microsoft.com/config/ubuntu/18.04/multiarch/prod.list > ./microsoft-prod.list
Copie a lista gerada para o diretório sources.list.d.
sudo cp ./microsoft-prod.list /etc/apt/sources.list.d/
Instale a chave pública do Microsoft GPG.
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo cp ./microsoft.gpg /etc/apt/trusted.gpg.d/
Instalar um mecanismo de contêiner
O Azure IoT Edge depende de um runtime de contêiner compatível com OCI. Para cenários de produção, recomendamos que você use o mecanismo Moby. Esse é o único mecanismo de contêiner com suporte oficial do Azure IoT Edge. Imagens de contêiner do docker CE/EE são compatíveis com o runtime Moby.
Atualize as listas de pacotes no dispositivo.
sudo apt-get update
Instale o mecanismo de Moby.
sudo apt-get install moby-engine
Se receber erros ao tentar instalar o mecanismo de contêiner Moby, verifique a compatibilidade de seu kernel Linux com o Moby. Alguns fabricantes de dispositivos inseridos fornecem imagens de dispositivos que contêm kernels Linux personalizados sem os recursos necessários para compatibilidade com mecanismos de contêiner. Execute o seguinte comando, que usa o script check-config fornecido pelo Moby, para verificar a configuração do kernel:
curl -sSL https://raw.githubusercontent.com/moby/moby/master/contrib/check-config.sh -o check-config.sh
chmod +x check-config.sh
./check-config.sh
Na saída do script, verifique se todos os itens em Generally Necessary
e Network Drivers
estão habilitados. Se algum recurso estiver faltando, habilite-o compilando novamente o kernel da origem e selecionando os módulos associados para inclusão no .config do kernel apropriado. De maneira semelhante, se estiver usando um gerador de configuração de kernel como defconfig
ou menuconfig
, localize e habilite os respectivos recursos e recompile o kernel. Depois de implantar o kernel recém-modificado, execute o script check-config novamente para verificar se todos os recursos necessários foram habilitados com êxito.
Instalar o daemon de segurança do IoT Edge
O daemon de segurança do IoT Edge fornece e mantém padrões de segurança no dispositivo IoT Edge. O daemon é iniciado a cada inicialização e inicializa o dispositivo iniciando o restante do runtime do IoT Edge.
Atualize as listas de pacotes no dispositivo.
sudo apt-get update
Verifique quais versões do IoT Edge estão disponíveis.
apt list -a iotedge
Instale a versão mais recente do daemon de segurança e use o seguinte comando que também instala a versão mais recente do pacote libiothsm-std:
sudo apt-get install iotedge
Provisionar o dispositivo com sua identidade de nuvem
Autenticar-se com chaves simétricas
Neste ponto, o runtime do IoT Edge está instalado em seu dispositivo Linux e você precisa provisionar o dispositivo com as informações de autenticação e a identidade de nuvem dele.
Esta seção descreve as etapas para provisionar um dispositivo com a autenticação de chave simétrica. Você deve ter registrado o dispositivo no Hub IoT e recuperado a cadeia de conexão nas informações do dispositivo.
No dispositivo IoT Edge, abra o arquivo de configuração.
sudo nano /etc/iotedge/config.yaml
Encontre as configurações de provisionamento do arquivo e remova a marca de comentário da seção Configuração de provisionamento manual usando uma cadeia de conexão, caso isso ainda não tenha sido feito.
```toml
# Manual provisioning configuration using a connection string
provisioning:
source: "manual"
device_connection_string: "<ADD DEVICE CONNECTION STRING HERE>"
```
Atualizar o valor de device_connection_string com a cadeia de caracteres de conexão do dispositivo IoT Edge. Verifique se todas as outras seções de provisionamento foram comentadas. Verifique se a linha provisionamento: não tem nenhum espaço em branco precedente e se os itens aninhados são recuados em dois espaços.
Para colar o conteúdo da área de transferência no Nano, selecione SHIFT + botão direito do mouse, clique ou pressione SHIFT + INSERT.
Salve e feche o arquivo.
CTRL + X`, `Y`, `Enter
Depois de inserir as informações de provisionamento no arquivo de configuração, reinicie o daemon:
sudo systemctl restart iotedge
Verificar configuração bem-sucedida
Verifique se o runtime foi instalado e configurado com êxito em seu dispositivo IoT Edge.
Verifique se o serviço do sistema do IoT Edge está sendo executado.
sudo systemctl status iotedge