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

Está viendo la documentación deAWS IoT Greengrass Version 1.AWS IoT Greengrass Version 2es la última versión principal deAWS IoT Greengrass. Para obtener más información acerca del uso deAWS IoT Greengrass V2, consulte laAWS IoT Greengrass Version 2Guía para desarrolladores.

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 funcionalidades en 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 conAWS IoT Corey exportar datos de IoT a laNube de AWS.AWS IoT Greengrasslos desarrolladores pueden usarAWS Lambdafunciones y preconstruidasConectoresPara crear aplicaciones sin servidor que se implementen en dispositivos para que se ejecuten localmente.

En el siguiente diagrama se muestra la arquitectura básica de AWS IoT Greengrass.

AWS IoT Greengrass permite que los clientes creen dispositivos IoT y lógica de la aplicación. En concreto, AWS IoT Greengrass proporciona la administración basada en la nube de la lógica de la aplicación 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 manera segura a través de una red local e intercambian mensajes entre sí sin tener que conectarse a la nube. AWS IoT Greengrass proporciona un administrador de mensajes de publicación/envío local que puede almacenar mensajes en búfer de manera inteligente si se pierde la conectividad, de manera que se conserven los mensajes de entrada y salida en la nube.

AWS IoT Greengrass protege los datos de usuario:

  • 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 Greengrassproporciona actualizaciones de funciones Lambda de forma segura y transparente.

AWS IoT Greengrass consta de lo siguiente:

  • Distribuciones de software

    • Software de AWS IoT Greengrass Core

    • SDK de AWS IoT Greengrass Core

  • Servicio en la nube

    • AWS IoT GreengrassAPI de

  • Características

    • Tiempo de ejecución de Lambda

    • Implementación de sombras

    • Administrador de mensajes

    • Administración de grupos

    • Servicio de detección

    • Agente de actualización transparente

    • Administrador de transmisiones

    • Acceso a recursos locales

    • Inferencia de aprendizaje automático local

    • Secrets Manager local

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

Software de AWS IoT Greengrass Core

El software AWS IoT Greengrass Core proporciona las siguientes funcionalidades:

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

  • Procesa los flujos de datos de forma local con exportaciones automáticas aNube de AWS.

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

  • Mensajes MQTT entreAWS IoTLas funciones de Lambda y dispositivos de, conectores y mediante suscripciones administradas.

  • Conexiones seguras entre los dispositivos y elNube de AWSMediante la autenticación y la autorización de dispositivos.

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

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

  • Implementación de modelos de aprendizaje automático 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 (OTA) para funciones de Lambda definidas por el usuario de manera segura y transparente.

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

AWS IoT Greengrassse configuran a través deAWS IoT GreengrassAPI que crean y actualizanAWS IoT GreengrassLas definiciones de grupos almacenadas en la nube.

Versiones del software de AWS IoT Greengrass Core

AWS IoT Greengrass ofrece varias opciones para instalar el software de AWS IoT Greengrass Core, incluidos archivos de descarga tar.gz, un script de inicio rápido e instalaciones apt en plataformas Debian compatibles. Para obtener más información, consulte Instalación del software AWS IoT Greengrass Core.

Las siguientes pestañas describe las novedades y cambios en las versiones de software de AWS IoT Greengrass Core.

GGC v1.11
1.11.5

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

1.11.3

Mejoras y correcciones de errores:

  • Se ha corregido un error que provocabaAWS IoT GreengrassEl software principal se ejecuta en un instante en un dispositivo Ubuntu para dejar de responder después de una pérdida repentina de energía al dispositivo.

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

  • Se ha corregido un problema que provocaba que los mensajes MQTT no se enviasen correctamente almaxWorkItemCountEl valor se estableció en un valor mayor de1024.

  • Se ha corregido un problema que provocaba que el agente de actualización de OTA ignorara el MQTTKeepAliveespecificado en el parámetrokeepAlivepropiedad enconfig.json.

  • Mejoras de rendimiento generales y correcciones de errores.

nota

Si usa el administrador de secuencias para exportar datos a la nube, no puede actualizar aAWS IoT GreengrassSoftware básico v1.11.3 de una versión anterior de v1.x. Cuando intenta una actualización OTA, el administrador de secuencias no se inicia y la actualización falla. Si está instalandoAWS IoT GreengrassPor primera vez, recomendamos encarecidamente que implemente la versión más reciente del software.

1.11.1

Mejoras y correcciones de errores:

  • Se ha corregido un problema que provocaba que la memoria aumentara para el administrador de transmisiones

  • Se ha corregido un problema que provocaba que el administrador de secuencias restableciera el número de secuencia de la transmisión a0Si el dispositivo de núcleo de Greengrass se apagó durante más tiempo que el período de tiempo de vida (TTL) especificado de los datos de transmisión.

  • Se ha corregido un problema que impedía que el administrador de secuencias detuviera correctamente los intentos de reintento de exportar datos alNube de AWS.

1.11.0

