View a markdown version of this page

¿Qué es? AWS IoT Greengrass? - AWS IoT Greengrass

Aviso de fin de soporte: el 7 de octubre de 2026, AWS descontinuará el soporte para AWS IoT Greengrass Version 1. Después del 7 de octubre de 2026, ya no podrá acceder a los AWS IoT Greengrass V1 recursos. Para obtener más información, visite Migrar desde AWS IoT Greengrass Version 1.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

¿Qué es? AWS IoT Greengrass?

AWS IoT Greengrass es un software que amplía las capacidades de la nube a los dispositivos locales. Esto permite que los dispositivos recopilen y analicen datos más cerca del origen de la información, reaccionen de forma autónoma a eventos locales y se comuniquen de forma segura entre sí en las redes locales. Los dispositivos locales también pueden comunicarse de forma segura con los datos de IoT AWS IoT Core y exportarlos a Nube de AWS. AWS IoT Greengrass los desarrolladores pueden usar AWS Lambda funciones y conectores prediseñados para crear aplicaciones sin servidor que se implementen en los dispositivos para su ejecución local.

El siguiente diagrama muestra la arquitectura básica de. AWS IoT Greengrass

El núcleo de Greengrass permite la ejecución local de Lambda, la mensajería, las sombras de dispositivos y la seguridad. El núcleo de Greengrass interactúa con el Nube de AWS y funciona localmente con conectividad intermitente.

AWS IoT Greengrass permite a los clientes crear dispositivos de IoT y lógica de aplicaciones. En concreto, AWS IoT Greengrass proporciona una gestión basada en la nube de la lógica de las aplicaciones que se ejecuta en los dispositivos. Los conectores y las funciones de Lambda implementados localmente se activan por eventos locales, mensajes de la nube u otras fuentes.

En AWS IoT Greengrass, los dispositivos se comunican de forma segura en una red local e intercambian mensajes entre sí sin tener que conectarse a la nube. AWS IoT Greengrass proporciona un administrador de pub/sub mensajes local que puede almacenar en búfer de forma inteligente los mensajes en caso de pérdida de conectividad, de modo que se conserven los mensajes entrantes y salientes a la nube.

AWS IoT Greengrass protege los datos de los usuarios:

  • A través de la autorización y autenticación seguras de los dispositivos.

  • A través de conectividad segura en la red local.

  • Entre los dispositivos locales y la nube.

Las credenciales de seguridad de los dispositivos funcionan dentro de un grupo hasta que se revocan, aunque se interrumpa la conectividad a la nube, de manera que los dispositivos puedan seguir comunicándose de forma segura en el nivel local.

AWS IoT Greengrass proporciona actualizaciones inalámbricas y seguras de las funciones de Lambda.

AWS IoT Greengrass consiste en:

  • Distribuciones de software

    • AWS IoT Greengrass Software principal

    • AWS IoT Greengrass SDK principal

  • Servicio en la nube

    • AWS IoT Greengrass API

  • Características

    • Tiempo de ejecución de Lambda

    • Implementación de sombras

    • Administrador de mensajes

    • Administración de grupos

    • Servicio de detección

    • Over-the-air agente de actualización

    • Administrador de flujos

    • Acceso a recursos locales

    • Inferencia de aprendizaje automático local

    • Secrets Manager local

    • Conectores con integración incorporada con servicios, protocolos y software

AWS IoT Greengrass Software principal

El software AWS IoT Greengrass Core proporciona las siguientes funciones:

  • Implementación y ejecución local de conectores y funciones de Lambda.

  • Procese los flujos de datos localmente con exportaciones automáticas a Nube de AWS.

  • Mensajes MQTT a través de la red local entre dispositivos, conectores y funciones de Lambda mediante suscripciones administradas.

  • La mensajería MQTT entre AWS IoT dispositivos, conectores y funciones Lambda se realiza mediante suscripciones gestionadas.

  • Proteja las conexiones entre los dispositivos y el Nube de AWS uso de la autenticación y autorización de los dispositivos.

  • Sincronización de sombras locales de dispositivos. Las sombras se pueden configurar para sincronizarse con Nube de AWS.

  • Acceso controlado a los recursos del dispositivo local y el volumen.

  • Implementación de modelos de machine learning entrenados en la nube para la ejecución de la inferencia local.

  • Detección automática de direcciones IP que permite a los dispositivos detectar el dispositivo principal de Greengrass.

  • Implementación central de la configuración de grupos nuevos o actualizados. Una vez descargados los datos de configuración, el dispositivo principal se reinicia automáticamente.

  • Actualizaciones de software vía inalámbrica (OTA) para funciones de Lambda definidas por el usuario de manera segura y transparente.

  • Almacenamiento seguro y cifrado de los secretos locales y acceso controlado por conectores y funciones de Lambda.

AWS IoT Greengrass las instancias principales se configuran mediante AWS IoT Greengrass API que crean y actualizan las definiciones de AWS IoT Greengrass grupo almacenadas en la nube.

AWS IoT Greengrass Versiones de software principales

AWS IoT Greengrass ofrece varias opciones para instalar el software AWS IoT Greengrass principal, incluidos los archivos de descarga tar.gz, un script de inicio rápido y apt las instalaciones en las plataformas Debian compatibles. Para obtener más información, consulte Instala la   AWS IoT Greengrass Software principal.

Las siguientes pestañas describen las novedades y los cambios en las versiones AWS IoT Greengrass principales del software.

GGC v1.11
1.11.6

Mejoras y correcciones de errores:

  • Resiliencia mejorada en caso de que se produzca una pérdida repentina de energía durante una implementación.

  • Se ha corregido un problema por el que la corrupción de los datos del administrador de transmisiones podía impedir que se AWS IoT Greengrass iniciara el software Core.

  • Se ha corregido un problema que provocaba que los nuevos dispositivos cliente no se pudieran conectar al núcleo en determinadas situaciones.

  • Se ha corregido un error que provocaba que los nombres de los flujos del administrador de flujos no pudieran contener .log.

1.11.5

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

1.11.4

Mejoras y correcciones de errores:

  • Se ha corregido un problema con el gestor de transmisiones que impedía actualizar a la versión 1.11.3 AWS IoT Greengrass del software Core. Si utilizas Stream Manager para exportar datos a la nube, ahora puedes usar una actualización OTA para actualizar una versión anterior v1.x del software Core a la AWS IoT Greengrass v1.11.4.

  • Mejoras de rendimiento generales y correcciones de errores.

1.11.3

Mejoras y correcciones de errores:

  • Se ha corregido un problema que provocaba que el software AWS IoT Greengrass Core que se ejecutaba en un instante en un dispositivo Ubuntu dejara de responder tras un corte repentino de energía en el dispositivo.

  • Se ha corregido un problema que provocaba un retraso en la entrega de los mensajes MQTT a funciones de Lambda de larga duración.

  • Se ha corregido un problema que provocaba que los mensajes MQTT no se enviaran correctamente cuando el valor maxWorkItemCount estaba establecido en un valor superior a 1024.

  • Se ha corregido un problema que provocaba que el agente de actualización de OTA ignorara el período KeepAlive de MQTT especificado en la propiedad keepAlive en config.json.

  • Mejoras de rendimiento generales y correcciones de errores.

importante

Si utilizas Stream Manager para exportar datos a la nube, no actualices la versión 1.11.3 del software AWS IoT Greengrass Core desde una versión anterior a la v1.x. Si es la primera vez que habilitas el administrador de transmisiones, te recomendamos encarecidamente que instales primero la versión más reciente del software Core. AWS IoT Greengrass

1.11.1

Mejoras y correcciones de errores:

  • Se ha corregido un problema que provocaba que el administrador de flujos aumentara el uso de memoria.

  • Se ha corregido un problema que provocaba que el administrador de flujos restableciera el número de secuencia del flujo a 0 si el dispositivo principal de Greengrass estaba apagado durante más tiempo que el tiempo de vida (TTL) especificado de los datos del flujo.

  • Se ha corregido un problema que impedía que el administrador de flujos detuviera correctamente los reintentos de exportación de datos al Nube de AWS.

1.11.0

