Plataformas compatíveis com o Azure IoT Edge
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 explica quais plataformas do sistema operacional, runtimes do IoT Edge, mecanismos de contêiner e componentes são compatíveis com o IoT Edge disponível em geral ou na versão preliminar.
Obter suporte
Se você tiver problemas ao usar o serviço de Azure IoT Edge, há várias maneiras de buscar o suporte. Experimente um dos seguintes canais para obter suporte:
Relatar bugs – A maioria do desenvolvimento direcionado ao produto Azure IoT Edge ocorre no projeto de código aberto do IoT Edge. Bugs podem ser relatados na página de problemas do projeto. Os bugs relacionados ao Azure IoT Edge para Linux no Windows podem ser relatados na página de problemas do iotedge-eflow. As correções passam rapidamente do projeto para as atualizações do produto.
Equipe de suporte ao cliente Microsoft – Usuários que tenham um plano de suporte podem acionar a equipe de suporte ao cliente Microsoft, criando um tíquete de suporte diretamente no portal do Azure.
Solicitações de recursos – O produto Azure IoT Edge rastreia solicitações de recursos por meio da página Voz do Usuário.
Mecanismos de contêiner
Os módulos do Azure IoT Edge são implementados como contêineres, de modo que a IoT Edge precise de um mecanismo de contêiner para inicializá-la. A Microsoft fornece um mecanismo de contêiner, moby-engine, para atender a esse requisito. Esse contêiner é baseado no projeto de software livre Moby. Docker CE e Docker EE são outros mecanismos de contêineres populares. Também são baseados no projeto de software livre Moby e são compatíveis com Azure IoT Edge. A Microsoft fornece o melhor suporte ao esforço para sistemas que usam esses mecanismos de contêiner, no entanto, a Microsoft não podem enviar correções para problemas inerentes a esses mecanismos. Por esse motivo, a Microsoft recomenda o uso de mecanismos móveis em sistemas de produção.
Sistemas operacionais
O Azure IoT Edge executa na maioria dos sistemas operacionais que podem executar contêineres, no entanto, nem todos estes sistemas têm suporte de forma igual. Os sistemas operacionais são agrupados em camadas que representam o nível de suporte que os usuários podem esperar.
- Há suporte para sistemas da camada 1. Para sistemas da camada 1, Microsoft:
- tem esse sistema operacional em testes automatizados
- fornece pacotes de instalação aos sistemas
- Os sistemas da Camada 2 são compatíveis com o Azure IoT Edge e podem ser utilizados com relativa facilidade. Para sistemas da camada 2:
- A Microsoft fez testes informais nas plataformas ou conhece um parceiro executando o Azure IoT Edge com êxito na plataforma
- Pacotes de instalação para outras plataformas podem funcionar nessas plataformas
A família do sistema operacional de host sempre deverá corresponder à família do sistema operacional convidado usado dentro do contêiner de um módulo.
Isso significa que você somente poderá usar contêineres do Linux no Linux e contêineres do Windows no Windows. Ao usar os contêineres do Windows, haverá suporte apenas para contêineres isolados de processo e não para contêineres isolados do Hyper-V.
IoT Edge para Linux no Windows usa IoT Edge em uma máquina virtual Linux em execução em um host do Windows. Dessa forma, você pode executar módulos do Linux em um dispositivo Windows.
Camada 1
Os sistemas listados na tabela a seguir têm suporte da Microsoft, seja geralmente disponível ou em visualização pública, e são testados com cada nova versão.
O Azure IoT Edge dá suporte a módulos criados como contêineres Linux ou Windows. Os contêineres do Linux podem ser implantados em dispositivos Linux ou implantados em dispositivos Windows usando o IoT Edge para Linux no Windows. Os contêineres do Windows só podem ser implantados em dispositivos Windows.
Contêineres do Linux
Módulos criados como contêineres do Linux podem ser implantados em dispositivos Linux ou Windows. Para dispositivos Linux, o tempo de execução do IoT Edge é instalado diretamente no dispositivo host. Para dispositivos Windows, uma máquina virtual Linux criada com o runtime do IoT Edge é executada no dispositivo host.
O IoT Edge para Linux no Windows é a maneira recomendada para executar IoT Edge em dispositivos Windows.
Sistema operacional | AMD64 | ARM32v7 | ARM64 |
---|---|---|---|
Debian 11 (Bullseye) | |||
Ubuntu Server 20.04 | |||
Ubuntu Server 18.04 | |||
Windows 10/11 Pro | |||
Windows 10/11 Enterprise | |||
Windows 10/11 IoT Enterprise | |||
Windows Server 2019/2022 |
Todos os sistemas operacionais Windows devem ser a compilação mínima 17763 com todas as atualizações cumulativas atuais instaladas.
Observação
O suporte ao Ubuntu Server 16.04 foi encerrado com o lançamento da versão 1.1 do IoT Edge.
Contêineres do Windows
Importante
O IoT Edge 1.1 LTS é o último canal de lançamento que dará suporte a contêineres do Windows. Começando na versão 1.2, os contêineres do Windows deixarão de ter suporte. Considere usar ou mudar para o IoT Edge para Linux no Windows para executar o IoT Edge em dispositivos Windows.
Módulos criados como contêineres do Windows podem ser implantados somente em dispositivos Windows.
Sistema operacional | AMD64 | ARM32v7 | ARM64 |
---|---|---|---|
Windows 10 IoT Enterprise | |||
Windows Server 2019 | |||
Windows Server IoT 2019 |
Todos os sistemas operacionais Windows devem ser da versão 1809 (Build 17763). A compilação específica do Windows é necessária para IoT Edge no Windows porque a versão dos contêineres do Windows deve corresponder exatamente à versão do dispositivo Windows do host. Atualmente, os contêineres do Windows usam o Build 17763.
Observação
O suporte do Windows 10 IoT Core terminou com o lançamento do IoT Edge versão 1.1.
Camada 2
Os sistemas listados na tabela a seguir são considerados compatíveis com Azure IoT Edge, mas não são ativamente testados nem mantidos pela Microsoft.
Sistema operacional | AMD64 | ARM32v7 | ARM64 |
---|---|---|---|
CentOS-7 | |||
Debian 10 1 | |||
Debian 11 | |||
Mentor Embedded Linux Flex OS | |||
Mentor Embedded Linux Omni OS | |||
RHEL 7 | |||
Ubuntu 18.04 2 | |||
Ubuntu 20.04 2 | |||
Wind River 8 | |||
Yocto | |||
Buster do SO do Raspberry Pi |
1 Com a versão 1.3, há novas chamadas do sistema que causam falhas no Debian 10. Para ver a solução alternativa, exiba o Problema conhecido: Debian 10 (Buster) na seção ARMv7 das notas de versão 1.3 para obter detalhes.
2 Os pacotes de instalação são disponibilizados nas versões do Azure IoT Edge. Confira as etapas de instalação em Instalação offline ou específica da versão.
Lançamentos
A tabela a seguir lista as versões compatíveis no momento. IoT Edge ativos de lançamento e notas de versão estão disponíveis na página versões do Azure-iotedge.
Notas sobre a versão e ativos | Type | Data de lançamento | Data de fim do suporte |
---|---|---|---|
1.4 | LTS (suporte de longo prazo) | Agosto de 2022 | 12 de novembro de 2024 |
1.1 | LTS (suporte de longo prazo) | Fevereiro de 2021 | 13 de dezembro de 2022 |
Para obter mais informações sobre o histórico de versões do IoT Edge, consulte Histórico de versões.
O IoT Edge 1.1 é o primeiro canal de versão do LTS (suporte a longo prazo). Essa versão não introduziu nenhum recurso novo, mas receberá atualizações de segurança e correções para regressões. O IoT Edge 1.1 LTS usa o .NET Core 3.1 e terá suporte até 13 de dezembro de 2022 para corresponder ao ciclo de vida de versão do .NET Core e do .NET 5.
Importante
- Todo produto da Microsoft tem um ciclo de vida. Ele começa quando o produto é lançado e termina quando ele não tem mais suporte. Conhecer datas importantes desse ciclo de vida ajuda você a tomar decisões informadas sobre quando atualizar ou fazer outras alterações no software. O IoT Edge é regido pela Política de Ciclo de Vida Moderna da Microsoft.
- Com o lançamento de um canal de suporte a longo prazo, recomendamos que todos os clientes atuais que executam o 1.0. x atualizem seus dispositivos para o 1.1. x para receber suporte contínuo.
IoT Edge uses the Microsoft.Azure.Device.Client SDK. Para obter mais informações, consulte o repositório GitHub do SDK C# de IoT do Azure ou o conteúdo de referência do SDK do Azure para .NET. A lista a seguir mostra a versão do SDK do cliente para a qual cada versão é testada:
Versão do IoT Edge | Versão do SDK do Microsoft.Azure.Devices.Client |
---|---|
1.4 | 1.36.6 |
1,3 | 1.36.6 |
1.2.0 | 1.33.4-NestedEdge |
1.1 (LTS) | 1.28.0 |
1.0.10 | 1.28.0 |
1.0.9 | 1.21.1 |
1.0.8 | 1.20.3 |
1.0.7 | 1.20.1 |
1.0.6 | 1.17.1 |
1.0.5 | 1.17.1 |
Máquinas Virtuais
O Azure IoT Edge pode ser executado em máquinas virtuais. O uso de uma máquina virtual como dispositivo IoT Edge é comum quando os clientes desejam aumentar a infraestrutura existente com inteligência de borda. A família do sistema operacional de host da VM deve corresponder à família do sistema operacional convidado usado dentro do contêiner de um módulo. Esse requisito é o mesmo de quando o Azure IoT Edge é executado diretamente em um dispositivo. O Azure IoT Edge é independente da tecnologia de virtualização subjacente e funciona em VMs desenvolvidas por plataformas como Hyper-V e vSphere.
Requisitos mínimos do sistema
O Azure IoT Edge executa perfeitamente em dispositivos tão pequenos quanto um Raspberry Pi3 até um hardware de nível de servidor. A escolha do hardware certo para o seu cenário depende das cargas de trabalho que você deseja executar. Tomar a decisão final do dispositivo pode ser complicado, no entanto, é possível criar facilmente protótipos de uma solução em laptops ou desktops tradicionais.
A experiência de prototipagem ajudará a guiar a seleção final do dispositivo. As perguntas que você deve considerar incluem:
- Quantos módulos estão em sua carga de trabalho?
- Quantas camadas os contêineres dos seus módulos compartilham?
- Em qual linguagem os módulos são gravados?
- Qual a quantidade de dados que seus módulos processarão?
- Seus módulos precisam de qualquer hardware especializado para acelerar suas cargas de trabalho?
- Quais são as características de desempenho desejadas da sua solução?
- Qual é o seu orçamento de hardware?