Nuevas características:

  • Un agente de telemetría en el núcleo de Greengrass recopila datos de telemetría local y los publica enNube 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 destino. Para obtener más información, consulteRecopilación de datos de telemetría del estado del sistemaAWS IoT Greengrassdispositivos principales.

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

  • AAdministrador de transmisionesExportación automática de datos a Amazon S3 yAWS IoT SiteWise.

    NewParámetros del administrador de secuenciasle permiten actualizar las transmisiones existentes y pausar o reanudar la exportación de datos.

  • Support para ejecutar funciones de Python 3.8.x Lambda en el núcleo.

  • NuevoggDaemonPortpropiedad enconfig.jsonque se utilizan para configurar el número de puerto IPC del núcleo de Greengrass. El número de puerto predeterminado es 8000.

    NuevosystemComponentAuthTimeoutpropiedad enconfig.jsonque se utiliza para configurar el tiempo de espera para la autenticación IPC del núcleo de Greengrass. El tiempo de espera predeterminado es 5000 milisegundos.

  • Se ha aumentado el número máximo deAWS IoTDispositivos porAWS IoT Greengrassgrupo de 200 a 2500.

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

    Para obtener más información, consulte Puntos de enlace 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 Greengrass.

  • Un nuevo parámetro de configuración de tiempo de ejecución (mountAllBlockDevices) permite que Greengrass use bind mounts para montar todos los dispositivos de bloque en un contenedor después de configurar los OverlayFS. Esta función resolvió un problema que provocaba un error en la implementación de Greengrass si/usrno está bajo el/jerarquía.

  • Se ha corregido un error que provocabaAWS IoT GreengrassError del núcleo si/tmpes un objeto symlink.

  • Se ha corregido un problema que permitía que el agente de implementación de Greengrass eliminara artefactos del modelo de aprendizaje automático no utilizados delmlmodel_publicfolder.

  • Mejoras de rendimiento generales y correcciones de errores.

GGC v1.10
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 error que provocabaAWS IoT GreengrassEl software principal se ejecuta en un instante en un dispositivo Ubuntu para dejar de responder después de una pérdida repentina de energía al dispositivo.

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

  • Se ha corregido un problema que provocaba que los mensajes MQTT no se enviasen correctamente almaxWorkItemCountEl valor se estableció en un valor mayor de1024.

  • Se ha corregido un problema que provocaba que el agente de actualización de OTA ignorara el MQTTKeepAliveespecificado en el parámetrokeepAlivepropiedad enconfig.json.

  • Mejoras de rendimiento generales y correcciones de errores.

1.10.3

Mejoras y correcciones de errores:

  • NuevosystemComponentAuthTimeoutpropiedad enconfig.jsonque se utiliza para configurar el tiempo de espera para la autenticación IPC del núcleo de Greengrass. El tiempo de espera predeterminado es 5000 milisegundos.

  • Se ha corregido un problema que provocaba que la memoria aumentara para el administrador de transmisiones

1.10.2

Mejoras y correcciones de errores:

  • NuevomqttOperationTimeoutpropiedad enconfig.jsonPara establecer el tiempo de espera para las operaciones de publicación, suscripción y cancelación de suscripción en las conexiones MQTT conAWS 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:

  • Las actualizaciones por aire (OTA) con integración de seguridad de hardware se pueden configurar con OpenSSL 1.1.

  • Mejoras de rendimiento generales y correcciones de errores.

Deprecated versions
1.9.4

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

1.9.3

Nuevas características:

  • Compatibilidad con Armv6l.AWS IoT Greengrass El software Core versión 1.9.3 o posterior se puede instalar en distribuciones 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 MQTT ahora admiten actualizaciones de software inalámbricas (OTA). AWS IoT Greengrass utiliza la extensión TLS de red de protocolo de capa de aplicación (ALPN) para habilitar estas conexiones. Para obtener más información, consulte Actualizaciones de OTA para el software AWS IoT Greengrass Core 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 Python 2.7 Lambda enviaran cargas binarias a otras funciones de Lambda.

  • Mejoras de rendimiento generales y correcciones de errores.

1.9.2

Nuevas características:

  • Compatibilidad conOpenWrt.AWS IoT Greengrass El software Core v1.9.2 o posterior se puede instalar en distribuciones OpenWrt con arquitecturas Armv8 (AArch64) y Armv7l. En la actualidad, OpenWrt no admite inferencia de ML.

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:

  • Support con Python 3.7 y Node.js 8.10 Lambda en los tiempos de ejecución. Las funciones de Lambda que usan tiempos de ejecución de Python 3.7 y Node.js 8.10 ahora pueden ejecutarse en unAWS IoT GreengrassNúcleo de (AWS IoT GreengrassLos runtimes de Python 2.7 y Node.js 6.10 (en inglés).

  • 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 Entidades de seguridad del núcleo de AWS IoT Greengrass.

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 en 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 complementaAWS IoT GreengrassLa extensión de TLS Application Layer Protocol Network (ALPN) y permite que todo el tráfico de mensajería de Greengrass (MQTT y) 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.

  • ID de cliente con nombre predecible para las conexiones con AWS IoT. Este cambio permite la compatibilidad conAWS IoT Device DefenderyAWS IoTEventos del ciclo de vidaPara 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 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 AWS IoT Device Tester para que AWS IoT Greengrass, que puede utilizar para verificar que su arquitectura de CPU, configuración de kernel y controladores funcionan con AWS IoT Greengrass. Para obtener más información, consulte Uso deAWS IoTDevice Tester paraAWS IoT Greengrass V1.

  • LaAWS IoT GreengrassSoftware básico,AWS IoT GreengrassSDK de Core, yAWS IoT GreengrassLos paquetes de SDK de aprendizaje automático están disponibles para descarga a través de Amazon CloudFront. Para obtener más información, consulte Descargas de AWS IoT Greengrass.

1.6.1

Nuevas características:

  • Los ejecutables de Lambda que ejecutan código binario en el núcleo de Greengrass. Utilice el nuevoAWS IoT GreengrassEl SDK de núcleo para C para escribir ejecutables 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 Archivo de configuración de AWS IoT Greengrass Core.

  • 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 de AWS IoT Greengrass Core se puede implementar en ubicaciones de solo lectura y de lectura y escritura. Para obtener más información, consulte Configurar 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:

  • La inferencia de aprendizaje automático (ML) de AWS IoT Greengrass ya está disponible con carácter 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 aprendizaje automático.

  • Las funciones de de de Greengrass Lambda ahora admiten datos binarios como carga de entrada, además de JSON. Para utilizar esta característica, debe actualizar aAWS IoT GreengrassEl SDK de Core versión 1.1.0, que puede descargar desdeAWS IoT GreengrassSDK de CorePágina de Descargas de.

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:

  • Deployed (Implementada)AWS IoT GreengrassLos grupos se pueden restablecer eliminando funciones, suscripciones y configuraciones de Lambda. Para obtener más información, consulte Restablecimiento de implementaciones.

  • Support con los runtimes de Node.js 6.10 y Java 8 Lambda, además de Python 2.7.

Para migrar de la versión anterior deAWS IoT GreengrassNúcleo:

  • 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

Grupos de AWS IoT Greengrass

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.

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 del grupo de Greengrass

Entre ellas se incluyen:

C: Núcleo de Greengrass

El objeto de AWS IoT (dispositivo) que representa el núcleo de Greengrass. Para obtener más información, consulte Configuración de AWS IoT Greengrass Core.

D: Definición de la función 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 las funciones de Lambda en elAWS IoT Greengrasscore.

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 dispositivos, funciones Lambda, conectores,AWS IoT Corey el servicio de sombra 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 objetos de AWS IoT (dispositivos) que son miembros del grupo de Greengrass, con datos de configuración asociados. Para obtener más información, consulte Dispositivos de 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 aprendizaje automático y Implementación de secretos en el núcleo de AWS IoT Greengrass.

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

Dispositivos de AWS IoT Greengrass

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

Núcleo de Greengrass

Un núcleo de Greengrass es un dispositivo que ejecuta el software AWS IoT Greengrass Core, que le permite comunicarse directamente con AWS IoT Core y el servicio AWS IoT Greengrass. Un núcleo tiene su propio certificado de dispositivo que se utiliza para autenticarse con AWS IoT Core. Tiene una sombra de dispositivo y una entrada en el registro de AWS IoT Core. Los núcleos de Greengrass ejecutan un tiempo de ejecución de Lambda local, un agente de implementación y un rastreador de direcciones IP que envía información de dirección IP a laAWS IoT GreengrassPara permitir a los dispositivos de Greengrass detectar automáticamente su información de conexión de grupo y núcleo. Para obtener más información, consulte Configuración de AWS IoT Greengrass Core.

nota

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

Dispositivo conectado a un núcleo de Greengrass

Los dispositivos conectados (también denominados dispositivos Greengrass) también tienen su propio certificado de dispositivo para la autenticación de AWS IoT Core, una sombra de dispositivo y una entrada en el registro de AWS IoT Core. Los dispositivos Greengrass pueden ejecutarFreeRTOSo utilice la funciónAWS IoTSDK de dispositivosorAWS IoT GreengrassAPI de descubrimientoPara obtener información de detección utilizada para conectarse y autenticarse con el núcleo del mismo grupo de Greengrass. Para obtener información sobre cómo utilizar elAWS IoTpara crear y configurar un dispositivo paraAWS IoT Greengrass, consulteMódulo 4: Interacción con dispositivos en unAWS IoT Greengrassgrupo. O bien, para ver ejemplos que muestran cómo utilizar elAWS CLIPara crear y configurar un dispositivo paraAWS IoT Greengrass, consultecrear-definición de dispositivoen laAWS CLIReferencia de los comandos de la.

En un grupo de Greengrass, puede crear suscripciones que permitan a los dispositivos comunicarse a través de MQTT con funciones de Lambda, conectores y otros dispositivos del grupo, y conAWS IoT Coreo el servicio de sombra local 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 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. Un dispositivo 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 la compatibilidad con OPC-UA en el núcleo de Greengrass, puede usar elConector IoT SiteWise. El conector envía datos de dispositivos industriales desde servidores de OPC-UA a propiedades de recursos en AWS IoT SiteWise.

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

LaAWS IoT GreengrassEl dispositivo 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). Este certificado es utilizado por el cliente de AWS IoT para la autenticación mutua cuando el núcleo se conecta a los servicios AWS IoT Core y AWS IoT Greengrass.

  • 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-root representa la ruta donde está instalado el software de AWS IoT Greengrass Core en su dispositivo. Normalmente, este es el directorio /greengrass.

SDKs

