Compartir a través de


Preparar el entorno de desarrollo y pruebas para IoT Edge

Se aplica a:IoT Edge 1.5 checkmark IoT Edge 1.5

Importante

IoT Edge 1.5 LTS es la versión compatible. IoT Edge 1.4 LTS alcanzó el final del ciclo de vida el 12 de noviembre de 2024. Si usa una versión anterior, consulte Update IoT Edge.

IoT Edge mueve la lógica empresarial existente a los dispositivos que funcionan en el borde. Para preparar las aplicaciones y las cargas de trabajo para que se ejecuten como módulos IoT Edge, debe compilarlas como contenedores. En este artículo se proporcionan instrucciones sobre cómo configurar el entorno de desarrollo para que pueda crear correctamente una solución de IoT Edge. Una vez configurado el entorno de desarrollo, puede aprender a desarrollar sus propios módulos de IoT Edge.

En cualquier solución de IoT Edge, considere al menos dos máquinas: el dispositivo IoT Edge (o dispositivos) que ejecuta el módulo IoT Edge y la máquina de desarrollo que compila, prueba e implementa módulos. Este artículo se centra principalmente en el equipo de desarrollo. Para pruebas, las dos máquinas pueden ser iguales. Puede ejecutar IoT Edge en el equipo de desarrollo e implementar módulos en él.

Sistema operativo

IoT Edge se ejecuta en un conjunto específico de sistemas operativos compatibles. Al desarrollar para IoT Edge, puede usar la mayoría de los sistemas operativos que pueden ejecutar un motor de contenedor. El motor de contenedores es un requisito en el equipo de desarrollo para crear módulos en forma de contenedores y subirlos a un registro de contenedores.

Si la máquina de desarrollo no puede ejecutar IoT Edge, vaya a la sección Testing tools de este artículo para obtener información sobre cómo probar y depurar localmente.

Los sistemas operativos de la máquina de desarrollo y los dispositivos IoT Edge no necesitan coincidir. Sin embargo, el sistema operativo contenedor debe ser coherente entre la máquina de desarrollo y el dispositivo IoT Edge. Por ejemplo, puede desarrollar módulos en una máquina Windows e implementarlos en un dispositivo Linux. La máquina Windows debe ejecutar contenedores de Linux para compilar los módulos para el dispositivo Linux.

Motor de contenedor

El concepto central de IoT Edge es que puede implementar de forma remota la lógica empresarial y en la nube en los dispositivos mediante el empaquetado en contenedores. Para crear contenedores, necesita un motor de contenedores en su equipo de desarrollo.

Cualquier motor de contenedor compatible con Open Container Initiative, como Docker, es capaz de crear imágenes de módulo IoT Edge. Moby es el motor de contenedor compatible con los dispositivos de IoT Edge en producción. Si usa los snaps de Ubuntu Core, Canonical proporciona el snap de Docker y lo soporta para escenarios de producción.

Herramientas de desarrollo

El Azure IoT Edge Dev Tool es una herramienta de línea de comandos para desarrollar y probar módulos IoT Edge. Puede crear nuevos escenarios de IoT Edge, crear imágenes de módulo, ejecutar módulos en un simulador y supervisar los mensajes enviados a IoT Hub. La herramienta iotedgedev es la herramienta recomendada para desarrollar módulos de IoT Edge.

Tanto Visual Studio como Visual Studio Code tienen extensiones de complemento para ayudar a desarrollar soluciones de IoT Edge. Estas extensiones proporcionan plantillas específicas del lenguaje para ayudar a crear e implementar nuevos escenarios de IoT Edge. Las extensiones Azure IoT Edge para Visual Studio y Visual Studio Code ayudan a codificar, compilar, implementar y depurar las soluciones de IoT Edge. Puede crear una solución de IoT Edge completa que contenga varios módulos y las extensiones actualizan automáticamente una plantilla de manifiesto de implementación con cada nueva adición de módulo. Las extensiones también habilitan la administración de dispositivos IoT desde Visual Studio o Visual Studio Code. Puede implementar módulos en un dispositivo, supervisar el estado y ver los mensajes a medida que llegan a IoT Hub. Por último, ambas extensiones usan la herramienta IoT EdgeHub Dev Tool para habilitar la ejecución local y la depuración de módulos en su máquina de desarrollo.

herramienta de desarrollo de IoT Edge

La herramienta de desarrollo de Azure IoT Edge simplifica el desarrollo de IoT Edge con capacidades de línea de comandos. Esta herramienta proporciona comandos de la CLI para desarrollar, depurar y probar módulos. La herramienta de desarrollo de IoT Edge trabaja con su sistema de desarrollo, ya sea que haya instalado manualmente las dependencias en su máquina o que esté utilizando el IoT Edge Dev Container para ejecutar la herramienta iotedgedev en un contenedor.

