Criar um dispositivo do IoT Edge
Aplica-se a: IoT Edge 1.5 IoT Edge 1.4
Importante
O IoT Edge 1.5 LTS e o IoT Edge 1.4 LTS são versões com suporte. O IoT Edge 1.4 LTS chegará ao fim da vida útil em 12 de novembro de 2024. Se você estiver em uma versão anterior, confira Atualizar o IoT Edge.
Este artigo fornece uma visão geral das opções disponíveis para instalar e provisionar IoT Edge em seus dispositivos.
Este artigo fornece uma visão geral em todas as opções para sua solução de IoT Edge e ajuda a:
- Escolher uma plataforma
- Escolher como provisionar os dispositivos
- Escolher um método de autenticação
No final deste artigo, você terá uma visão clara do que são as opções de plataforma, provisionamento e autenticação que deseja usar para sua solução de IoT Edge.
Introdução
Se você souber que tipo de plataforma, provisionamento e opções de autenticação deseja usar para criar um dispositivo IoT Edge, use os links na tabela a seguir para começar.
Se você quiser obter mais informações sobre como escolher a opção certa para você, continue neste artigo para saber mais.
Contêineres do Linux em hosts Linux | Contêineres do Linux em hosts Windows | |
---|---|---|
Provisionamento manual (dispositivo único) | Certificados X.509 Chaves simétricas |
Certificados X.509 Chaves simétricas |
Provisionamento automático (dispositivos em escala) | Certificados X.509 TPM Chaves simétricas |
Certificados X.509 TPM Chaves simétricas |
Termos e conceitos
Se você ainda não estiver familiarizado com a terminologia IoT Edge, examine alguns conceitos importantes:
Runtime do IoT Edge: o runtime do IoT Edge é uma coleção de programas que transforma um dispositivo em um dispositivo do IoT Edge. Coletivamente, os componentes de tempo de execução IoT Edge permitem que os dispositivos do IoT Edge executem seus módulos de IoT Edge.
Provisionamento: cada dispositivo do IoT Edge deve ser provisionado. O provisionamento é um processo de duas etapas. A primeira etapa é registrar o dispositivo em um hub IoT, que cria uma identidade de nuvem que o dispositivo usa para estabelecer a conexão com seu hub. A segunda etapa é configurar o dispositivo com sua identidade de nuvem. O provisionamento pode ser feito manualmente por dispositivo ou pode ser feito em escala usando o Serviço de Provisionamento de Dispositivos no Hub IOT.
Autenticação: seus dispositivos do IoT Edge precisam verificar sua identidade quando se conectam ao Hub IoT. Você pode escolher qual método de autenticação usar, como senhas de chave simétrica, impressões digitais de certificado ou TPMs (módulos de plataforma confiável).
Escolher uma plataforma
As opções de plataforma são referenciadas pelos sistemas operacionais do contêiner e do host. O sistema operacional do contêiner é o usado dentro do runtime do IoT Edge e contêineres de módulo. O sistema operacional do host é o do dispositivo em que os contêineres e módulos do runtime do IoT Edge estão em execução.
Há três opções de plataforma para seus dispositivos do IoT Edge.
Contêineres do Linux em hosts Linux: execute contêineres de IoT Edge baseados em Linux diretamente em um host Linux. Em todos os documentos do IoT Edge, você também verá essa opção conhecida como Linux e contêineres do Linux para simplificar.
Contêineres do linux em hosts Windows: execute contêineres de IoT Edge baseados em linux em uma máquina virtual linux em um host Windows. Em todos os documentos do IoT Edge, você também verá essa opção conhecida como Linux no Windows, IoT Edge para Linux no Windows e EFLOW.
Contêineres do Windows em hosts Windows: execute contêineres de IoT Edge baseados em Windows diretamente em um host Windows. Em todos os documentos do IoT Edge, você também verá essa opção conhecida como Windows e contêineres do Windows para simplificar.
Para ver as informações mais recentes sobre quais sistemas operacionais têm suporte para cenários de produção, confira Sistemas com suporte do Azure IoT Edge.
Contêineres do Linux no Linux
Para dispositivos Linux, o tempo de execução do IoT Edge é instalado diretamente no dispositivo host.
O IoT Edge dá suporte a dispositivos Linux x64, ARM32 e ARM64. A Microsoft fornece pacotes de instalação oficiais para uma variedade de sistemas operacionais.
Contêineres do Linux no Windows
IoT Edge para Linux no Windows hospeda uma máquina virtual Linux em seu dispositivo Windows. A máquina virtual vem predefinida com o runtime do IoT Edge, e as atualizações são gerenciadas por meio de Microsoft Update.
O IoT Edge para Linux no Windows é a maneira recomendada para executar IoT Edge em dispositivos Windows. Para saber mais, confira O que é Azure IoT Edge para Linux no Windows.
Contêineres do Windows no Windows
A versão 1.2 ou posterior do IoT Edge não dá suporte a contêineres do Windows. Os contêineres do Windows não têm suporte além da versão 1.1.
Escolher como provisionar os dispositivos
Você pode provisionar um único dispositivo ou vários dispositivos em escala, dependendo das necessidades de sua solução de IoT Edge.
As opções disponíveis para autenticar comunicações entre seus dispositivos IoT Edge e seus hubs IoT dependem do método de provisionamento escolhido. Você pode ler mais sobre essas opções na seção Escolher um método de autenticação.
Único dispositivo
O provisionamento de um único dispositivo refere-se ao provisionamento de um dispositivo IoT Edge sem a assistência do DPS (serviço de provisionamento de dispositivos) do dispositivo IoT. Você verá o provisionamento de dispositivo único também conhecido como provisionamento manual.
Usando o provisionamento de dispositivo único, você precisará inserir manualmente as informações de provisionamento, como uma cadeia de conexão, em seus dispositivos. O provisionamento manual é rápido e fácil de configurar para apenas alguns dispositivos, mas a carga de trabalho aumentará com o número de dispositivos. O provisionamento ajuda quando você está considerando a escalabilidade da solução.
Os métodos de autenticação de chave simétrica e X. 509 autoassinados estão disponíveis para provisionamento manual. Você pode ler mais sobre essas opções na seção Escolher um método de autenticação.
Dispositivos em escala
O provisionamento de dispositivos em escala refere-se ao provisionamento de um ou mais dispositivos IoT Edge com a assistência do Serviço de Provisionamento de Dispositivos no Hub IoT. Você verá o provisionamento em escala também conhecido como provisionamento automático.
Se sua solução IoT Edge exigir mais de um dispositivo, o provisionamento automático usando o DPS economizará o esforço de inserir manualmente informações de provisionamento nos arquivos de configuração de cada dispositivo. Esse modelo automatizado pode ser dimensionado para milhões de dispositivos do IoT Edge.
Você pode proteger o IoT Edge com o método de autenticação de sua escolha. Os métodos de autenticação chave simétrica, certificados X.509 e atestado de TPM (Trusted Platform Module) estão disponíveis para dispositivos de provisionamento em escala. Você pode ler mais sobre essas opções na seção Escolher um método de autenticação.
Para ver mais dos recursos do DPS, consulte a Seção de recursos da página de visão geral.
Escolher um método de autenticação
Atestado do certificado X.509
Usar certificados X.509 como um mecanismo de atestado é a maneira recomendada de dimensionar a produção e simplificar o provisionamento de dispositivos. Normalmente, os certificados X.509 são organizados em uma cadeia de certificados de confiança. Começando com um certificado raiz confiável ou autoassinado, cada certificado na cadeia assina o próximo certificado inferior. Esse padrão cria uma relação de confiança representante desde o certificado raiz até cada certificado intermediário até o certificado de dispositivo downstream final instalado em um dispositivo.
Você cria dois certificados de identidade X.509 e os coloca no dispositivo. Ao criar uma nova identidade do dispositivo no Hub IoT, você fornece impressões digitais de ambos os certificados. Quando o dispositivo é autenticado no Hub IoT, ele apresenta um certificado e o Hub IoT verifica se o certificado corresponde à sua impressão digital. As chaves X.509 no dispositivo devem ser armazenadas em um HSM (Módulo de Segurança de Hardware). Por exemplo, módulos PKCS nº 11, ATECC, dTPM etc.
Esse método de autenticação é mais seguro do que chaves simétricas e dá suporte a registros de grupo que fornecem uma experiência de gerenciamento simplificada para um alto número de dispositivos. Esse método de autenticação é recomendado para cenários de produção.
Atestado TPM (Trusted Platform Module)
O uso do atestado TPM é o método para provisionamento de dispositivos que usa recursos de autenticação no software e no hardware. Cada chip do TPM usa uma chave de endosso exclusiva para verificar sua autenticidade.
O atestado do TPM só está disponível para provisionamento em escala com o DPS e dá suporte apenas a registro individuais e não a registro de grupo. Os registros de grupo não estão disponíveis devido à natureza específica do dispositivo do TPM.
O TPM 2.0 é necessário quando você usa o atestado do TPM com o serviço de provisionamento de dispositivos.
Esse método de autenticação é mais seguro que o das chaves simétricas e é recomendado para cenários de produção.
Atestado de chaves simétricas
O atestado de chave simétrica é uma abordagem simples para autenticar o dispositivo. 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.
Quando você cria uma nova identidade de dispositivo no Hub IoT, o serviço cria duas chaves. Você coloca uma das chaves no dispositivo e apresenta a chave para o Hub IoT durante a autenticação.
Esse método de autenticação é mais rápido para começar a usar, mas não tão seguro. O provisionamento de dispositivos usando um TPM ou certificados X.509 é mais seguro e deve ser usado em soluções com requisitos de segurança mais rigorosos.
Próximas etapas
Você pode usar o tabela de conteúdo para navegar até o guia de ponta a ponta apropriado para criar um dispositivo do IoT Edge para a plataforma, o provisionamento e os requisitos de autenticação da sua solução de IoT Edge.
Você também pode usar os links a seguir para acessar o artigo relevante.
Contêineres do Linux em hosts Linux
Provisionar manualmente um único dispositivo:
- Provisionar um único dispositivo Linux usando certificados X.509
- Provisionar um único dispositivo Linux usando chaves simétricas
Provisionar vários dispositivos em escala:
- Provisionar dispositivos Linux em escala usando certificados X.509
- Provisionar dispositivos Linux em escala usando atestado TPM
- Provisionar dispositivos Linux em escala usando chaves simétricas
Contêineres do Linux em hosts Windows
Provisionar manualmente um único dispositivo:
- Provisionar um único dispositivo Linux no Windows usando certificados X.509
- Provisionar um único dispositivo Linux no Windows usando chaves simétricas
Provisionar vários dispositivos em escala: