Cómo funciona AWS IoT Greengrass - AWS IoT Greengrass

Cómo funciona AWS IoT Greengrass

El software cliente AWS IoT Greengrass, también denominado software AWS IoT Greengrass Core, se ejecuta en distribuciones basadas en Windows y Linux, como Ubuntu o Raspberry Pi OS, para dispositivos con arquitecturas ARM o x86. Con AWS IoT Greengrass, puede programar dispositivos para que actúen localmente sobre los datos que generan, ejecutar predicciones basadas en modelos de machine learning y filtrar y agregar datos en los dispositivos. AWS IoT Greengrass permite la ejecución local de funciones de AWS Lambda, contenedores de Docker, procesos nativos del sistema operativo o tiempos de ejecución personalizados de su elección.

AWS IoT Greengrass brinda módulos de software prediseñados llamados componentes que le permiten ampliar fácilmente la funcionalidad de los dispositivos periféricos. Los componentes de AWS IoT Greengrass le permiten conectarse a servicios de AWS y aplicaciones de terceros en la periferia. Después de desarrollar sus aplicaciones de IoT, AWS IoT Greengrass le permite implementar, configurar y administrar esas aplicaciones de forma remota en su flota de dispositivos en las instalaciones.

El siguiente ejemplo muestra cómo interactúa un dispositivo de AWS IoT Greengrass con el servicio en la nube de AWS IoT Greengrass y otros servicios de AWS de la Nube de AWS.

Una descripción general de cómo interactúa un dispositivo de AWS IoT Greengrass con el servicio de la nube de AWS IoT Greengrass y otros servicios de AWS en la Nube de AWS.

Conceptos clave de AWS IoT Greengrass

Los siguientes son conceptos esenciales para la comprensión y el uso de AWS IoT Greengrass:

Objeto AWS IoT

Un objeto AWS IoT es una representación de un dispositivo concreto o de una entidad lógica. La información sobre un objeto se almacena en el registro de AWS IoT.

DIspositivo principal de Greengrass

Un dispositivo que ejecuta el software AWS IoT Greengrass Core. Un dispositivo principal de Greengrass es un objeto IoT de AWS. Puede agregar varios dispositivos principales a grupos de objetos AWS IoT para crear y administrar grupos de dispositivos principales de Greengrass. Para obtener más información, consulte Configuración de los dispositivos principales de AWS IoT Greengrass.

Dispositivo de cliente de Greengrass

Un dispositivo que se conecta y se comunica con un dispositivo principal de Greengrass a través de MQTT. Un dispositivo de cliente de Greengrass es un objeto AWS IoT. El dispositivo principal puede procesar, filtrar y agregar datos de los dispositivos de cliente que se conectan a él. Puede configurar el dispositivo principal para retransmitir mensajes MQTT entre los dispositivos de cliente, el servicio de AWS IoT Core en la nube y los componentes de Greengrass. Para obtener más información, consulte Interacción con dispositivos IoT locales.

Los dispositivos de cliente pueden ejecutar FreeRTOS o usar el SDK para dispositivos con AWS IoT o la API de detección de Greengrass para obtener información sobre los dispositivos principales a los que se pueden conectar.

Componente de Greengrass

Un módulo de software que se implementa y se ejecuta en un dispositivo principal de Greengrass. Todo el software que se desarrolla e implementa con AWS IoT Greengrass se modela como un componente. AWS IoT Greengrass ofrece componentes públicos prediseñados que proporcionan características y funcionalidades que puede utilizar en sus aplicaciones. También puede desarrollar sus propios componentes personalizados, en su dispositivo local o en la nube. Después de desarrollar un componente personalizado, puede usar el servicio en la nube de AWS IoT Greengrass para implementarlo en uno o varios dispositivos principales. Puede crear un componente personalizado e implementar ese componente para un dispositivo principal. Al hacerlo, el dispositivo principal descarga los siguientes recursos para ejecutar el componente:

  • Receta: un archivo JSON o YAML que describe el módulo de software definiendo los detalles, la configuración y los parámetros de los componentes.

  • Artefacto: el código de origen, los binarios o los scripts que definen el software que se ejecutará en el dispositivo. Puede crear artefactos desde cero o puede crear un componente mediante una función de Lambda, un contenedor de Docker o un tiempo de ejecución personalizado.

  • Dependencia: la relación entre los componentes que permite aplicar actualizaciones o reinicios automáticos de los componentes dependientes. Por ejemplo, puede hacer que un componente de procesamiento seguro de mensajes dependa de un componente de cifrado. Esto garantiza que cualquier actualización del componente de cifrado actualice y reinicie automáticamente el componente de procesamiento de mensajes.

Para obtener más información, consulte Componentes proporcionados por AWS y Desarrollo de componentes de AWS IoT Greengrass.

Implementación

El proceso para enviar componentes y aplicar la configuración de componentes deseada a un dispositivo objetivo de destino, que puede ser un único dispositivo principal de Greengrass o un grupo de dispositivos principales de Greengrass. Las implementaciones aplican automáticamente cualquier configuración de componentes actualizada al destino e incluyen cualquier otro componente que se defina como dependencias. También puede clonar una implementación existente para crear una nueva que utilice los mismos componentes, pero que se implemente en un destino diferente. Las implementaciones son continuas, lo que significa que cualquier actualización que realice en los componentes o en la configuración de los componentes de una implementación se envía automáticamente a todos los destinos. Para obtener más información, consulte Implementación de componentes de AWS IoT Greengrass en los dispositivos.

Software AWS IoT Greengrass Core

El conjunto de todo el software de AWS IoT Greengrass que se instala en un dispositivo principal de AWS IoT Greengrass. El software principal contiene lo siguiente:

  • Núcleo: este componente obligatorio ofrece la funcionalidad mínima del software AWS IoT Greengrass Core. El núcleo administra las implementaciones, la orquestación y la administración del ciclo de vida de otros componentes. También facilita la comunicación entre los componentes de AWS IoT Greengrass de forma local en un dispositivo individual. Para obtener más información, consulte Núcleo de Greengrass.

  • Componentes opcionales: estos componentes configurables son proporcionados por AWS IoT Greengrass y habilitan características adicionales en sus dispositivos de periferia. En función de sus requisitos, puede elegir los componentes opcionales que desee implementar en su dispositivo, como la transmisión de datos, la inferencia de machine learning local o una interfaz de línea de comandos local. Para obtener más información, consulte Componentes proporcionados por AWS.

Puede actualizar su software AWS IoT Greengrass Core implementando nuevas versiones de sus componentes en su dispositivo.

Características de AWS IoT Greengrass

AWS IoT Greengrass Version 2 consta de los elementos siguientes:

Software AWS IoT Greengrass Core

Puede usar el software AWS IoT Greengrass Core que se ejecuta en sus dispositivos de periferia para hacer lo siguiente:

Configurar y administrar los dispositivos principales de Greengrass a través de las API de AWS IoT Greengrass donde crea implementaciones de software continuas. Para obtener más información, consulte Implementación de componentes de AWS IoT Greengrass en los dispositivos.

Algunas características solo son compatibles con determinadas plataformas. Para obtener más información, consulte Compatibilidad de características de Greengrass por sistema operativo.

Para obtener más información sobre plataformas compatibles, requisitos y descargas, consulte Configuración de los dispositivos principales de AWS IoT Greengrass.

Al descargar este software, acepta el acuerdo de licencia del software de Greengrass Core.