Los siguientes ejemplos deAWSLos SDK siempre que se utilicen para trabajar conAWS IoT Greengrass:

SDK de AWS

UsarAWSSDK para crear aplicaciones que interactúan con cualquierAWS, incluidos Amazon S3, Amazon DynamoDB,AWS IoT,AWS IoT Greengrass, y otros. En el contexto deAWS IoT Greengrass, puede utilizar laAWSSDK en funciones Lambda implementadas para hacer llamadas directas a cualquierAWSServicio de. Para obtener más información, consulte AWS SDK.

nota

Las operaciones específicas de Greengrass que están disponibles en elAWSLos SDK también están disponibles enAWS IoT GreengrassAPIyAWS CLI.

SDK de dispositivos de AWS IoT

LaAWS IoTDevice SDK ayuda a que los dispositivos se conectenAWS IoT CoreyAWS IoT Greengrass. Para obtener más información, consulteAWS IoTSDKs de dispositivosen laAWS IoTGuía para desarrolladores.

Los dispositivos pueden usar cualquiera de losAWS IoTPlataformas SDK v2 de dispositivos para detectar información de conectividad para un núcleo de Greengrass. La información de conectividad incluye:

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

  • Las direcciones IP del núcleo de Greengrass en cada grupo. Estos también se denominanExtredpoints de Core.

  • El certificado de entidad de certificación del grupo, 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 v1 de laAWS IoTSDK de dispositivos, solo las plataformas C++ y Python proporcionan soporte de descubrimiento integrado.

SDK de AWS IoT Greengrass Core

LaAWS IoT GreengrassCore SDK permite que las funciones de Lambda interactúen con el núcleo de Greengrass, publiquen mensajes enAWS IoTInteractuar con el servicio de sombra local, invocar otras funciones de Lambda implementadas y acceder a recursos secretos. Este SDK lo utilizan las funciones de Lambda que se ejecutan en unAWS IoT GreengrassNúcleo de Para obtener más información, consulte AWS IoT Greengrass SDK de Core.

AWS IoT GreengrassSDK Machine Learning

LaAWS IoT GreengrassEl SDK de Machine Learning 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 unAWS IoT Greengrasse interactúe con un servicio de inferencia local. Para obtener más información, consulte AWS IoT Greengrass SDK Machine Learning.

Plataformas compatibles y requisitos

En las siguientes pestañas se enumeran las plataformas compatibles y los requisitos para el software de AWS IoT Greengrass Core.

nota

Puede descargar laAWS IoT GreengrassSoftware Core delAWS IoT GreengrassSoftware CoreDescargas de.

GGC v1.11

Plataformas admitidas:

  • Arquitectura: Armv7l

    • SO: Sistema operativo. Distribución: Raspbian Buster, 2019-07-10.AWS IoT GreengrassPodría funcionar con otras distribuciones en Raspberry Pi, pero recomendamos Raspbian porque es la distribución admitida oficialmente.

    • SO: Sistema operativo. Distribución: OpenWrt

  • Arquitectura: Armv8 (AArch64)

    • SO: Sistema operativo. Distribución: Arch Linux

    • SO: Sistema operativo. Distribución: OpenWrt

  • Arquitectura: Armv6l

  • Arquitectura: x86_64

    • SO: Sistema operativo. Distribución: Amazon Linux (amzn2-ami-hvm-2.0.20190313-x86_64-gp2), Ubuntu 18.04

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

Requisitos:

  • El espacio en disco mínimo necesario para el software de AWS IoT Greengrass Core es de 128 MB. Si utiliza elAgente de actualización OTA, el mínimo es de400 MB.

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

    nota

    El administrador de secuencias estará habilitado de forma predeterminada siempre que utilice elCreación de un grupo de predeterminadaen la pestañaAWS IoTpara crear el grupo de Greengrass.

  • Versión del kernel de Linux:

  • Biblioteca de C de GNU (glibc) versión 2.14 o posterior. Las distribuciones OpenWrt requieren la Biblioteca musl de C versión 1.1.16 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, AWS IoT Greengrass solo puede ejecutarse en modo no seguro, mediante la marca -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. Los siguientes requisitos se aplican cuando se ejecuta AWS IoT Greengrass con contenedores:

      • LamemoryEl grupo de control (cgroup) debe estar habilitado y montado para permitirAWS IoT GreengrassPara establecer el límite de memoria de las funciones Lambda.

      • LaDispositivos decgroup debe estar habilitado y montado si Lambda funciona conAcceso a recursos localesse utilizan para abrir archivos en elAWS IoT GreengrassDispositivo del núcleo.

    • 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 yAWS IoTdebe estar presente en el almacén de confianza del sistema.

  • El administrador de secuencias requiere Java 8 Runtime y un mínimo de 70 MB de RAM además del requisito básico de memoria del software AWS IoT Greengrass Core. El administrador de secuencias estará habilitado de forma predeterminada siempre que utilice elCreación de un grupo de predeterminadaen la pestañaAWS IoTconsola de . El administrador de secuencias no es compatible con las distribuciones OpenWrt.

  • Bibliotecas que admiten elAWS LambdaruntimeLas 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.

    • PythonVersión 3.8 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.js versión 12.x para las funciones que utilizan el entorno de tiempo de ejecución de Node.js 12.x.

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

      nota

      La ejecución de Java en una distribución OpenWrt no se admite oficialmente. Sin embargo, si su compilación de OpenWrt es compatible con Java, tal vez pueda ejecutar funciones de Lambda creadas en Java en sus dispositivos OpenWrt.

      Para obtener más información acerca deAWS IoT Greengrasscompatibilidad con los tiempos de ejecución de Lambda, consulteEjecute las funciones de Lambda en elAWS IoT Greengrasscore.

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

    • 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

    • SO: Sistema operativo. Distribución: Raspbian Buster, 2019-07-10.AWS IoT GreengrassPodría funcionar con otras distribuciones en Raspberry Pi, pero recomendamos Raspbian porque es la distribución admitida oficialmente.

    • SO: Sistema operativo. Distribución: OpenWrt

  • Arquitectura: Armv8 (AArch64)

    • SO: Sistema operativo. Distribución: Arch Linux

    • SO: Sistema operativo. Distribución: OpenWrt

  • Arquitectura: Armv6l

  • Arquitectura: x86_64

    • SO: Sistema operativo. Distribución: Amazon Linux (amzn2-ami-hvm-2.0.20190313-x86_64-gp2), Ubuntu 18.04

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

