Introducción a las cargas de trabajo de IoT
Esta sección de Microsoft Azure Well-Architected Framework tiene como objetivo abordar los desafíos de la creación de cargas de trabajo de IoT en Azure. En este artículo se describen las áreas de diseño de IoT, los patrones de arquitectura y las capas de arquitectura de la carga de trabajo de IoT.
Cinco pilares de excelencia arquitectónica respaldan la metodología de diseño de cargas de trabajo de IoT. Estos pilares sirven como brújula para las decisiones de diseño posteriores en las áreas de diseño descritas en este artículo. Los artículos restantes de esta serie profundizan en cómo evaluar las áreas de diseño mediante principios de diseño específicos de IoT en los pilares de confiabilidad, seguridad, optimización de costos, excelencia operativa y eficiencia del rendimiento.
Sugerencia
Para evaluar la carga de trabajo de IoT mediante las lentes de confiabilidad, seguridad, optimización de costos, excelencia operativa y eficiencia del rendimiento, consulte Azure Well-Architected Review.
¿Qué es una carga de trabajo de IoT?
El término carga de trabajo hace referencia a la colección de recursos de aplicación que admiten un objetivo empresarial común o la ejecución de un proceso empresarial común. Estos objetivos o procesos usan varios servicios, como api y almacenes de datos. Los servicios funcionan juntos para ofrecer funcionalidades específicas de un extremo a otro.
Internet de las cosas (IoT) es una colección de servicios administrados y de plataforma en entornos perimetrales y en la nube que conectan, supervisan y controlan los recursos físicos.
Por lo tanto, una carga de trabajo de IoT describe la práctica de diseñar, compilar y operar soluciones de IoT para ayudar a satisfacer los desafíos arquitectónicos según sus requisitos y restricciones.
La carga de trabajo de IoT aborda los tres componentes de los sistemas De IoT:
- Cosas, o los objetos físicos, equipos industriales, dispositivos y sensores que se conectan a la nube de forma persistente o intermitente.
- Información, información que recopilan las cosas que analizan los seres humanos o la inteligencia artificial y se convierten en conocimientos accionables.
- Acciones, las respuestas de personas o sistemas a la información, que se conectan a los resultados empresariales, los sistemas y las herramientas.
Patrones de arquitectura de IoT
La mayoría de los sistemas IoT usan un patrón de arquitectura de operaciones conectadas o productos conectados. Cada patrón tiene requisitos y restricciones específicos en las áreas de diseño de IoT.
Las arquitecturas de productos conectados se centran en la ruta de acceso activa. Los usuarios finales administran e interactúan con productos mediante aplicaciones en tiempo real. Este patrón se aplica a los fabricantes de dispositivos inteligentes para consumidores y empresas en una amplia gama de ubicaciones y configuraciones. Algunos ejemplos son las cafeteras inteligentes, los televisores inteligentes y las máquinas de producción inteligentes. En estas soluciones de IoT, los generadores de productos proporcionan servicios conectados a los usuarios del producto.
Las arquitecturas de operaciones conectadas se centran en la ruta de acceso activa o inactiva con dispositivos perimetrales, alertas y procesamiento en la nube. Estas soluciones analizan datos de varios orígenes, recopilan información operativa, crean modelos de aprendizaje automático e inician más acciones de dispositivo y nube. El patrón de operaciones conectadas se aplica a empresas y proveedores de servicios inteligentes que conectan máquinas y dispositivos preexistentes. Entre los ejemplos se incluyen fábricas inteligentes y edificios inteligentes. En estas soluciones de IoT, los generadores de servicios ofrecen servicios inteligentes que proporcionan información y respaldan la eficacia y eficacia de los entornos conectados.
Para más información sobre la arquitectura de la solución base para cargas de trabajo de IoT, consulte Arquitectura de referencia de Azure IoT y Arquitecturas de referencia de Azure IoT específicas del sector.
Well-Architected Pilares de Framework en la carga de trabajo de IoT
Azure Well-Architected Framework consta de cinco pilares de excelencia arquitectónica, que puede usar para mejorar la calidad de las cargas de trabajo de IoT. En los artículos siguientes se resalta cómo los principios de diseño específicos de IoT influyen en las decisiones en las áreas de diseño de IoT:
La confiabilidad garantiza que las aplicaciones cumplan los compromisos de disponibilidad. La resistencia garantiza que las cargas de trabajo están disponibles y pueden recuperarse de errores a cualquier escala. La confiabilidad en la carga de trabajo de IoT describe cómo las áreas de diseño de IoT de heterogeneidad, escalabilidad, conectividad e híbrido afectan a la confiabilidad de IoT.
La seguridad proporciona garantías de confidencialidad, integridad y disponibilidad contra ataques deliberados y abusos de datos y sistemas. La seguridad de la carga de trabajo de IoT describe cómo la heterogeneidad y la híbridaidad afectan a la seguridad de IoT.
La optimización de costos equilibra los objetivos empresariales con justificación presupuestaria para crear cargas de trabajo rentables, a la vez que evita soluciones que consumen mucho capital. La optimización de costos en la carga de trabajo de IoT examina formas de reducir los gastos y mejorar la eficacia operativa en las áreas de diseño de IoT.
La excelencia operativa abarca los procesos que compilan y ejecutan aplicaciones en producción. La excelencia operativa en la carga de trabajo de IoT describe cómo la heterogeneidad, la escalabilidad, la conectividad y la híbridaidad afectan a las operaciones de IoT.
La eficiencia del rendimiento es la capacidad de una carga de trabajo para escalar de forma eficaz para satisfacer las demandas. La eficacia del rendimiento en la carga de trabajo de IoT describe cómo la heterogeneidad, la escalabilidad, la conectividad y la híbrida afectan al rendimiento de IoT.
Áreas de diseño de IoT
Las principales áreas de diseño de IoT que facilitan un buen diseño de soluciones de IoT son:
- Heterogeneidad
- Seguridad
- Escalabilidad
- Flexibilidad
- Servicio
- Conectividad
- Hibridación
Las áreas de diseño están interrelacionadas y las decisiones tomadas dentro de una área pueden afectar a las decisiones en todo el diseño. Para evaluar las áreas de diseño, use los principios de diseño específicos de IoT en los cinco pilares de excelencia arquitectónica. Estos principios ayudan a aclarar las consideraciones para asegurarse de que la carga de trabajo de IoT cumple los requisitos de las capas de arquitectura.
En las secciones siguientes se describen las áreas de diseño de IoT y cómo se aplican a los productos conectados de IoT y a los patrones de arquitectura de operaciones conectadas .
Heterogeneidad
Las soluciones de IoT deben acomodar varios dispositivos, hardware, software, escenarios, entornos, patrones de procesamiento y estándares. Es importante identificar el nivel necesario de heterogeneidad para cada capa de arquitectura en tiempo de diseño.
En las arquitecturas de productos conectados, la heterogeneidad describe las variedades de máquinas y dispositivos que deben admitirse. La heterogeneidad también describe la variedad de entornos en los que se puede implementar un producto inteligente, como redes y tipos de usuarios.
En las arquitecturas de operaciones conectadas, la heterogeneidad se centra en la compatibilidad con diferentes protocolos de tecnología operativa (OT) y conectividad.
Seguridad
Las soluciones de IoT deben tener en cuenta las medidas de seguridad y privacidad en todas las capas. Las medidas de seguridad incluyen:
- Identidad del dispositivo y del usuario.
- Autenticación y autorización.
- Protección de datos para los datos en reposo y en tránsito.
- Estrategias para la atestación de datos.
En las arquitecturas de productos conectados, el control limitado sobre el uso de productos en entornos heterogéneos y ampliamente distribuidos afecta a la seguridad. Según el modelo de Microsoft Threat Modeling Tool STRIDE, el riesgo más alto para los dispositivos es la manipulación y la amenaza a los servicios procede de la denegación de servicios de los dispositivos secuestrados.
En las arquitecturas de operaciones conectadas, los requisitos de seguridad para el entorno de implementación son importantes. La seguridad se centra en los requisitos específicos del entorno de OT y los modelos de implementación, como ISA95 y Purdue, y en la integración con la plataforma de IoT basada en la nube. En función de STRIDE, los mayores riesgos de seguridad para las operaciones conectadas son la suplantación de identidad, la manipulación, la divulgación de información y la elevación de privilegios.
Escalabilidad
Las soluciones de IoT deben ser capaces de admitir la hiperescala, con millones de dispositivos conectados y eventos que ingieren grandes cantidades de datos con alta frecuencia. Las soluciones de IoT deben habilitar la prueba de concepto y los proyectos piloto que comienzan con algunos dispositivos y eventos y, a continuación, escalar horizontalmente a dimensiones de hiperescala. Teniendo en cuenta la escalabilidad de cada capa de arquitectura es esencial para el éxito de la solución de IoT.
En las arquitecturas de productos conectados, la escala describe el número de dispositivos. En la mayoría de los casos, cada dispositivo tiene un conjunto limitado de datos e interacciones, controlados por el generador de dispositivos, y la escalabilidad solo procede del número de dispositivos implementados.
En las arquitecturas de operaciones conectadas, la escalabilidad depende del número de mensajes y eventos que se van a procesar. En general, el número de máquinas y dispositivos es limitado, pero las máquinas y dispositivos de OT envían un gran número de mensajes y eventos.
Flexibilidad
Las soluciones de IoT se basan en el principio de composición, lo que permite combinar varios componentes propios o de terceros como bloques de creación. Una solución de IoT bien diseñada tiene puntos de extensión que permiten la integración con dispositivos, sistemas y aplicaciones existentes. Una arquitectura controlada por eventos a gran escala con comunicación asincrónica forma parte de la red troncal, con composición flexible de servicios y módulos de procesamiento.
En las arquitecturas de productos conectados, el cambio de los requisitos del usuario final define la flexibilidad. Las soluciones deben permitirle cambiar fácilmente el comportamiento del dispositivo y los servicios de usuario final en la nube y proporcionar nuevos servicios.
En las arquitecturas de operaciones conectadas, la compatibilidad con diferentes tipos de dispositivos define flexibilidad. Las soluciones deben ser capaces de conectar fácilmente protocolos heredados y propietarios.
Servicio
Las soluciones de IoT deben tener en cuenta la facilidad de mantenimiento y reparación de componentes, dispositivos y otros elementos del sistema. La detección temprana de posibles problemas es fundamental. Idealmente, una solución de IoT bien diseñada debe corregir los problemas automáticamente antes de que se produzcan problemas graves. Las operaciones de mantenimiento y reparación deben provocar el menor tiempo de inactividad o interrupción posible.
En las arquitecturas de productos conectados, la amplia distribución de dispositivos afecta a la capacidad de servicio. La capacidad de supervisar, administrar y actualizar dispositivos dentro del contexto y el control del usuario final, sin acceso directo a ese entorno, es limitado.
En las arquitecturas de operaciones conectadas, la capacidad de servicio depende del contexto, los controles y los procedimientos especificados del entorno de OT, que pueden incluir sistemas y protocolos ya disponibles o en uso.
Conectividad
Las soluciones de IoT deben ser capaces de controlar períodos prolongados de conectividad sin conexión, ancho de banda bajo o intermitente. Para admitir la conectividad, puede crear métricas para realizar un seguimiento de los dispositivos que no se comunican con regularidad.
Los productos conectados se ejecutan en entornos de consumidor no controlados, por lo que la conectividad es desconocida y difícil de sostener. Las arquitecturas de productos conectados deben ser capaces de admitir períodos prolongados inesperados de conectividad sin conexión y de ancho de banda bajo.
En las arquitecturas de operaciones conectadas, el modelo de implementación del entorno de OT afecta a la conectividad. Normalmente, el grado de conectividad, incluida la conectividad intermitente, se conoce y administra en escenarios de OT.
Hibridación
Las soluciones de IoT deben abordar la complejidad híbrida, que se ejecutan en diferentes hardware y plataformas en entornos locales, perimetrales y multinube. Es fundamental administrar arquitecturas de cargas de trabajo de IoT dispares, garantizar la seguridad no comprometida y permitir la agilidad del desarrollador.
En las arquitecturas de productos conectados, la amplia distribución de dispositivos define la hybrididad. El generador de soluciones de IoT controla el hardware y la plataforma en tiempo de ejecución, y la hybrididad se centra en la diversidad de los entornos de implementación.
En las arquitecturas de operaciones conectadas, la hybrididad describe la lógica de distribución y procesamiento de datos. Los requisitos de escala y latencia determinan dónde procesar los datos y la rapidez de los comentarios.
Capas de arquitectura de IoT
Una arquitectura de IoT consta de un conjunto de capas fundamentales. Las tecnologías específicas admiten las distintas capas y la carga de trabajo de IoT resalta las opciones para diseñar y crear cada capa.
- Las capas principales identifican soluciones específicas de IoT.
- Las capas comunes no son específicas de las cargas de trabajo de IoT.
- Las capas transversales admiten todas las capas en el diseño, la creación y la ejecución de soluciones.
La carga de trabajo de IoT aborda diferentes requisitos e implementaciones específicos de la capa. El marco se centra en las capas principales e identifica el impacto específico de la carga de trabajo de IoT en las capas comunes.
En las secciones siguientes se describen las capas de arquitectura de IoT y las tecnologías de Microsoft que las admiten.
Capas y servicios principales
Las capas y servicios principales de IoT identifican si una solución es una solución de IoT. Las capas principales de una carga de trabajo de IoT son:
- Dispositivo y puerta de enlace
- Administración y modelado de dispositivos
- Ingesta y comunicación
La carga de trabajo de IoT se centra principalmente en estas capas. Para darse cuenta de estas capas, Microsoft proporciona tecnologías y servicios de IoT, como:
- Azure IoT Hub
- SDK de dispositivos IoT de Azure
- Azure IoT Edge
- IoT Hub Device Provisioning Service (DPS)
- Azure Digital Twins
- Azure Sphere.
Sugerencia
Azure IoT Central es una plataforma de aplicaciones administradas que puede usar para evaluar rápidamente el escenario de IoT y evaluar las oportunidades de su negocio. Después de usar IoT Central para evaluar el escenario de IoT, puede compilar la solución preparada para la empresa mediante la eficacia de la plataforma Azure IoT.
Capa de dispositivo y puerta de enlace
Esta capa representa el dispositivo físico o virtual y el hardware de puerta de enlace implementados en el perímetro o en el entorno local. Los elementos de esta capa incluyen los sistemas operativos y el firmware del dispositivo o la puerta de enlace. Los sistemas operativos administran los procesos en los dispositivos y puertas de enlace. El firmware es el software y las instrucciones programadas en dispositivos y puertas de enlace. Esta capa es responsable de:
- Detección y actuación en otros dispositivos periféricos y sensores.
- Procesamiento y transferencia de datos de IoT.
- Comunicación con la plataforma en la nube de IoT.
- Seguridad, cifrado y raíz de confianza de los dispositivos de nivel base.
- Administración de software y procesamiento de nivel de dispositivo.
Entre los casos de uso comunes se incluyen la lectura de valores de sensor desde un dispositivo, el procesamiento y la transferencia de datos a la nube y la habilitación de la comunicación local.
Entre las tecnologías pertinentes de Microsoft se incluyen:
- Azure IoT Edge
- SDK de dispositivos IoT de Azure
- Azure RTOS
- Microsoft Defender para IoT
- Azure Sphere
- Windows para IoT
Capa de ingesta y nivel de comunicación
Esta capa agrega y aplica comunicaciones entre el dispositivo y la capa de puerta de enlace y la solución en la nube de IoT. Esta capa habilita:
- Compatibilidad con la comunicación bidireccional con dispositivos y puertas de enlace.
- Agregación y combinación de comunicaciones de diferentes dispositivos y puertas de enlace.
- Enrutamiento de comunicaciones a un dispositivo, una puerta de enlace o un servicio específicos.
- Puente y transformación entre diferentes protocolos. Por ejemplo, media los servicios perimetrales o en la nube en un mensaje MQTT que va a un dispositivo o puerta de enlace.
Entre las tecnologías pertinentes de Microsoft se incluyen:
Capa de modelado y administración de dispositivos
Esta capa mantiene la lista de dispositivos y identidades de puerta de enlace, su estado y sus funcionalidades. Esta capa también permite la creación de modelos de tipo de dispositivo y relaciones entre dispositivos.
Entre las tecnologías pertinentes de Microsoft se incluyen:
- dispositivos gemelos de IoT Hub
- IoT Hub Device Provisioning Service
- Azure Digital Twins
- IoT Plug and Play
Capas y servicios comunes
Las cargas de trabajo distintas de IoT, como data & AI y aplicaciones modernas, también usan las capas comunes. Azure Well-Architected Framework de nivel superior aborda los elementos genéricos de estas capas comunes y otros marcos de trabajo abordan otros requisitos. En las secciones siguientes se aborda la influencia relacionada con IoT sobre los requisitos e incluye vínculos a otras instrucciones.
Nivel de transporte
Esta capa representa la forma en que los dispositivos, las puertas de enlace y los servicios se conectan y comunican, los protocolos que usan y cómo mueven o enrutan eventos, tanto locales como en la nube.
Entre las tecnologías pertinentes de Microsoft se incluyen:
- Protocolos OT e IoT, como MQTT(S), AMQP(S), HTTPS, OPC-UA y Modbus
- Enrutamiento de IoT Hub
- rutas de IoT Edge
Capa de análisis y procesamiento de eventos
Esta capa procesa y actúa en los eventos de IoT de la capa de ingesta y comunicación.
- El procesamiento y el análisis de flujos de ruta de acceso activa se producen casi en tiempo real para identificar información y acciones inmediatas. Por ejemplo, el procesamiento de flujos genera alertas cuando aumentan las temperaturas.
- El procesamiento y el análisis de rutas de acceso semiactivos identifican información y acciones a corto plazo. Por ejemplo, el análisis predice una tendencia de temperaturas crecientes.
- El procesamiento y el análisis de rutas de acceso inactivas crean modelos de datos inteligentes para las rutas de acceso activas o cálidas que se van a usar.
Entre las tecnologías pertinentes de Microsoft se incluyen:
- Azure Stream Analytics
- Funciones de Azure
- Azure Databricks
- Azure Machine Learning
- Azure Synapse Analytics
Capa de almacenamiento
Esta capa conserva los datos de estado y eventos de dispositivo IoT durante algún período de tiempo. El tipo de almacenamiento depende del uso necesario para los datos.
- Almacenamiento de streaming, como colas de mensajes, desacoplación de servicios de IoT y disponibilidad de comunicación.
- El almacenamiento basado en series temporales permite el análisis de la ruta de acceso activa.
- El almacenamiento a largo plazo admite la creación de modelos de inteligencia artificial y aprendizaje automático.
Entre las tecnologías pertinentes de Microsoft se incluyen:
Capa de interacción e informes
Esta capa permite a los usuarios finales interactuar con la plataforma de IoT y tener una vista basada en roles en el estado, el análisis y el procesamiento de eventos del dispositivo.
Entre las tecnologías pertinentes de Microsoft se incluyen:
Capa de integración
Esta capa permite la interacción con sistemas fuera de la solución de IoT mediante las API de comunicaciones de máquina a máquina o de servicio a servicio.
Entre las tecnologías pertinentes de Microsoft se incluyen:
Actividades transversales
Las actividades transversales como DevOps le ayudan a diseñar, compilar, implementar y supervisar soluciones de IoT. DevOps permite a los roles previamente siloados, como el desarrollo, las operaciones, la ingeniería de calidad y la seguridad, coordinar y colaborar para producir productos mejores, más confiables y ágiles.
DevOps es conocido en el desarrollo de software, pero se puede aplicar a cualquier producto o proceso de desarrollo y operaciones. Los equipos que adoptan una cultura, prácticas y herramientas de DevOps pueden responder mejor a las necesidades de los clientes, aumentar la confianza en las aplicaciones y los productos que crean y lograr objetivos empresariales más rápido.
En el diagrama siguiente se muestra el ciclo de planeación, desarrollo, entrega y operaciones de DevOps:
Las actividades de desarrollo e implementación incluyen el diseño, la compilación, la prueba y la implementación de la solución de IoT y sus componentes. La actividad abarca todas las capas e incluye hardware, firmware, servicios e informes.
Las actividades de administración y operaciones identifican el estado de mantenimiento actual del sistema IoT en todas las capas.
La ejecución correcta de DevOps y otras actividades transversales puede determinar el éxito en la creación y ejecución de una solución de IoT bien diseñada. Las actividades transversales le ayudan a cumplir los requisitos establecidos en tiempo de diseño y a ajustarse a los requisitos cambiantes a lo largo del tiempo. Es importante evaluar claramente su experiencia en estas actividades y tomar medidas para garantizar la ejecución en el nivel de calidad requerido.
Entre las tecnologías pertinentes de Microsoft se incluyen:
- Visual Studio
- Azure DevOps
- Ciclo de vida de desarrollo de seguridad de Microsoft (SDL)
- Azure Monitor
- Azure Arc
- Microsoft Defender para IoT
- Microsoft Sentinel