Nuevas características:

  • Un agente de telemetría del núcleo de Greengrass recopila datos de telemetría locales y los publica en. Nube de AWS Para recuperar los datos de telemetría para su posterior procesamiento, los clientes pueden crear una regla de Amazon EventBridge y suscribirse a un objetivo. Para obtener más información, consulta Cómo recopilar datos de telemetría sobre el estado del sistema desde los dispositivos principales. AWS IoT Greengrass

  • Una API HTTP local devuelve una instantánea del estado actual de los procesos de trabajo locales iniciados por. AWS IoT Greengrass Para obtener más información, consulte Llamadas a la API de comprobación de estado local.

  • Un administrador de transmisiones exporta automáticamente los datos a Amazon S3 y AWS IoT SiteWise.

    Los nuevos parámetros del administrador de flujos le permiten actualizar las transmisiones existentes y pausar o reanudar la exportación de datos.

  • Compatibilidad para ejecutar funciones Lambda de Python 3.8.x en el dispositivo principal.

  • Una nueva propiedad ggDaemonPort en config.json que se usa para configurar el número de puerto IPC de Greengrass core. El número de puerto predeterminado es 8000.

    Una propiedad systemComponentAuthTimeout nueva en config.json que se utiliza para configurar el tiempo de espera de la autenticación IPC de Greengrass core. El valor de tiempo predeterminado es 5000 milisegundos.

  • Se aumentó la cantidad máxima de AWS IoT dispositivos por AWS IoT Greengrass grupo de 200 a 2500.

    Se aumentó el número máximo de suscripciones por grupo de 1000 a 10 000.

    Para obtener más información, consulte Puntos de conexión y cuotas de AWS IoT Greengrass.

Mejoras y correcciones de errores:

  • Optimización general que puede reducir la utilización de memoria de los procesos de servicio de Greengrass.

  • Un nuevo parámetro de configuración del tiempo de ejecución (mountAllBlockDevices) permite a Greengrass utilizar los montajes de enlace para montar todos los dispositivos de bloques en un contenedor después de configurar el OverlayFS. Esta característica resolvió un problema que provocaba un error en la implementación de Greengrass si /usr no estaba por debajo de la jerarquía /.

  • Se ha corregido un problema que provocaba una falla en el AWS IoT Greengrass núcleo si /tmp se trataba de un enlace simbólico.

  • Se ha corregido un error para permitir que el agente de implementación de Greengrass elimine de la carpeta los artefactos del modelo de machine learning no utilizados. mlmodel_public

  • Mejoras de rendimiento generales y correcciones de errores.

Extended life versions
1.10.5

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

1.10.4

Mejoras y correcciones de errores:

  • Se ha corregido un problema que provocaba que el software AWS IoT Greengrass Core que se ejecutaba en un instante en un dispositivo Ubuntu dejara de responder tras un corte repentino de energía en el dispositivo.

  • Se ha corregido un problema que provocaba un retraso en la entrega de los mensajes MQTT a funciones de Lambda de larga duración.

  • Se ha corregido un problema que provocaba que los mensajes MQTT no se enviaran correctamente cuando el valor maxWorkItemCount estaba establecido en un valor superior a 1024.

  • Se ha corregido un problema que provocaba que el agente de actualización de OTA ignorara el período KeepAlive de MQTT especificado en la propiedad keepAlive en config.json.

  • Mejoras de rendimiento generales y correcciones de errores.

1.10.3

Mejoras y correcciones de errores:

  • Una propiedad systemComponentAuthTimeout nueva en config.json que se utiliza para configurar el tiempo de espera de la autenticación IPC de Greengrass core. El valor de tiempo predeterminado es 5000 milisegundos.

  • Se ha corregido un problema que provocaba que el administrador de flujos aumentara el uso de memoria.

1.10.2

Mejoras y correcciones de errores:

  • Una nueva mqttOperationTimeout propiedad en config.json que se utiliza para establecer el tiempo de espera de las operaciones de publicación, suscripción y cancelación de suscripción en las conexiones de MQTT. AWS IoT Core

  • Mejoras de rendimiento generales y correcciones de errores.

1.10.1

Mejoras y correcciones de errores:

  • El administrador de secuencias es más resistente a la corrupción de datos de archivos.

  • Se ha corregido un problema que provocaba un error de montaje de sysfs en dispositivos que utilizaban el kernel de Linux 5.1 y versiones posteriores.

  • Mejoras de rendimiento generales y correcciones de errores.

1.10.0

Nuevas características:

  • Un administrador de flujos que procesa flujos de datos localmente y los exporta automáticamente a la nube de Nube de AWS . Esta característica requiere Java 8 en el dispositivo central de Greengrass. Para obtener más información, consulte Gestione los flujos de datos en el AWS IoT Greengrass core.

  • Un nuevo conector de implementación de aplicación de Docker de Greengrass que ejecuta una aplicación Docker en un dispositivo principal. Para obtener más información, consulte Conector de implementación de aplicaciones Docker.

  • Un nuevo SiteWise conector de IoT que envía datos de dispositivos industriales desde los OPC-UA servidores a las propiedades de los activos en los que se encuentran. AWS IoT SiteWise Para obtener más información, consulte SiteWise Conector IoT.

  • Las funciones de Lambda que se ejecutan sin creación de contenedores pueden acceder a los recursos de machine learning del grupo Greengrass. Para obtener más información, consulte Acceso a recursos de machine learning desde funciones de Lamba.

  • Soporte para sesiones persistentes de MQTT con AWS IoT. Para obtener más información, consulte Sesiones persistentes de MQTT con AWS IoT Core.

  • El tráfico MQTT local puede desplazarse a través de un puerto distinto del puerto predeterminado 8883. Para obtener más información, consulte Configuración del puerto MQTT para mensajería local.

  • Nuevas opciones de queueFullPolicy en el SDK de AWS IoT Greengrass Core para la publicación de mensajes de confianza desde funciones de Lambda.

  • Soporte para ejecutar las funciones de Lambda de la versión Node.js 12.x en el núcleo.

  • Over-the-air Las actualizaciones (OTA) con integración de seguridad de hardware se pueden configurar con OpenSSL 1.1.

  • Mejoras de rendimiento generales y correcciones de errores.

1.9.4

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

1.9.3

Nuevas características:

  • Soporte para ARMv6l. AWS IoT Greengrass El software principal v1.9.3 o posterior se puede instalar en distribuciones de Raspbian en arquitecturas ARMv6L (por ejemplo, en dispositivos Raspberry Pi Zero).

  • Actualizaciones OTA en el puerto 443 con ALPN. Los núcleos de Greengrass que utilizan el puerto 443 para el tráfico de MQTT ahora admiten actualizaciones de software inalámbricas (OTA). AWS IoT Greengrass utiliza la extensión TLS de la red de protocolos de nivel de aplicación (ALPN) para habilitar estas conexiones. Para obtener más información, consulte Actualizaciones OTA de AWS IoT Greengrass Software básico y Realizar la conexión en el puerto 443 o a través de un proxy de red.

Mejoras y correcciones de errores:

  • Se ha corregido un error introducido en la versión 1.9.0 que impedía que las funciones de Lambda de Python 2.7 enviaran cargas binarias a otras funciones de Lambda.

  • Mejoras de rendimiento generales y correcciones de errores.

1.9.2

Nuevas características:

  • Soporte para. OpenWrt AWS IoT Greengrass El software principal v1.9.2 o posterior se puede instalar en OpenWrt distribuciones con arquitecturas Armv8 (AArch64) y ARMv7L. OpenWrt Actualmente, no admite la inferencia de aprendizaje automático.

1.9.1

Mejoras y correcciones de errores:

  • Corrige un error introducido en la versión 1.9.0 que elimina los mensajes de cloud que contienen caracteres comodín en el tema.

1.9.0

Nuevas características:

  • Soporte para los tiempos de ejecución Lambda de Python 3.7 y Node.js 8.10. Las funciones de Lambda que utilizan los tiempos de ejecución de Python 3.7 y Node.js 8.10 ahora pueden ejecutarse en un núcleo. AWS IoT Greengrass (AWS IoT Greengrass sigue siendo compatible con los tiempos de ejecución de Python 2.7 y Node.js 6.10).

  • Conexiones MQTT optimizadas. El núcleo de Greengrass establece menos conexiones con AWS IoT Core. Este cambio puede reducir los costos operativos de los cargos que se basan en el número de conexiones.

  • Clave Curva elíptica (EC) para el servidor MQTT local. El servidor MQTT local admite claves EC además de las claves RSA. (El certificado del servidor MQTT tiene una firma SHA-256 RSA, independientemente del tipo de clave). Para obtener más información, consulte AWS IoT Greengrass Principios básicos de seguridad.

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

1.8.4

Se ha corregido un problema con la sincronización de sombras y la reconexión del administrador de certificados de dispositivo.

Mejoras de rendimiento generales y correcciones de errores.

1.8.3

Mejoras de rendimiento generales y correcciones de errores.

1.8.2

Mejoras de rendimiento generales y correcciones de errores.

1.8.1

Mejoras de rendimiento generales y correcciones de errores.

1.8.0