Requisitos:

  • El espacio en disco mínimo necesario para el software de AWS IoT Greengrass Core es de 128 MB. Si utiliza elAgente de actualización OTA, el mínimo es de400 MB.

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

    nota

    El administrador de secuencias estará habilitado de forma predeterminada siempre que utilice elCreación de un grupo de predeterminadaen la pestañaAWS IoTpara crear el grupo de Greengrass.

  • Versión del kernel de Linux:

  • Biblioteca de C de GNU (glibc) versión 2.14 o posterior. Las distribuciones OpenWrt requieren la Biblioteca musl de C versión 1.1.16 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, AWS IoT Greengrass solo puede ejecutarse en modo no seguro, mediante la marca -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. Los siguientes requisitos se aplican cuando se ejecuta AWS IoT Greengrass con contenedores:

      • LamemoryEl grupo de control (cgroup) debe estar habilitado y montado para permitirAWS IoT GreengrassPara establecer el límite de memoria de las funciones Lambda.

      • LaDispositivos decgroup debe estar habilitado y montado si Lambda funciona conAcceso a recursos localesse utilizan para abrir archivos en elAWS IoT GreengrassDispositivo del núcleo.

    • 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 yAWS IoTdebe estar presente en el almacén de confianza del sistema.

  • El administrador de secuencias requiere Java 8 Runtime y un mínimo de 70 MB de RAM además del requisito básico de memoria del software AWS IoT Greengrass Core. El administrador de secuencias estará habilitado de forma predeterminada siempre que utilice elCreación de un grupo de predeterminadaen la pestañaAWS IoTconsola de . El administrador de secuencias no es compatible con las distribuciones OpenWrt.

  • Bibliotecas que admiten elAWS LambdaruntimeLas 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.js versión 12.x para las funciones que utilizan el entorno de tiempo de ejecución de Node.js 12.x.

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

      nota

      La ejecución de Java en una distribución OpenWrt no se admite oficialmente. Sin embargo, si su compilación de OpenWrt es compatible con Java, tal vez pueda ejecutar funciones de Lambda creadas en Java en sus dispositivos OpenWrt.

      Para obtener más información acerca deAWS IoT Greengrasscompatibilidad con los tiempos de ejecución de Lambda, consulteEjecute las funciones de Lambda en elAWS IoT Greengrasscore.

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

    • 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

    • SO: Sistema operativo. Distribución: Raspbian Buster, 2019-07-10.AWS IoT GreengrassPodría funcionar con otras distribuciones en Raspberry Pi, pero recomendamos Raspbian porque es la distribución admitida oficialmente.

    • SO: Sistema operativo. Distribución: OpenWrt

  • Arquitectura: Armv8 (AArch64)

    • SO: Sistema operativo. Distribución: Arch Linux

    • SO: Sistema operativo. Distribución: OpenWrt

  • Arquitectura: Armv6l

  • Arquitectura: x86_64

    • SO: Linux. Distribución: Amazon Linux (amzn2-ami-hvm-2.0.20190313-x86_64-gp2), Ubuntu 18.04

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