Para obtener más información y empezar, consulte IoT Edge wiki de la herramienta de desarrollo.

extensión de Visual Studio Code

La extensión Azure IoT Edge para Visual Studio Code proporciona plantillas de módulo IoT Edge basadas en lenguajes de programación, incluidos C, C#, Java, Node.jsy Python. También se incluyen plantillas para funciones de Azure en C#.

Importante

La extensión Azure IoT Edge Visual Studio Code está en modo maintenance. La herramienta iotedgedev es la herramienta recomendada para desarrollar módulos de IoT Edge.

Para obtener más información y descargar, consulte Azure IoT Edge para Visual Studio Code.

Además de las extensiones de IoT Edge, es posible que le resulte útil instalar otras extensiones para desarrollar. Por ejemplo, puede usar Docker para Visual Studio Code para administrar las imágenes, contenedores y registros. Además, todos los lenguajes admitidos principales tienen extensiones para Visual Studio Code que pueden ayudar al desarrollar módulos.

La extensión Azure IoT Hub es útil como complemento para la extensión Azure IoT Edge.

extensión de Visual Studio 2019/2022

Las herramientas de Azure IoT Edge para Visual Studio proporcionan una plantilla de módulo de IoT Edge basada en C# y C.

Importante

Las extensiones Azure IoT Edge Visual Studio están en modo de mantenimiento y ya no están disponibles en Visual Studio Marketplace. La herramienta iotedgedev es la herramienta recomendada para desarrollar módulos de IoT Edge.

Herramientas de pruebas

Existen varias herramientas de prueba para ayudarle a simular IoT Edge dispositivos o módulos de depuración de forma más eficaz. En la tabla siguiente se muestra una comparación de alto nivel entre las herramientas. En las secciones individuales siguientes se describe cada herramienta más específicamente.

Solo el entorno de ejecución de IoT Edge admite implementaciones de producción, pero las siguientes herramientas admiten desarrollo y pruebas. Use estas herramientas para simular o crear fácilmente dispositivos IoT Edge. Estas herramientas no son mutuamente excluyentes, pero pueden funcionar de forma conjunta para proporcionar una experiencia de desarrollo completa.

Herramienta También conocida como Plataformas compatibles Más adecuado para
Herramienta de desarrollo de IoT EdgeHub iotedgehubdev Windows, Linux, macOS Simular un dispositivo de prueba con el fin de depurar módulos.
contenedor de desarrollo de IoT Edge iotedgedev Windows, Linux, macOS Desarrollar sin instalar dependencias.

Herramienta de desarrollo de IoT EdgeHub

La herramienta de desarrollo Azure IoT EdgeHub proporciona una experiencia de desarrollo y depuración local. La herramienta ayuda a iniciar IoT Edge módulos sin el entorno de ejecución de IoT Edge para poder crear, desarrollar, probar, ejecutar y depurar IoT Edge módulos y soluciones localmente. Para realizar las pruebas, no es necesario insertar imágenes en un registro de contenedor e implementarlas en un dispositivo.

La herramienta de desarrollo de IoT EdgeHub funciona con las extensiones de Visual Studio y Visual Studio Code y con la herramienta de desarrollo de IoT Edge. La herramienta de desarrollo admite el desarrollo de bucles internos y las pruebas de bucles externos, por lo que también se integra con otras herramientas de DevOps.

Importante

La herramienta de desarrollo de IoT EdgeHub está en modo maintenance. Considere la posibilidad de usar una máquina virtual Linux con IoT Edge runtime instalado, dispositivo físico o EFLOW.

Para obtener más información e instalar, consulte Azure IoT EdgeHub Dev Tool.

contenedor de desarrollo de IoT Edge

El contenedor de desarrollo Azure IoT Edge es un contenedor de Docker que tiene todas las dependencias que necesita para IoT Edge desarrollo. Este contenedor facilita la introducción al lenguaje en el que quiera desarrollar, incluidos C#, Python, Node.jsy Java. Todo lo que necesita instalar es un motor de contenedor, como Docker o Moby, para descargar el contenedor en su máquina de desarrollo.

Para obtener más información, consulte Azure IoT Edge Dev Container.

Herramientas de DevOps

Cuando esté listo para desarrollar soluciones a escala para escenarios de producción de gran tamaño, aproveche las ventajas de los principios modernos de DevOps incluida la automatización, la supervisión y los procesos de ingeniería de software simplificados. IoT Edge tiene extensiones para admitir herramientas de DevOps, como Azure DevOps, proyectos de Azure DevOps y Jenkins. Si quiere personalizar una canalización existente o usar otra herramienta de DevOps como CircleCI o TravisCI, use las características de la CLI incluidas en la herramienta de desarrollo de IoT Edge.

Pasos siguientes