Nuevas características:

  • Identidad de acceso predeterminada configurable para las funciones de Lambda del grupo. Esta configuración de nivel de grupo determina los permisos predeterminados que se utilizan para ejecutar funciones de Lambda. Puede definir el ID de usuario, el ID de grupo o ambos. Las funciones de Lambda pueden invalidar la identidad de acceso predeterminada de su grupo. Para obtener más información, consulte Configuración de la identidad de acceso predeterminada para las funciones de Lambda de un grupo.

  • Tráfico HTTPS a través del puerto 443. La comunicación HTTPS se puede configurar para la comunicación a través del puerto 443 en lugar del puerto 8443 predeterminado. Esto complementa la AWS IoT Greengrass compatibilidad con la extensión TLS de la red de protocolos de nivel de aplicación (ALPN) y permite que todo el tráfico de mensajería de Greengrass, tanto en MQTT como en HTTPS, utilice el puerto 443. Para obtener más información, consulte Realizar la conexión en el puerto 443 o a través de un proxy de red.

  • Identificadores AWS IoT de cliente con nombres predecibles para las conexiones. Este cambio proporciona compatibilidad con los AWS IoT Device Defender y eventos de ciclo de vida de AWS IoT, para que puede recibir notificaciones de eventos de conexión, desconexión, suscripción y anulación de suscripción. Los nombres predecibles también permiten crear lógica en torno a los ID de conexión (por ejemplo, crear plantillas de política de suscripción basadas en atributos del certificado). Para obtener más información, consulte ID de cliente para conexiones de MQTT con AWS IoT.

Mejoras y correcciones de errores:

  • Se ha corregido un problema con la sincronización de sombras y la reconexión del administrador de certificados de dispositivo.

  • Mejoras de rendimiento generales y correcciones de errores.

1.7.1

Nuevas características:

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

Además, las siguientes características están disponibles con esta versión:

  • El comprobador de AWS IoT dispositivos AWS IoT Greengrass, que puedes usar para comprobar que la arquitectura de la CPU, la configuración del kernel y los controladores funcionan correctamente. AWS IoT Greengrass Para obtener más información, consulte Utilización AWS IoT Probador de dispositivos para AWS IoT Greengrass V1.

  • Los paquetes de software AWS IoT Greengrass Core, AWS IoT Greengrass Core SDK y AWS IoT Greengrass Machine Learning SDK están disponibles para su descarga a través de Amazon. CloudFront Para obtener más información, consulte AWS IoT Greengrass downloads.

1.6.1

Nuevas características:

  • Los ejecutables de Lambda que ejecutan un código binario en el núcleo de Greengrass. Utilice el nuevo AWS IoT Greengrass Core SDK para C para escribir ejecutables de Lambda en C y C++. Para obtener más información, consulte Ejecutables de Lambda.

  • Opción de almacenamiento en caché local de mensajes que pueden persistir entre reinicios. Puede definir la configuración de almacenamiento para mensajes MQTT que se ponen a la cola para su procesamiento. Para obtener más información, consulte Cola de mensajes MQTT para objetivos en la nube.

  • Intervalo configurable de reintentos de reconexión máximos para cuando el dispositivo del núcleo está desconectado. Para obtener más información, consulte la propiedad mqttMaxConnectionRetryInterval en AWS IoT Greengrass archivo de configuración principal.

  • Acceso del recurso local al directorio /proc del host. Para obtener más información, consulte Acceder a recursos locales con conectores y funciones de Lambda.

  • Directorio de escritura configurable. El software AWS IoT Greengrass principal se puede implementar en ubicaciones de solo lectura y de lectura-escritura. Para obtener más información, consulte Configure un directorio de escritura para AWS IoT Greengrass.

Mejoras y correcciones de errores:

  • Se ha mejorado el rendimiento de la publicación de mensajes en el núcleo de Greengrass y entre los dispositivos y el núcleo.

  • Se han reducido los recursos de computación necesarios para procesar los registros generados por funciones de Lambda definidas por el usuario.

1.5.0

Nuevas características:

  • AWS IoT Greengrass La inferencia de aprendizaje automático (ML) está disponible de forma general. Puede llevar a cabo inferencias de aprendizaje automático localmente en los dispositivos de AWS IoT Greengrass con modelos creados y entrenados en la nube. Para obtener más información, consulte Cómo realizar la inferencia de machine learning.

  • Las funciones de Lambda de Greengrass ahora admiten datos binarios como carga de entrada, además de JSON. Para usar esta función, debes actualizar a la versión 1.1.0 del AWS IoT Greengrass Core SDK, que puedes descargar desde la página de descargas del AWS IoT Greengrass Core SDK.

Mejoras y correcciones de errores:

  • Se ha reducido la huella de memoria global.

  • Se han realizado mejoras de desempeño para enviar mensajes a la nube.

  • Se han realizado mejoras de desempeño y de estabilidad en el agente de descargas, el administrador de certificados de dispositivos y el agente de actualización OTA.

  • Correcciones de errores menores.

1.3.0

Nuevas características:

1.1.0

Nuevas características:

  • AWS IoT Greengrass Los grupos implementados se pueden restablecer eliminando las funciones, suscripciones y configuraciones de Lambda. Para obtener más información, consulte Restablecimiento de implementaciones.

  • Compatibilidad con los tiempos de ejecución de Lambda Node.js 6.10 y Java 8, además de Python 2.7.

Para migrar desde la versión anterior del núcleo: AWS IoT Greengrass

  • Copie los certificados de la carpeta /greengrass/configuration/certs en /greengrass/certs.

  • Copie /greengrass/configuration/config.json en /greengrass/config/config.json.

  • Ejecute /greengrass/ggc/core/greengrassd en lugar de /greengrass/greengrassd.

  • Implemente el grupo en el nuevo núcleo.

1.0.0

Versión inicial

AWS IoT Greengrass grupos

Un grupo de Greengrass es una colección de configuraciones y componentes, como un núcleo de Greengrass, dispositivos y suscripciones. Los grupos se utilizan para definir un ámbito de interacción. Por ejemplo, un grupo podría representar la planta de un edificio, un camión o un emplazamiento minero entero. En el siguiente diagrama se muestran los componentes que pueden componer un grupo de Greengrass.

Componentes AWS IoT Core, Greengrass y Lambda, con elementos de núcleo, configuración, funciones de Lambda, suscripciones, conectores, dispositivos y recursos interconectados.

En el diagrama anterior:

A: Definición de grupo de Greengrass

Información sobre la configuración de grupo y los componentes.

B: Configuración de grupo de Greengrass

Entre ellos se incluyen:

C: Núcleo de Greengrass

La AWS IoT cosa (dispositivo) que representa el núcleo de Greengrass. Para obtener más información, consulte Configure el AWS IoT Greengrass core.

D: Definición de la función de Lambda

Una lista de las funciones de Lambda que se ejecutan localmente en el núcleo, con datos de configuración asociados. Para obtener más información, consulte Ejecute funciones Lambda en AWS IoT Greengrass core.

E: Definición de suscripción

Una lista de suscripciones que permiten la comunicación mediante mensajes MQTT. Una suscripción define:

  • Un origen del mensaje y un destino del mensaje. Pueden ser los dispositivos cliente, las funciones de Lambda AWS IoT Core, los conectores y el servicio virtual local.

  • Un tema o asunto que se utiliza para filtrar mensajes.

Para obtener más información, consulte Suscripciones administradas en el flujo de trabajo de mensajería de MQTT.

F: definición de conector

Una lista de los conectores que se ejecutan localmente en el núcleo, con datos de configuración asociados. Para obtener más información, consulte Integración con servicios y protocolos mediante conectores de Greengrass.

G: Definición de dispositivos

Una lista de AWS IoT elementos (conocidos como dispositivos cliente o dispositivos) que son miembros del grupo Greengrass, con los datos de configuración asociados. Para obtener más información, consulte Dispositivos en AWS IoT Greengrass.

H: Definición de recursos

Una lista de los recursos locales, recursos de aprendizaje automático y recursos de secretos en el núcleo de Greengrass, con datos de configuración asociados. Para obtener más información, consulte Acceder a recursos locales con conectores y funciones de Lambda, Cómo realizar la inferencia de machine learning y Despliegue secretos en el AWS IoT Greengrass core.

Cuando se implementa, la definición del grupo de Greengrass, las funciones de Lambda, los conectores, los recursos y la tabla de suscripción se copian en el dispositivo principal. Para obtener más información, consulte Implementación AWS IoT Greengrass grupos a un AWS IoT Greengrass core.

Dispositivos en AWS IoT Greengrass

Un grupo de Greengrass puede contener dos tipos de AWS IoT dispositivos:

Núcleo de Greengrass