Requisitos:

  • El espacio en disco mínimo necesario para el software de AWS IoT Greengrass Core es de 128 MB. Si utiliza elAgente de actualización OTA, el mínimo es de400 MB.

  • Mínimo 128 MB de RAM asignados al software AWS IoT Greengrass Core.

  • Versión del kernel de Linux:

  • Biblioteca de C de GNU (glibc) versión 2.14 o posterior. Las distribuciones OpenWrt requieren la Biblioteca musl de C versión 1.1.16 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, AWS IoT Greengrass solo puede ejecutarse en modo no seguro, mediante la marca -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. Los siguientes requisitos se aplican cuando se ejecuta AWS IoT Greengrass con contenedores:

      • LamemoryEl grupo de control (cgroup) debe estar habilitado y montado para permitirAWS IoT GreengrassPara establecer el límite de memoria de las funciones Lambda.

      • LaDispositivos decgroup debe estar habilitado y montado si Lambda funciona conAcceso a recursos localesse utilizan para abrir archivos en elAWS IoT Greengrassdispositivo principal de.

    • 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 yAWS IoTdebe estar presente en el almacén de confianza del sistema.

  • Bibliotecas que admiten elAWS LambdaruntimeLas 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.

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

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

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

      nota

      La ejecución de Java en una distribución OpenWrt no se admite oficialmente. Sin embargo, si su compilación de OpenWrt es compatible con Java, tal vez pueda ejecutar funciones de Lambda creadas en Java en sus dispositivos OpenWrt.

      Para obtener más información acerca deAWS IoT Greengrasscompatibilidad con los tiempos de ejecución de Lambda, consulteEjecute las funciones de Lambda en elAWS IoT Greengrasscore.

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

    • 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. Distribución: Fraspbian Stretch, 2018-06-29. Otras versiones podrían funcionar con AWS IoT Greengrass, pero le recomendamos esta porque es la distribución admitida oficialmente.

    • Arquitectura: x86_64; SO: Linux. Distribución: Sistema operativo Amazon Linux (amzn-ami-hvm-2016.09.1.20170119-x86_64-ebs), Ubuntu 14.04 — 16.04

    • Arquitectura: Sistema operativo Armv8 (AArch64): Linux. Distribución: Arch Linux

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

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

  • Se requieren los elementos siguientes:

    • El espacio en disco mínimo necesario para el software de AWS IoT Greengrass Core es de 128 MB. Si utiliza elAgente de actualización OTA, el mínimo es de400 MB.

    • Mínimo 128 MB de RAM asignados 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, AWS IoT Greengrass solo puede ejecutarse en modo no seguro, mediante la marca -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. Los siguientes requisitos se aplican cuando se ejecuta AWS IoT Greengrass con contenedores:

        • LamemoryEl grupo de control (cgroup) debe estar habilitado y montado para permitirAWS IoT GreengrassPara establecer el límite de memoria de las funciones Lambda.

        • LaDispositivos decgroup debe estar habilitado y montado si Lambda funciona conAcceso a recursos localesse utilizan para abrir archivos en elAWS IoT Greengrassdispositivo principal de.

      • 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 yAWS IoTdebe estar presente en el almacén de confianza del sistema.

  • Los elementos siguientes son obligatorios:

    • Bibliotecas que admiten elAWS LambdaruntimeLas 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 Node.js versión 6.10 o posterior para ver 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 del shell (no las variantes de BusyBox):

      • wget

      • realpath

      • tar

      • readlink

      • basename

      • dirname

      • pidof

      • df

      • grep

      • umount

      • mv

      • gzip

      • mkdir

      • rm

      • ln

      • cut

      • cat

Para obtener información acerca deAWS IoT GreengrassCuotas (límites), consulteCuotas de servicioen laReferencia general de Amazon Web Services.

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

Descargas de AWS IoT Greengrass

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

Software de AWS IoT Greengrass Core

LaAWS IoT GreengrassAmpliación del software CoreAWSen unAWS IoT GreengrassPara que los dispositivos locales actúen localmente a partir de los datos que generan.

v1.11
1.11.5

Mejoras y correcciones de errores:

  • Mejoras de rendimiento generales y correcciones de errores.

1.11.3

Mejoras y correcciones de errores:

  • Se ha corregido un error que provocabaAWS IoT GreengrassEl software principal se ejecuta en un instante en un dispositivo Ubuntu para dejar de responder después de una pérdida repentina de energía al dispositivo.

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

  • Se ha corregido un problema que provocaba que los mensajes MQTT no se enviasen correctamente almaxWorkItemCountEl valor se estableció en un valor mayor de1024.

  • Se ha corregido un problema que provocaba que el agente de actualización de OTA ignorara el MQTTKeepAliveespecificado en el parámetrokeepAlivepropiedad enconfig.json.

  • Mejoras de rendimiento generales y correcciones de errores.

nota

Si usa el administrador de secuencias para exportar datos a la nube, no puede actualizar aAWS IoT GreengrassSoftware básico v1.11.3 de una versión anterior de v1.x. Cuando intenta una actualización OTA, el administrador de secuencias no se inicia y la actualización falla. Si está instalandoAWS IoT GreengrassPor primera vez, recomendamos encarecidamente que implemente la versión más reciente del software.

1.11.1

Mejoras y correcciones de errores:

  • Se ha corregido un problema que provocaba que la memoria aumentara para el administrador de transmisiones

  • Se ha corregido un problema que provocaba que el administrador de secuencias restableciera el número de secuencia de la transmisión a0Si el dispositivo de núcleo de Greengrass se apagó durante más tiempo que el período de tiempo de vida (TTL) especificado de los datos de transmisión.

  • Se ha corregido un problema que impedía que el administrador de secuencias detuviera correctamente los intentos de reintento de exportar datos alNube de AWS.

1.11.0