Un núcleo de Greengrass es un dispositivo que ejecuta el software AWS IoT Greengrass Core, lo que le permite comunicarse directamente con el AWS IoT Greengrass servicio AWS IoT Core y con él. Un núcleo tiene su propio certificado de dispositivo con el que se autentica. AWS IoT Core Tiene una sombra de dispositivo y una entrada en el AWS IoT Core registro. Los núcleos de Greengrass ejecutan un motor de ejecución local de Lambda, un agente de implementación y un rastreador de direcciones IP que envían la información de las direcciones IP al AWS IoT Greengrass servicio para que los dispositivos cliente descubran automáticamente la información de su grupo y de conexión principal. Para obtener más información, consulte Configure el AWS IoT Greengrass core.

nota

Un grupo de Greengrass debe contener exactamente un núcleo.

Dispositivo cliente

Los dispositivos cliente (también denominados dispositivos conectados, dispositivos Greengrass o dispositivos) son dispositivos que se conectan a un núcleo de Greengrass a través de MQTT. Tienen su propio certificado de dispositivo para la AWS IoT Core autenticación, una sombra de dispositivo y una entrada en el AWS IoT Core registro. Los dispositivos de cliente pueden ejecutar FreeRTOS o utilizar el SDK de AWS IoTo la API de AWS IoT Greengrass de descubrimiento para obtener la información de descubrimiento utilizada para conectarse y autenticarse con el núcleo en el mismo grupo de Greengrass. Para obtener información sobre cómo usar la AWS IoT consola para crear y configurar un dispositivo cliente AWS IoT Greengrass, consulteMódulo 4: Interactuar con los dispositivos del cliente en un AWS IoT Greengrass grupo. O bien, para ver ejemplos que muestran cómo usar la AWS CLI para crear y configurar un dispositivo cliente AWS IoT Greengrass, consulte create-device-definition en la Referencia de comandos. AWS CLI

En un grupo de Greengrass, puede crear suscripciones que permitan a los dispositivos cliente comunicarse a través de MQTT con las funciones, conectores y otros dispositivos cliente de Lambda del grupo, así como con el servicio paralelo local o con él. AWS IoT Core Los mensajes de MQTT se enrutan a través del núcleo. Si el dispositivo de núcleo pierde la conectividad con la nube, los dispositivos de cliente pueden seguir comunicándose a través de la red local. El tamaño de estos dispositivos puede variar, desde dispositivos con microcontroladores más pequeños a dispositivos más grandes. En la actualidad, un grupo de Greengrass pueden contener un máximo de 2500 dispositivos de cliente. Un dispositivo de cliente puede ser miembro de hasta 10 grupos.

nota

OPC-UA es un estándar de intercambio de información para la comunicación industrial. Para implementar el soporte OPC-UA en el núcleo de Greengrass, puede usar el SiteWise conector SiteWise Conector IoT IoT. El conector envía datos de dispositivos industriales desde los OPC-UA servidores a las propiedades de los activos en AWS IoT SiteWise.

La siguiente tabla muestra cómo se relacionan estos tipos de dispositivos.

AWS IoT Core y una matriz de capacidades de los dispositivos que muestra configuraciones como el certificado, la política de IoT o el IoT Thing compatibles tanto desde el punto de vista del núcleo como del dispositivo, con los permisos marcados como Device Gateway, Sensor/Actuator software y funciones ajenas al Grupo Greengrass.

El dispositivo AWS IoT Greengrass principal almacena los certificados en dos ubicaciones:

  • Certificado del dispositivo del núcleo en /greengrass-root/certs. Normalmente, el certificado de dispositivo del núcleo se denomina hash.cert.pem (por ejemplo, 86c84488a5.cert.pem). El AWS IoT cliente usa este certificado para la autenticación mutua cuando el núcleo se conecta a los AWS IoT Greengrass servicios AWS IoT Core y.

  • Certificado de servidor MQTT en /greengrass-root/ggc/var/state/server. El certificado del servidor MQTT se denomina server.crt. Este certificado se utiliza para la autenticación mutua entre el servidor MQTT local (en el núcleo de Greengrass) y los dispositivos Greengrass.

    nota

    greengrass-rootrepresenta la ruta en la que está instalado el software AWS IoT Greengrass Core en su dispositivo. Normalmente, este es el directorio /greengrass.

SDK

Los siguientes SDK AWS proporcionados se utilizan para trabajar con: AWS IoT Greengrass

AWS SDK

Utilice el AWS SDK para crear aplicaciones que interactúen con cualquier AWS servicio, incluidos Amazon S3, Amazon DynamoDB y muchos más. AWS IoT AWS IoT Greengrass En el contexto de AWS IoT Greengrass, puede usar el AWS SDK en las funciones de Lambda implementadas para realizar llamadas directas a cualquier servicio. AWS Para obtener más información, consulte AWS SDK.

nota

Las operaciones específicas de Greengrass que están disponibles en los AWS SDK también están disponibles en la API y. AWS IoT Greengrass AWS CLI

AWS IoT SDK del dispositivo

El SDK del AWS IoT dispositivo ayuda a los dispositivos a conectarse a y AWS IoT Core . AWS IoT Greengrass Para obtener más información, consulte la sección AWS IoT Device SDKs en la Guía para desarrolladores de AWS IoT .

Los dispositivos cliente pueden usar cualquiera de las plataformas AWS IoT Device SDK v2 para descubrir la información de conectividad de un núcleo de Greengrass. La información de conectividad incluye lo siguiente:

  • Los ID de los grupos de Greengrass a los que pertenece el dispositivo cliente.

  • Las direcciones IP del núcleo de Greengrass de cada grupo. También se denominan puntos de conexión principales.

  • El certificado de CA grupal, que los dispositivos utilizan para la autenticación mutua con el núcleo. Para obtener más información, consulte Flujo de trabajo de conexión de dispositivos.

nota

En la versión 1 de los SDK para AWS IoT dispositivos, solo las plataformas C++ y Python proporcionan soporte de detección integrado.

AWS IoT Greengrass SDK principal

El SDK AWS IoT Greengrass principal permite que las funciones de Lambda interactúen con el núcleo de Greengrass, publiquen mensajes, interactúen con el servicio paralelo local AWS IoT, invoquen otras funciones de Lambda implementadas y accedan a recursos secretos. Este SDK lo utilizan las funciones de Lambda que se ejecutan en un núcleo de AWS IoT Greengrass . Para obtener más información, consulte AWS IoT Greengrass SDK básico.

AWS IoT Greengrass SDK de aprendizaje automático

El SDK AWS IoT Greengrass de aprendizaje automático permite a las funciones de Lambda consumir modelos de aprendizaje automático que se implementan en el núcleo de Greengrass como recursos de aprendizaje automático. Este SDK lo utilizan las funciones de Lambda que se ejecutan en un AWS IoT Greengrass núcleo e interactúan con un servicio de inferencia local. Para obtener más información, consulte AWS IoT Greengrass SDK de Machine Learning.

Plataformas compatibles y requisitos

En las siguientes pestañas se enumeran las plataformas compatibles y los requisitos del AWS IoT Greengrass software principal.

nota

Puede descargar el software AWS IoT Greengrass principal desde la sección de descargas del software AWS IoT Greengrass principal.

GGC v1.11

Plataformas admitidas:

  • Arquitectura: Armv7l

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Arquitectura: Armv8 (AArch64)

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Arquitectura: Armv6l

    • Sistema operativo: Linux

  • Arquitectura: x86_64

    • Sistema operativo: Linux

  • Las plataformas Windows, macOS y Linux pueden ejecutarse AWS IoT Greengrass en un contenedor Docker. Para obtener más información, consulte Ejecutar AWS IoT Greengrass en un contenedor Docker.

Requisitos:

  • Hay un mínimo de 128 MB de espacio en disco disponible para el software AWS IoT Greengrass Core. Si utiliza el agente de actualización OTA, el mínimo es de 400 MB.

  • Se asignan un mínimo de 128 MB de RAM al software AWS IoT Greengrass Core. Con el administrador de secuencias habilitado, el mínimo es 198 MB de RAM.

    nota

    El gestor de transmisiones está activado de forma predeterminada si utilizas la opción de creación de grupos predeterminados de la AWS IoT consola para crear tu grupo de Greengrass.

  • Versión del kernel de Linux:

  • Biblioteca C de GNU (glibc), versión 2.14 o posterior. OpenWrt las distribuciones requieren la versión 1.1.16 o posterior de la biblioteca C de Musl.

  • El directorio /var/run debe existir en el dispositivo.

  • Los archivos /dev/stderr, /dev/stdin y /dev/stdout deben estar disponibles.

  • La protección de enlaces permanentes y simbólicos debe estar habilitada en el dispositivo. De lo contrario, solo se AWS IoT Greengrass puede ejecutar en modo inseguro, utilizando la bandera. -i

  • Las siguientes configuraciones de kernel de Linux deben estar habilitado en el dispositivo:

    • Espacio de nombres:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Grupos de control:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      El kernel debe admitir los grupos de control. Cuando se ejecuta AWS IoT Greengrass con contenedores, se aplican los siguientes requisitos:

      • El grupo de control (cgroup) de memoria debe estar habilitado y montado para permitir que AWS IoT Greengrass establezca el límite de memoria para las funciones de Lambda.

      • El cgroup del dispositivo debe estar habilitado y montado si se utilizan funciones de Lambda con acceso a recursos locales para abrir archivos en el dispositivo AWS IoT Greengrass principal.

    • Otros:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • El certificado raíz de Amazon S3 AWS IoT debe estar presente en el almacén de confianza del sistema.

  • Stream Manager requiere el tiempo de ejecución de Java 8 y un mínimo de 70 MB de RAM, además del requisito básico de memoria del software AWS IoT Greengrass Core. El gestor de transmisiones está activado de forma predeterminada cuando utilizas la opción de creación de grupos predeterminados en la AWS IoT consola. El administrador de transmisiones no es compatible con las OpenWrt distribuciones.

  • Las bibliotecas que admiten el tiempo de ejecución de AWS Lambda requerido por las funciones de Lambda que desea ejecutar localmente. Las bibliotecas necesarias deben instalarse en el núcleo y agregarse a la variable de entorno PATH. Pueden instalarse varias bibliotecas en el mismo núcleo.

    • Consulte la versión 3.8 de Python para ver las funciones que utilizan el tiempo de ejecución Python 3.8.

    • Consulte Python versión 3.7 para ver las funciones que utilizan el tiempo de ejecución Python 3.7.

    • Consulte Python versión 2.7 para ver las funciones que utilizan el tiempo de ejecución Python 2.7.

    • Node.jsversión 12.x para funciones que utilizan el tiempo de ejecución Node.js 12.x.

    • Consulte Java versión 8 o posterior para ver las funciones que utilizan el runtime Java 8.

      nota

      No se admite oficialmente la ejecución de Java en una OpenWrt distribución. Sin embargo, si tu OpenWrt compilación es compatible con Java, es posible que puedas ejecutar funciones de Lambda creadas en Java en tus OpenWrt dispositivos.

      Para obtener más información sobre la AWS IoT Greengrass compatibilidad con los tiempos de ejecución de Lambda, consulte. Ejecute funciones Lambda en AWS IoT Greengrass core

  • El agente de actualización inalámbrica (OTA) requiere los siguientes comandos de shell (no las BusyBox variantes):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.10

Plataformas admitidas:

  • Arquitectura: Armv7l

    • Sistema operativo: Linux

    • Sistema operativo: Linux () OpenWrt

  • Arquitectura: Armv8 (AArch64)

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Arquitectura: Armv6l

    • Sistema operativo: Linux

  • Arquitectura: x86_64

    • Sistema operativo: Linux

  • Las plataformas Windows, macOS y Linux pueden ejecutarse AWS IoT Greengrass en un contenedor Docker. Para obtener más información, consulte Ejecutar AWS IoT Greengrass en un contenedor Docker.

Requisitos:

  • Hay un mínimo de 128 MB de espacio en disco disponible para el software AWS IoT Greengrass Core. Si utiliza el agente de actualización OTA, el mínimo es de 400 MB.

  • Se asignan un mínimo de 128 MB de RAM al software AWS IoT Greengrass Core. Con el administrador de secuencias habilitado, el mínimo es 198 MB de RAM.

    nota

    El gestor de transmisiones está activado de forma predeterminada si utilizas la opción de creación de grupos predeterminados de la AWS IoT consola para crear tu grupo de Greengrass.

  • Versión del kernel de Linux:

  • Biblioteca C de GNU (glibc), versión 2.14 o posterior. OpenWrt las distribuciones requieren la versión 1.1.16 o posterior de la biblioteca C de Musl.

  • El directorio /var/run debe existir en el dispositivo.

  • Los archivos /dev/stderr, /dev/stdin y /dev/stdout deben estar disponibles.

  • La protección de enlaces permanentes y simbólicos debe estar habilitada en el dispositivo. De lo contrario, solo se AWS IoT Greengrass puede ejecutar en modo inseguro, utilizando la bandera. -i

  • Las siguientes configuraciones de kernel de Linux deben estar habilitado en el dispositivo:

    • Espacio de nombres:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Grupos de control:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      El kernel debe admitir los grupos de control. Cuando se ejecuta AWS IoT Greengrass con contenedores, se aplican los siguientes requisitos:

      • El grupo de control (cgroup) de memoria debe estar habilitado y montado para permitir que AWS IoT Greengrass establezca el límite de memoria para las funciones de Lambda.

      • El cgroup del dispositivo debe estar habilitado y montado si se utilizan funciones de Lambda con acceso a recursos locales para abrir archivos en el dispositivo AWS IoT Greengrass principal.

    • Otros:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • El certificado raíz de Amazon S3 AWS IoT debe estar presente en el almacén de confianza del sistema.

  • Stream Manager requiere el tiempo de ejecución de Java 8 y un mínimo de 70 MB de RAM, además del requisito básico de memoria del software AWS IoT Greengrass Core. El gestor de transmisiones está activado de forma predeterminada cuando utilizas la opción de creación de grupos predeterminados en la AWS IoT consola. El administrador de transmisiones no es compatible con las OpenWrt distribuciones.

  • Las bibliotecas que admiten el tiempo de ejecución de AWS Lambda requerido por las funciones de Lambda que desea ejecutar localmente. Las bibliotecas necesarias deben instalarse en el núcleo y agregarse a la variable de entorno PATH. Pueden instalarse varias bibliotecas en el mismo núcleo.

    • Consulte Python versión 3.7 para ver las funciones que utilizan el tiempo de ejecución Python 3.7.

    • Consulte Python versión 2.7 para ver las funciones que utilizan el tiempo de ejecución Python 2.7.

    • Node.jsversión 12.x para funciones que utilizan el tiempo de ejecución Node.js 12.x.

    • Consulte Java versión 8 o posterior para ver las funciones que utilizan el runtime Java 8.

      nota

      No se admite oficialmente la ejecución de Java en una OpenWrt distribución. Sin embargo, si tu OpenWrt compilación es compatible con Java, es posible que puedas ejecutar funciones de Lambda creadas en Java en tus OpenWrt dispositivos.

      Para obtener más información sobre la AWS IoT Greengrass compatibilidad con los tiempos de ejecución de Lambda, consulte. Ejecute funciones Lambda en AWS IoT Greengrass core

  • El agente de actualización inalámbrica (OTA) requiere los siguientes comandos de shell (no las BusyBox variantes):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.9

Plataformas admitidas:

  • Arquitectura: Armv7l

    • Sistema operativo: Linux

    • Sistema operativo: Linux () OpenWrt

  • Arquitectura: Armv8 (AArch64)

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Arquitectura: Armv6l

    • Sistema operativo: Linux

  • Arquitectura: x86_64

    • Sistema operativo: Linux

  • Las plataformas Windows, macOS y Linux pueden ejecutarse AWS IoT Greengrass en un contenedor Docker. Para obtener más información, consulte Ejecutar AWS IoT Greengrass en un contenedor Docker.

Requisitos:

  • Hay un mínimo de 128 MB de espacio en disco disponible para el software AWS IoT Greengrass Core. Si utiliza el agente de actualización OTA, el mínimo es de 400 MB.

  • Se asignan un mínimo de 128 MB de RAM al software AWS IoT Greengrass Core.

  • Versión del kernel de Linux:

  • Biblioteca C de GNU (glibc), versión 2.14 o posterior. OpenWrt las distribuciones requieren la versión 1.1.16 o posterior de la biblioteca C de Musl.

  • El directorio /var/run debe existir en el dispositivo.

  • Los archivos /dev/stderr, /dev/stdin y /dev/stdout deben estar disponibles.

  • La protección de enlaces permanentes y simbólicos debe estar habilitada en el dispositivo. De lo contrario, solo se AWS IoT Greengrass puede ejecutar en modo inseguro, utilizando la bandera. -i

  • Las siguientes configuraciones de kernel de Linux deben estar habilitado en el dispositivo:

    • Espacio de nombres:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Grupos de control:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      El kernel debe admitir los grupos de control. Cuando se ejecuta AWS IoT Greengrass con contenedores, se aplican los siguientes requisitos:

      • El grupo de control (cgroup) de memoria debe estar habilitado y montado para permitir que AWS IoT Greengrass establezca el límite de memoria para las funciones de Lambda.

      • El cgroup del dispositivo debe estar habilitado y montado si se utilizan funciones de Lambda con acceso a recursos locales para abrir archivos en el dispositivo AWS IoT Greengrass principal.

    • Otros:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • El certificado raíz de Amazon S3 AWS IoT debe estar presente en el almacén de confianza del sistema.

  • Las bibliotecas que admiten el tiempo de ejecución de AWS Lambda requerido por las funciones de Lambda que desea ejecutar localmente. Las bibliotecas necesarias deben instalarse en el núcleo y agregarse a la variable de entorno PATH. Pueden instalarse varias bibliotecas en el mismo núcleo.

    • Consulte Python versión 2.7 para ver las funciones que utilizan el tiempo de ejecución Python 2.7.

    • Consulte Python versión 3.7 para ver las funciones que utilizan el tiempo de ejecución Python 3.7.

    • Node.jsversión 6.10 o posterior para las funciones que utilizan el tiempo de ejecución Node.js 6.10.

    • Node.jsversión 8.10 o posterior para las funciones que utilizan el tiempo de ejecución 8.10. Node.js

    • Consulte Java versión 8 o posterior para ver las funciones que utilizan el runtime Java 8.

      nota

      No se admite oficialmente la ejecución de Java en una OpenWrt distribución. Sin embargo, si tu OpenWrt compilación es compatible con Java, es posible que puedas ejecutar funciones de Lambda creadas en Java en tus OpenWrt dispositivos.

      Para obtener más información sobre la AWS IoT Greengrass compatibilidad con los tiempos de ejecución de Lambda, consulte. Ejecute funciones Lambda en AWS IoT Greengrass core

  • El agente de actualización inalámbrica (OTA) requiere los siguientes comandos de shell (no las BusyBox variantes):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