Nuevas características:

  • Un agente de telemetría en el núcleo de Greengrass recopila datos de telemetría local y los publica enNube 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 destino. Para obtener más información, consulteRecopilación de datos de telemetría del estado del sistemaAWS IoT Greengrassdispositivos principales.

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

  • AAdministrador de transmisionesExportación automática de datos a Amazon S3 yAWS IoT SiteWise.

    NewParámetros del administrador de secuenciasle permiten actualizar las transmisiones existentes y pausar o reanudar la exportación de datos.

  • Support para ejecutar funciones de Python 3.8.x Lambda en el núcleo.

  • NuevoggDaemonPortpropiedad enconfig.jsonque se utilizan para configurar el número de puerto IPC del núcleo de Greengrass. El número de puerto predeterminado es 8000.

    NuevosystemComponentAuthTimeoutpropiedad enconfig.jsonque se utiliza para configurar el tiempo de espera para la autenticación IPC del núcleo de Greengrass. El tiempo de espera predeterminado es 5000 milisegundos.

  • Se ha aumentado el número máximo deAWS IoTDispositivos porAWS IoT Greengrassgrupo de 200 a 2500.

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

    Para obtener más información, consulte Puntos de enlace 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 Greengrass.

  • Un nuevo parámetro de configuración de tiempo de ejecución (mountAllBlockDevices) permite que Greengrass use bind mounts para montar todos los dispositivos de bloque en un contenedor después de configurar los OverlayFS. Esta función resolvió un problema que provocaba un error en la implementación de Greengrass si/usrno está bajo el/jerarquía.

  • Se ha corregido un error que provocabaAWS IoT GreengrassError del núcleo si/tmpes un objeto symlink.

  • Se ha corregido un problema que permitía que el agente de implementación de Greengrass eliminara artefactos del modelo de aprendizaje automático no utilizados delmlmodel_publicfolder.

  • Mejoras de rendimiento generales y correcciones de errores.

Para instalar elAWS IoT GreengrassSoftware básico en su dispositivo principal, descargue el paquete para su arquitectura, distribución y sistema operativo (SO) y, a continuación, siga los pasos de laGuía de introducción.

sugerencia

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

Arquitectura

Distribución

SO

Enlace

Armv8 (AArch64)

Arch Linux

Linux

Descargar

Armv8 (AArch64)

OpenWrt

Linux

Descargar

Armv7l

Raspbian

Linux

Descargar

Armv7l

OpenWrt

Linux

Descargar

Armv6l

Raspbian

Linux

Descargar

x86_64

Linux

Linux

Descargar

v1.10
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 error que provocabaAWS IoT GreengrassEl software principal se ejecuta en un instante en un dispositivo Ubuntu para dejar de responder después de una pérdida repentina de energía al dispositivo.

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

  • Se ha corregido un problema que provocaba que los mensajes MQTT no se enviasen correctamente almaxWorkItemCountEl valor se estableció en un valor mayor de1024.

  • Se ha corregido un problema que provocaba que el agente de actualización de OTA ignorara el MQTTKeepAliveespecificado en el parámetrokeepAlivepropiedad enconfig.json.

  • Mejoras de rendimiento generales y correcciones de errores.

1.10.3

Mejoras y correcciones de errores:

  • NuevosystemComponentAuthTimeoutpropiedad enconfig.jsonque se utiliza para configurar el tiempo de espera para la autenticación IPC del núcleo de Greengrass. El tiempo de espera predeterminado es 5000 milisegundos.

  • Se ha corregido un problema que provocaba que la memoria aumentara para el administrador de transmisiones

1.10.2

Mejoras y correcciones de errores:

  • NuevomqttOperationTimeoutpropiedad enconfig.jsonPara establecer el tiempo de espera para las operaciones de publicación, suscripción y cancelación de suscripción en las conexiones MQTT conAWS 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:

  • Las actualizaciones por aire (OTA) con integración de seguridad de hardware se pueden configurar con OpenSSL 1.1.

  • Mejoras de rendimiento generales y correcciones de errores.

Para instalar elAWS IoT GreengrassSoftware básico en su dispositivo principal, descargue el paquete para su arquitectura, distribución y sistema operativo (SO) y, a continuación, siga los pasos de laGuía de introducción.

Arquitectura

Distribución

SO

Enlace

Armv8 (AArch64)

Arch Linux

Linux

Descargar

Armv8 (AArch64)

OpenWrt

Linux

Descargar

Armv7l

Raspbian

Linux

Descargar

Armv7l

OpenWrt

Linux

Descargar

Armv6l

Raspbian

Linux

Descargar

x86_64

Linux

Linux

Descargar

Deprecated versions
1.9.4

Nuevas características en v1.9:

  • Support con Python 3.7 y Node.js 8.10 Lambda en los tiempos de ejecución. Las funciones de Lambda que usan tiempos de ejecución de Python 3.7 y Node.js 8.10 ahora pueden ejecutarse en unAWS IoT GreengrassNúcleo de (AWS IoT GreengrassLos runtimes de Python 2.7 y Node.js 6.10 (en inglés).

  • 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 Entidades de seguridad del núcleo de AWS IoT Greengrass.

  • Compatibilidad conOpenWrt.AWS IoT Greengrass El software Core v1.9.2 o posterior se puede instalar en distribuciones OpenWrt con arquitecturas Armv8 (AArch64) y Armv7l. En la actualidad, OpenWrt no admite inferencia de ML.

  • Compatibilidad con Armv6l.AWS IoT Greengrass El software Core versión 1.9.3 o posterior se puede instalar en distribuciones 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 MQTT ahora admiten actualizaciones de software inalámbricas (OTA). AWS IoT Greengrass utiliza la extensión TLS de red de protocolo de capa de aplicación (ALPN) para habilitar estas conexiones. Para obtener más información, consulte Actualizaciones de OTA para el software AWS IoT Greengrass Core y Realizar la conexión en el puerto 443 o a través de un proxy de red.

Para instalar elAWS IoT GreengrassSoftware básico en su dispositivo principal, descargue el paquete para su arquitectura, distribución y sistema operativo (SO) y, a continuación, siga los pasos de laGuía de introducción.

Arquitectura

Distribución

SO

Enlace

Armv8 (AArch64)

Arch Linux

Linux

Descargar

Armv8 (AArch64)

OpenWrt

Linux

Descargar

Armv7l

Raspbian

Linux

Descargar

Armv7l

OpenWrt

Linux

Descargar

Armv6l

Raspbian

Linux

Descargar

x86_64

Linux

Linux

Descargar

v1.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 en 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 complementaAWS IoT GreengrassLa extensión de TLS Application Layer Protocol Network (ALPN) y permite que todo el tráfico de mensajería de Greengrass (MQTT y) 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.

    • ID de cliente con nombre predecible para las conexiones con AWS IoT. Este cambio permite la compatibilidad conAWS IoT Device DefenderyAWS IoTEventos del ciclo de vidaPara 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 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 elAWS IoT GreengrassSoftware básico en su dispositivo principal, descargue el paquete para su arquitectura, distribución y sistema operativo (SO) y, a continuación, siga los pasos de laGuía de introducción.

Arquitectura

Distribución

SO

Enlace

Armv8 (AArch64)

Ubuntu 14.04-16.04

Linux

Descargar

Armv7l

Raspbian

Linux

Descargar

x86_64

Linux

Linux

Descargar

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

Para obtener información acerca de otras opciones para instalar el software de AWS IoT Greengrass Core en el dispositivo, consulte Instalación del software AWS IoT Greengrass Core.

 

Software del snap de AWS IoT Greengrass

AWS IoT Greengrasssnap 1.11.x le permite ejecutar una versión limitada deAWS IoT Greengrassa través de paquetes de software convenientes, junto con todas las dependencias necesarias, en un entorno contenedorizado.

nota

LaAWS IoT Greengrasssnap está disponible paraAWS IoT GreengrassSoftware Core versión 1.11.x.AWS IoT GreengrassNo proporciona una instantánea para v1.10.x. Las versiones no compatibles no reciben actualizaciones ni correcciones de errores.

LaAWS IoT GreengrassNo admite conectores y inferencia de aprendizaje automático (ML).

Para obtener más información, consulte Ejecución de AWS IoT Greengrass en un snap.

 

Software de Docker para AWS IoT Greengrass

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

Dockerfile

Los Dockerfiles contienen código fuente para crear imágenes de contenedor de AWS IoT Greengrass personalizadas. 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 de AWS IoT Greengrass Core de destino.

v1.11
v1.10
Deprecated versions

 

imagen de Docker

Las imágenes de Docker tienen el software AWS IoT Greengrass Core 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.

Descargue una imagen prediseñada deDocker Hubo Amazon Elastic Container Registry (Amazon ECR).

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

  • Para Amazon ECR, utilice ellatestpara descargar la última versión disponible de la imagen de Greengrass Docker. Para obtener más información sobre cómo publicar versiones de imágenes disponibles y descargar imágenes de Amazon ECR, consulteEjecución de AWS IoT Greengrass en un contenedor Docker.

AWS IoT Greengrassno proporciona imágenes Docker paraAWS IoT GreengrassSoftware Core versión 1.11.1.

nota

De forma predeterminada, las imágenes alpine-aarch64 y alpine-armv7l solo pueden ejecutarse en hosts basados en Arm. 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

 

SDK de AWS IoT Greengrass Core

Las funciones de Lambda utilizan elAWS IoT GreengrassCore SDK para interactuar con elAWS IoT Greengrassnúcleo localmente. De este modo, las funciones Lambda implementadas para:

  • Intercambiar mensajes MQTT con AWS IoT Core.

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

  • Interactuar con el servicio de sombra local.

  • Invocar otras funciones Lambda locales.

  • Tener acceso a recursos de secretos.

  • Interactuar con el administrador de secuencias.

Descarga deAWS IoT GreengrassEl SDK básico para su lenguaje o plataforma de GitHub.

Para obtener más información, consulte AWS IoT Greengrass SDK de Core.

 

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 modelo de aprendizaje automático. 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 dispone de ejemplos que puede utilizar con las bibliotecas y los entornos de ejecución de aprendizaje automático 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 optimizado mediante AWS Management Console.

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 AWS Management Console.

TensorFlow

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

 

Software del SDK de aprendizaje automático de AWS IoT Greengrass

LaAWS IoT Greengrass SDK Machine Learningpermite que las funciones de Lambda que crea consuman un modelo de aprendizaje automático local y envíen datos a laOpinión de MLpara cargar y publicar.

v1.1.0
v1.0.0

Esperamos tener noticias suyas

Agradecemos sus comentarios. Para ponerse en contacto con nosotros, visite el foro de AWS IoT Greengrass.