GGC v1.8
  • Plataformas admitidas:

    • Arquitectura: ARMv7l; SO: Linux.

    • Arquitectura: x86_64; SO: Linux.

    • Arquitectura: Armv8 (AArch64); OS: Linux

    • Las plataformas Windows, macOS y Linux pueden ejecutarse AWS IoT Greengrass en un contenedor Docker. Para obtener más información, consulte Ejecutar AWS IoT Greengrass en un contenedor Docker.

    • Las plataformas Linux pueden ejecutar una versión de AWS IoT Greengrass con funcionalidad limitada mediante el SnapSnap de Greengrass, que está disponible a través de Snapcraft. Para obtener más información, consulte AWS IoT Greengrass software snap.

  • Se requieren los elementos siguientes:

    • Hay un mínimo de 128 MB de espacio en disco disponible para el software AWS IoT Greengrass Core. Si utiliza el agente de actualización OTA, el mínimo es de 400 MB.

    • Se asignan un mínimo de 128 MB de RAM al software AWS IoT Greengrass Core.

    • Versión del kernel de Linux:

    • Biblioteca de C de GNU (glibc) versión 2.14 o posterior.

    • El directorio /var/run debe existir en el dispositivo.

    • Los archivos /dev/stderr, /dev/stdin y /dev/stdout deben estar disponibles.

    • La protección de enlaces permanentes y simbólicos debe estar habilitada en el dispositivo. De lo contrario, solo se AWS IoT Greengrass puede ejecutar en modo inseguro, utilizando la -i bandera.

    • Las siguientes configuraciones de kernel de Linux deben estar habilitado en el dispositivo:

      • Espacio de nombres:

        • CONFIG_IPC_NS

        • CONFIG_UTS_NS

        • CONFIG_USER_NS

        • CONFIG_PID_NS

      • Grupos de control:

        • CONFIG_CGROUP_DEVICE

        • CONFIG_CGROUPS

        • CONFIG_MEMCG

        El kernel debe admitir los grupos de control. Cuando se ejecuta AWS IoT Greengrass con contenedores, se aplican los siguientes requisitos:

        • El grupo de control (cgroup) de memoria debe estar habilitado y montado para permitir que AWS IoT Greengrass establezca el límite de memoria para las funciones de Lambda.

        • El cgroup del dispositivo debe estar habilitado y montado si se utilizan funciones de Lambda con acceso a recursos locales para abrir archivos en el dispositivo AWS IoT Greengrass principal.

      • Otros:

        • CONFIG_POSIX_MQUEUE

        • CONFIG_OVERLAY_FS

        • CONFIG_HAVE_ARCH_SECCOMP_FILTER

        • CONFIG_SECCOMP_FILTER

        • CONFIG_KEYS

        • CONFIG_SECCOMP

        • CONFIG_SHMEM

    • El certificado raíz de Amazon S3 AWS IoT debe estar presente en el almacén de confianza del sistema.

  • Los elementos siguientes son obligatorios:

    • Las bibliotecas que admiten el tiempo de ejecución de AWS Lambda requerido por las funciones de Lambda que desea ejecutar localmente. Las bibliotecas necesarias deben instalarse en el núcleo y agregarse a la variable de entorno PATH. Pueden instalarse varias bibliotecas en el mismo núcleo.

      • Consulte Python versión 2.7 para ver las funciones que utilizan el tiempo de ejecución Python 2.7.

      • Node.jsversión 6.10 o posterior para las funciones que utilizan el tiempo de ejecución Node.js 6.10.

      • Consulte Java versión 8 o posterior para ver las funciones que utilizan el runtime Java 8.

    • El agente de actualización inalámbrica (OTA) requiere los siguientes comandos de shell (no las BusyBox variantes):

      • wget

      • realpath

      • tar

      • readlink

      • basename

      • dirname

      • pidof

      • df

      • grep

      • umount

      • mv

      • gzip

      • mkdir

      • rm

      • ln

      • cut

      • cat

Para obtener información sobre AWS IoT Greengrass las cuotas (límites), consulte las cuotas de servicio en. Referencia general de Amazon Web Services

Para obtener información sobre precios, consulte Precios de AWS IoT Greengrass y Precios de AWS IoT Core.

AWS IoT Greengrass downloads

Puede utilizar la información siguiente para buscar y descargar software para utilizarlo con AWS IoT Greengrass.

AWS IoT Greengrass Software principal

El software AWS IoT Greengrass Core amplía la AWS funcionalidad a un dispositivo AWS IoT Greengrass central, lo que hace posible que los dispositivos locales actúen localmente en función de los datos que generan.

v1.11
1.11.6

Mejoras y correcciones de errores:

  • Resiliencia mejorada en caso de que se produzca una pérdida repentina de energía durante una implementación.

  • Se ha corregido un problema por el que la corrupción de los datos del administrador de transmisiones podía impedir que se AWS IoT Greengrass iniciara el software Core.

  • Se ha corregido un problema que provocaba que los nuevos dispositivos cliente no se pudieran conectar al núcleo en determinadas situaciones.

  • Se ha corregido un error que provocaba que los nombres de los flujos del administrador de flujos no pudieran contener .log.

1.11.5

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

1.11.4

Mejoras y correcciones de errores:

  • Se ha corregido un problema con el gestor de transmisiones que impedía actualizar a la versión 1.11.3 AWS IoT Greengrass del software Core. Si utilizas Stream Manager para exportar datos a la nube, ahora puedes usar una actualización OTA para actualizar una versión anterior v1.x del software Core a la AWS IoT Greengrass v1.11.4.

  • Mejoras de rendimiento generales y correcciones de errores.

1.11.3

Mejoras y correcciones de errores:

  • Se ha corregido un problema que provocaba que el software AWS IoT Greengrass Core que se ejecutaba en un instante en un dispositivo Ubuntu dejara de responder tras un corte repentino de energía en el dispositivo.

  • Se ha corregido un problema que provocaba un retraso en la entrega de los mensajes MQTT a funciones de Lambda de larga duración.

  • Se ha corregido un problema que provocaba que los mensajes MQTT no se enviaran correctamente cuando el valor maxWorkItemCount estaba establecido en un valor superior a 1024.

  • Se ha corregido un problema que provocaba que el agente de actualización de OTA ignorara el período KeepAlive de MQTT especificado en la propiedad keepAlive en config.json.

  • Mejoras de rendimiento generales y correcciones de errores.

importante

Si utilizas Stream Manager para exportar datos a la nube, no actualices la versión 1.11.3 del software AWS IoT Greengrass Core desde una versión anterior a la v1.x. Si es la primera vez que habilitas el administrador de transmisiones, te recomendamos encarecidamente que instales primero la versión más reciente del software Core. AWS IoT Greengrass

1.11.1

Mejoras y correcciones de errores:

  • Se ha corregido un problema que provocaba que el administrador de flujos aumentara el uso de memoria.

  • Se ha corregido un problema que provocaba que el administrador de flujos restableciera el número de secuencia del flujo a 0 si el dispositivo principal de Greengrass estaba apagado durante más tiempo que el tiempo de vida (TTL) especificado de los datos del flujo.

  • Se ha corregido un problema que impedía que el administrador de flujos detuviera correctamente los reintentos de exportación de datos al Nube de AWS.

1.11.0

Nuevas características:

  • Un agente de telemetría del núcleo de Greengrass recopila datos de telemetría locales y los publica en. Nube de AWS Para recuperar los datos de telemetría para su posterior procesamiento, los clientes pueden crear una regla de Amazon EventBridge y suscribirse a un objetivo. Para obtener más información, consulta Cómo recopilar datos de telemetría sobre el estado del sistema desde los dispositivos principales. AWS IoT Greengrass

  • Una API HTTP local devuelve una instantánea del estado actual de los procesos de trabajo locales iniciados por. AWS IoT Greengrass Para obtener más información, consulte Llamadas a la API de comprobación de estado local.

  • Un administrador de transmisiones exporta automáticamente los datos a Amazon S3 y AWS IoT SiteWise.

    Los nuevos parámetros del administrador de flujos le permiten actualizar las transmisiones existentes y pausar o reanudar la exportación de datos.

  • Compatibilidad para ejecutar funciones Lambda de Python 3.8.x en el dispositivo principal.

  • Una nueva propiedad ggDaemonPort en config.json que se usa para configurar el número de puerto IPC de Greengrass core. El número de puerto predeterminado es 8000.

    Una propiedad systemComponentAuthTimeout nueva en config.json que se utiliza para configurar el tiempo de espera de la autenticación IPC de Greengrass core. El valor de tiempo predeterminado es 5000 milisegundos.

  • Se aumentó la cantidad máxima de AWS IoT dispositivos por AWS IoT Greengrass grupo de 200 a 2500.

    Se aumentó el número máximo de suscripciones por grupo de 1000 a 10 000.

    Para obtener más información, consulte Puntos de conexión y cuotas de AWS IoT Greengrass.

Mejoras y correcciones de errores:

  • Optimización general que puede reducir la utilización de memoria de los procesos de servicio de Greengrass.

  • Un nuevo parámetro de configuración del tiempo de ejecución (mountAllBlockDevices) permite a Greengrass utilizar los montajes de enlace para montar todos los dispositivos de bloques en un contenedor después de configurar el OverlayFS. Esta característica resolvió un problema que provocaba un error en la implementación de Greengrass si /usr no estaba por debajo de la jerarquía /.

  • Se ha corregido un problema que provocaba una falla en el AWS IoT Greengrass núcleo si /tmp se trataba de un enlace simbólico.

  • Se ha corregido un error para permitir que el agente de implementación de Greengrass elimine de la carpeta los artefactos del modelo de machine learning no utilizados. mlmodel_public

  • Mejoras de rendimiento generales y correcciones de errores.

Para instalar el software AWS IoT Greengrass Core en tu dispositivo principal, descarga el paquete para tu arquitectura y sistema operativo (SO) y, a continuación, sigue los pasos de la Guía de inicio.

sugerencia

AWS IoT Greengrass también ofrece otras opciones para instalar el software AWS IoT Greengrass Core. Por ejemplo, puede usar la configuración del dispositivo Greengrass para configurar su entorno e instalar la versión más reciente del software AWS IoT Greengrass Core. O bien, en las plataformas Debian compatibles, puede usar el administrador de paquetes APT para instalar o actualizar el software AWS IoT Greengrass Core. Para obtener más información, consulte Instala la   AWS IoT Greengrass Software principal.

Arquitectura

Sistema operativo

Link

Armv8 (AArch64)

Linux

Download

Armv8 (AArch64)

Linux () OpenWrt

Download

Armv7l

Linux

Download

Armv7l

Linux (OpenWrt)

Download

Armv6l

Linux

Descargar

x86_64

Linux

Download

Extended life versions
1.10.5

Nuevas características en v1.10:

Mejoras y correcciones de errores:

  • Over-the-air Las actualizaciones (OTA) con integración de seguridad de hardware se pueden configurar con OpenSSL 1.1.

  • El administrador de secuencias es más resistente a la corrupción de datos de archivos.

  • Se ha corregido un problema que provocaba un error de montaje de sysfs en dispositivos que utilizaban el kernel de Linux 5.1 y versiones posteriores.

  • Una nueva mqttOperationTimeout propiedad en config.json que se usa para establecer el tiempo de espera para las operaciones de publicación, suscripción y cancelación de suscripción en las conexiones de MQTT. AWS IoT Core

  • Se ha corregido un problema que provocaba que el administrador de flujos aumentara el uso de memoria.

  • Una propiedad systemComponentAuthTimeout nueva en config.json que se utiliza para configurar el tiempo de espera de la autenticación IPC de Greengrass core. El valor de tiempo predeterminado es 5000 milisegundos.

  • Se ha corregido un problema que provocaba que el agente de actualización de OTA ignorara el período KeepAlive de MQTT especificado en la propiedad keepAlive en config.json.

  • Se ha corregido un problema que provocaba que los mensajes MQTT no se enviaran correctamente cuando el valor maxWorkItemCount estaba establecido en un valor superior a 1024.

  • Se ha corregido un problema que provocaba un retraso en la entrega de los mensajes MQTT a funciones de Lambda de larga duración.

  • Se ha corregido un problema que provocaba que el software AWS IoT Greengrass principal que se ejecutaba en un instante en un dispositivo Ubuntu dejara de responder tras un corte repentino de energía en el dispositivo.

  • Mejoras de rendimiento generales y correcciones de errores.

Para instalar el software AWS IoT Greengrass Core en tu dispositivo principal, descarga el paquete para tu arquitectura y sistema operativo (SO) y, a continuación, sigue los pasos de la Guía de inicio.

Arquitectura

Sistema operativo

Link

Armv8 (AArch64)

Linux

Download

Armv8 (AArch64)

Linux (OpenWrt)

Download

Armv7l

Linux

Download

Armv7l

Linux (OpenWrt)

Download

Armv6l

Linux

Descargar

x86_64

Linux

Download

1.9.4

Nuevas características en v1.9:

  • Soporte para los tiempos de ejecución Lambda de Python 3.7 y Node.js 8.10. Las funciones de Lambda que utilizan los tiempos de ejecución de Python 3.7 y Node.js 8.10 ahora pueden ejecutarse en un núcleo. AWS IoT Greengrass (AWS IoT Greengrass sigue siendo compatible con los tiempos de ejecución de Python 2.7 y Node.js 6.10).

  • Conexiones MQTT optimizadas. El núcleo de Greengrass establece menos conexiones con AWS IoT Core. Este cambio puede reducir los costos operativos de los cargos que se basan en el número de conexiones.

  • Clave Curva elíptica (EC) para el servidor MQTT local. El servidor MQTT local admite claves EC además de las claves RSA. (El certificado del servidor MQTT tiene una firma SHA-256 RSA, independientemente del tipo de clave). Para obtener más información, consulte AWS IoT Greengrass Principios básicos de seguridad.

  • Soporte para. OpenWrt AWS IoT Greengrass El software principal v1.9.2 o posterior se puede instalar en OpenWrt distribuciones con arquitecturas Armv8 (AArch64) y ARMv7L. OpenWrt Actualmente, no admite la inferencia de aprendizaje automático.

  • Soporte para ARMv6l. AWS IoT Greengrass El software principal v1.9.3 o posterior se puede instalar en distribuciones de Raspbian en arquitecturas ARMv6L (por ejemplo, en dispositivos Raspberry Pi Zero).

  • Actualizaciones OTA en el puerto 443 con ALPN. Los núcleos de Greengrass que utilizan el puerto 443 para el tráfico de MQTT ahora admiten actualizaciones de software inalámbricas (OTA). AWS IoT Greengrass utiliza la extensión TLS de la red de protocolos de nivel de aplicación (ALPN) para habilitar estas conexiones. Para obtener más información, consulte Actualizaciones OTA de AWS IoT Greengrass Software básico y Realizar la conexión en el puerto 443 o a través de un proxy de red.

Para instalar el software AWS IoT Greengrass Core en su dispositivo principal, descargue el paquete para su arquitectura y sistema operativo (SO) y, a continuación, siga los pasos de la Guía de inicio. Introducción al AWS IoT Greengrass

Arquitectura

Sistema operativo

Link

Armv8 (AArch64)

Linux

Download

Armv8 (AArch64)

Linux (OpenWrt)

Download

Armv7l

Linux

Download

Armv7l

Linux (OpenWrt)

Download

Armv6l

Linux

Descargar

x86_64

Linux

Download

1.8.4
  • Nuevas características:

    • Identidad de acceso predeterminada configurable para las funciones de Lambda del grupo. Esta configuración de nivel de grupo determina los permisos predeterminados que se utilizan para ejecutar funciones de Lambda. Puede definir el ID de usuario, el ID de grupo o ambos. Las funciones de Lambda pueden invalidar la identidad de acceso predeterminada de su grupo. Para obtener más información, consulte Configuración de la identidad de acceso predeterminada para las funciones de Lambda de un grupo.

    • Tráfico HTTPS a través del puerto 443. La comunicación HTTPS se puede configurar para la comunicación a través del puerto 443 en lugar del puerto 8443 predeterminado. Esto complementa la AWS IoT Greengrass compatibilidad con la extensión TLS de la red de protocolos de capa de aplicaciones (ALPN) y permite que todo el tráfico de mensajería de Greengrass, tanto en MQTT como en HTTPS, utilice el puerto 443. Para obtener más información, consulte Realizar la conexión en el puerto 443 o a través de un proxy de red.

    • Identificadores AWS IoT de cliente con nombres predecibles para las conexiones. Este cambio proporciona compatibilidad con los AWS IoT Device Defender y eventos de ciclo de vida de AWS IoT, para que puede recibir notificaciones de eventos de conexión, desconexión, suscripción y anulación de suscripción. Los nombres predecibles también permiten crear lógica en torno a los ID de conexión (por ejemplo, crear plantillas de política de suscripción basadas en atributos del certificado). Para obtener más información, consulte ID de cliente para conexiones de MQTT con AWS IoT.

    Mejoras y correcciones de errores:

    • Se ha corregido un problema con la sincronización de sombras y la reconexión del administrador de certificados de dispositivo.

    • Mejoras de rendimiento generales y correcciones de errores.

Para instalar el software AWS IoT Greengrass Core en su dispositivo principal, descargue el paquete para su arquitectura y sistema operativo (SO) y, a continuación, siga los pasos de la Guía de inicio.

Arquitectura

Sistema operativo

Link

Armv8 (AArch64)

Linux

Download

Armv7l

Linux

Descargar

x86_64

Linux

Download

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

Para obtener información sobre otras opciones para instalar el software AWS IoT Greengrass Core en su dispositivo, consulteInstala la   AWS IoT Greengrass Software principal.

 

AWS IoT Greengrass software snap

AWS IoT Greengrass snap 1.11.x le permite ejecutar una versión limitada de AWS IoT Greengrass mediante prácticos paquetes de software, junto con todas las dependencias necesarias, en un entorno contenedorizado.

nota

El AWS IoT Greengrass snap está disponible para la versión 1.11.x del software Core. AWS IoT Greengrass AWS IoT Greengrass no proporciona una instantánea para la versión 1.10.x. Las versiones que no son compatibles no reciben actualizaciones ni correcciones de errores.

El AWS IoT Greengrass snap no admite conectores ni inferencias de aprendizaje automático (ML).

Para obtener más información, consulte Ejecutar AWS IoT Greengrass en un instante.

 

AWS IoT Greengrass Software Docker

AWS proporciona un Dockerfile e imágenes de Docker que facilitan su ejecución AWS IoT Greengrass en un contenedor Docker.

Dockerfile

Los Dockerfiles contienen código fuente para crear imágenes de contenedores personalizadas. AWS IoT Greengrass Las imágenes se pueden modificar para ejecutarlas en arquitecturas de plataforma distintas o para reducir su tamaño. Consulte el archivo README para obtener instrucciones.

Descargue la versión de software AWS IoT Greengrass Core de destino.

v1.11
Extended life versions

 

Imagen de Docker

Las imágenes de Docker tienen el software AWS IoT Greengrass principal y las dependencias instaladas en las imágenes base de Amazon Linux 2 (x86_64) y Alpine Linux (x86_64, ARMv7L o AArch64). Puede usar imágenes prediseñadas para comenzar a experimentar con AWS IoT Greengrass.

importante

El 30 de junio de 2022, AWS IoT Greengrass finalizó el mantenimiento de las imágenes Docker de la versión 1.x del software AWS IoT Greengrass principal que se publican en Amazon Elastic Container Registry (Amazon ECR) y Docker Hub. Puede seguir descargando estas imágenes de Docker desde Amazon ECR y Docker Hub hasta el 30 de junio de 2023, es decir, un año después de que finalice el mantenimiento. Sin embargo, las imágenes de Docker v1.x del software AWS IoT Greengrass Core ya no reciben parches de seguridad ni correcciones de errores una vez finalizado el mantenimiento el 30 de junio de 2022. Si ejecutas una carga de trabajo de producción que depende de estas imágenes de Docker, te recomendamos que crees tus propias imágenes de Docker con los archivos de Docker que se proporcionan. AWS IoT Greengrass Para obtener más información, consulte AWS IoT Greengrass Version 1 política de mantenimiento.

Descargue una imagen prediseñada de Docker Hub o Amazon Elastic Container Registry (Amazon ECR).

  • En el caso de Docker Hub, utilice la version etiqueta para descargar una versión específica de la imagen de Docker de Greengrass. Para buscar etiquetas para todas las imágenes disponibles, consulte la página Tags (Etiquetas) en Docker Hub.

  • En el caso de Amazon ECR, utilice la etiqueta latest para descargar la última versión disponible de la imagen de Docker de Greengrass. Para obtener más información sobre la publicación de las versiones de imágenes disponibles y la descarga de imágenes de Amazon ECR, consulte Ejecutar AWS IoT Greengrass en un contenedor Docker.

aviso

A partir de la versión 1.11.6 del software AWS IoT Greengrass Core, las imágenes de Docker de Greengrass ya no incluyen Python 2.7, porque Python 2.7 llegó al final de su ciclo de vida útil en 2020 y ya no recibe actualizaciones de seguridad. Si decide actualizar a estas imágenes de Docker, le recomendamos que compruebe que sus aplicaciones funcionan con las nuevas imágenes de Docker antes de implementar las actualizaciones en los dispositivos de producción. Si necesita Python 2.7 para su aplicación que usa una imagen de Docker de Greengrass, puede modificar el Dockerfile de Greengrass para incluir Python 2.7 en su aplicación.

AWS IoT Greengrass no proporciona imágenes de Docker para la versión 1.11.1 del software Core. AWS IoT Greengrass

nota

De forma predeterminada, alpine-armv7l las imágenes alpine-aarch64 solo se pueden ejecutar en los hosts. Arm-based Para ejecutar estas imágenes en un host x86, puede instalar QEMU y montar las bibliotecas QEMU en el host. Por ejemplo:

docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

 

AWS IoT Greengrass SDK básico

Las funciones de Lambda utilizan el SDK AWS IoT Greengrass principal para interactuar con el AWS IoT Greengrass núcleo de forma local. Esto permite a las funciones de Lambda implementadas:

  • Intercambia mensajes de MQTT con. AWS IoT Core

  • Intercambiar mensajes MQTT con conectores, dispositivos de cliente y otras funciones de Lambda en el grupo de Greengrass.

  • Interactuar con el servicio de sombra local.

  • Invocar otras funciones de Lambda locales.

  • Tener acceso a recursos de secretos.

  • Interactuar con el administrador de secuencias.

Descargue el SDK AWS IoT Greengrass principal para su idioma o plataforma desde. GitHub

Para obtener más información, consulte AWS IoT Greengrass SDK básico.

 

Bibliotecas y entornos de ejecución de aprendizaje automático compatibles

Para realizar la inferencia en un núcleo de Greengrass, debe instalar la biblioteca o el entorno de ejecución de aprendizaje automático apropiados para el tipo de modelo de aprendizaje automático.

AWS IoT Greengrass admite los siguientes tipos de modelos ML. Utilice estos vínculos para buscar información acerca de cómo instalar la biblioteca o el entorno de ejecución apropiados para el tipo de modelo y la plataforma del dispositivo.

Ejemplos de aprendizaje automático

AWS IoT Greengrass proporciona ejemplos que puede usar con bibliotecas y tiempos de ejecución de ML compatibles. Estos ejemplos se publican bajo el contrato de licencia de software de Greengrass Core.

Deep learning runtime (DLR)

Descargue el ejemplo apropiado para la plataforma de su dispositivo:

Para ver un tutorial en el que se utiliza el ejemplo de DLR, consulte Cómo configurar la inferencia de aprendizaje automático optimizada mediante el Consola de administración de AWS.

MXNet

Descargue el ejemplo apropiado para la plataforma de su dispositivo:

Para ver un tutorial en el que se utiliza el ejemplo de MXNet, consulte Cómo configurar la inferencia de aprendizaje automático mediante el Consola de administración de AWS.

TensorFlow

Descargue el ejemplo de Tensorflow para la plataforma de su dispositivo. Este ejemplo funciona con Raspberry Pi, NVIDIA Jetson TX2 e Intel Atom.

 

AWS IoT Greengrass Software ML SDK

AWS IoT Greengrass SDK de Machine Learning permite que las funciones de Lambda que autorice consuman un modelo de machine learning local y envíen datos al conector ML Feedback para cargarlos y publicarlos.

v1.1.0
v1.0.0

Esperamos tener noticias suyas

Agradecemos sus comentarios. Para contactarnos, visite AWS re:Post y use la etiqueta AWS IoT Greengrass.