Núcleo de Greengrass - AWS IoT Greengrass

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.

Núcleo de Greengrass

El componente núcleo de Greengrass (aws.greengrass.Nucleus) es un componente obligatorio y el requisito mínimo para ejecutar el software AWS IoT Greengrass Core en un dispositivo. Puede configurar este componente para personalizar y actualizar el software AWS IoT Greengrass Core de forma remota. Implemente este componente para configurar ajustes como el proxy, la función del dispositivo y la configuración de las AWS IoT cosas en sus dispositivos principales.

importante

Cuando la versión del componente núcleo cambia, o cuando cambias determinados parámetros de configuración, el software AWS IoT Greengrass Core, que incluye el núcleo y todos los demás componentes del dispositivo, se reinicia para aplicar los cambios.

Al implementar un componente, AWS IoT Greengrass instala las últimas versiones compatibles de todas las dependencias de ese componente. Por este motivo, es posible que las nuevas versiones con parches de los componentes públicos AWS proporcionados se implementen automáticamente en sus dispositivos principales si agrega nuevos dispositivos a un grupo de cosas o si actualiza la implementación destinada a esos dispositivos. Algunas actualizaciones automáticas, como las actualizaciones de Nucleus, pueden provocar que los dispositivos se reinicien de forma inesperada.

Para evitar actualizaciones no deseadas de un componente que se ejecuta en su dispositivo, le recomendamos que incluya directamente la versión que prefiera de ese componente al crear una implementación. Para obtener más información sobre el comportamiento de las actualizaciones AWS IoT Greengrass del software principal, consulteActualice el software AWS IoT Greengrass principal (OTA).

Versiones

Este componente tiene las siguientes versiones:

  • 2.12.x

  • 2.11.x

  • 2.10.x

  • 2.9.x

  • 2.8.x

  • 2.7.x

  • 2.6.x

  • 2.5.x

  • 2.4.x

  • 2.3.x

  • 2.2.x

  • 2.1.x

  • 2.0.x

Sistema operativo

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:

  • Linux

  • Windows

Para obtener más información, consulte Plataformas admitidas.

Requisitos

Los dispositivos deben cumplir ciertos requisitos para instalar y ejecutar el núcleo de Greengrass y el software AWS IoT Greengrass Core. Para obtener más información, consulte Requisitos de los dispositivos.

Se admite la ejecución del componente núcleo de Greengrass en una VPC. Para implementar este componente en una VPC, se requiere lo siguiente.

  • El componente núcleo de Greengrass debe tener conectividad con AWS IoT data, AWS IoT Credentials y Amazon S3.

Dependencias

El núcleo de Greengrass no incluye ninguna dependencia de componentes. Sin embargo, varios componentes AWS proporcionados incluyen el núcleo como dependencia. Para obtener más información, consulte AWS-componentes proporcionados.

Para obtener más información sobre las dependencias de los componentes, consulte la referencia de recetas de componentes.

Descarga e instalación

Puede descargar un instalador que configura el componente núcleo de Greengrass en su dispositivo. Este instalador configura su dispositivo como un dispositivo principal de Greengrass. Hay dos tipos de instalaciones que puede realizar: una instalación rápida que crea AWS los recursos necesarios para usted o una instalación manual en la que usted mismo crea los AWS recursos. Para obtener más información, consulte Instalación del software AWS IoT Greengrass Core.

También puede seguir un tutorial para instalar el núcleo de Greengrass y explorar el desarrollo de componentes de Greengrass. Para obtener más información, consulte Tutorial: Introducción a AWS IoT Greengrass V2.

Configuración

Este componente proporciona los siguientes parámetros de configuración que puede personalizar al implementar el componente. Algunos parámetros requieren que el software AWS IoT Greengrass principal se reinicie para que surta efecto. Para obtener más información sobre por qué y cómo configurar este componente, consulteConfigurar el software AWS IoT Greengrass principal.

iotRoleAlias

El alias del AWS IoT rol que apunta a un rol de IAM de intercambio de tokens. El proveedor de AWS IoT credenciales asume esta función para permitir que el dispositivo principal de Greengrass interactúe con AWS los servicios. Para obtener más información, consulte Autorizar a los dispositivos principales a interactuar con AWS los servicios.

Al ejecutar el software AWS IoT Greengrass Core con la --provision true opción, el software proporciona un alias de rol y establece su valor en el componente core.

interpolateComponentConfiguration

(Opcional) Puede habilitar el núcleo de Greengrass para interpolar las variables de las recetas de los componentes en las configuraciones de los componentes y combinar las actualizaciones de configuración. Se recomienda configurar esta opción para true que el dispositivo principal pueda ejecutar componentes de Greengrass que usen variables de receta en sus configuraciones.

Esta función está disponible para la versión 2.6.0 y versiones posteriores de este componente.

Valor predeterminado: false

networkProxy

(Opcional) El proxy de red que se utilizará en todas las conexiones. Para obtener más información, consulte Realizar la conexión en el puerto 443 o a través de un proxy de red.

importante

Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.

Este objeto contiene la siguiente información:

noProxyAddresses

(Opcional) Una lista separada por comas de direcciones IP o nombres de host que están exentos del proxy.

proxy

El proxy al que se va a conectar. Este objeto contiene la siguiente información:

url

La URL del servidor proxy en el formatoscheme://userinfo@host:port.

  • scheme— El esquema, que debe ser http ohttps.

    importante

    Los dispositivos principales de Greengrass deben ejecutar Greengrass nucleus v2.5.0 o posterior para usar proxies HTTPS.

    Si configura un proxy HTTPS, debe añadir el certificado de CA del servidor proxy al certificado de CA raíz de Amazon del dispositivo principal. Para obtener más información, consulte Habilite el dispositivo principal para que confíe en un proxy HTTPS.

  • userinfo— (Opcional) La información del nombre de usuario y la contraseña. Si especifica esta información enurl, el dispositivo principal de Greengrass ignora los username campos y. password

  • host— El nombre de host o la dirección IP del servidor proxy.

  • port— (Opcional) El número de puerto. Si no especificas el puerto, el dispositivo principal de Greengrass utilizará los siguientes valores predeterminados:

    • http— 80

    • https— 443

username

(Opcional) El nombre de usuario que autentica el servidor proxy.

password

(Opcional) La contraseña que autentica el servidor proxy.

mqtt

(Opcional) La configuración MQTT para el dispositivo principal de Greengrass. Para obtener más información, consulte Realizar la conexión en el puerto 443 o a través de un proxy de red.

importante

Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.

Este objeto contiene la siguiente información:

port

(Opcional) El puerto que se utilizará para las conexiones MQTT.

Valor predeterminado: 8883

keepAliveTimeoutMs

(Opcional) El tiempo en milisegundos que transcurre entre cada PING mensaje que envía el cliente para mantener activa la conexión MQTT. Este valor debe ser superior a. pingTimeoutMs

Predeterminado: 60000 (60 segundos)

pingTimeoutMs

(Opcional) La cantidad de tiempo en milisegundos que el cliente espera para recibir un PINGACK mensaje del servidor. Si la espera supera el tiempo de espera, el dispositivo principal cierra y vuelve a abrir la conexión MQTT. Este valor debe ser inferior a. keepAliveTimeoutMs

Predeterminado: 30000 (30 segundos)

operationTimeoutMs

(Opcional) El tiempo en milisegundos que el cliente espera a que se completen las operaciones de MQTT (como CONNECT oPUBLISH). Esta opción no se aplica a los mensajes de MQTT PING ni a los de Keep Live.

Predeterminado: 30000 (30 segundos)

maxInFlightPublishes

(Opcional) El número máximo de mensajes QoS 1 de MQTT no confirmados que pueden estar en vuelo al mismo tiempo.

Esta función está disponible para la versión 2.1.0 y versiones posteriores de este componente.

Valor predeterminado: 5

Rango válido: valor máximo de 100

maxMessageSizeInBytes

(Opcional) El tamaño máximo de un mensaje MQTT. Si un mensaje supera este tamaño, el núcleo de Greengrass lo rechaza con un error.

Esta función está disponible para la versión 2.1.0 y versiones posteriores de este componente.

Predeterminado: 131072 (128 KB)

Rango válido: valor máximo de 2621440 (2,5 MB)

maxPublishRetry

(Opcional) El número máximo de veces que se puede volver a intentar un mensaje que no se publica. Puede especificar que se vuelva -1 a intentar un número ilimitado de veces.

Esta función está disponible para la versión 2.1.0 y versiones posteriores de este componente.

Valor predeterminado: 100

spooler

(Opcional) La configuración del spooler MQTT para el dispositivo central Greengrass. Este objeto contiene la siguiente información:

storageType

El tipo de almacenamiento para almacenar mensajes. Si storageType está establecido enDisk, se pluginName puede configurar. Puede especificar Memory o Disk.

Esta función está disponible para la versión 2.11.0 y versiones posteriores del componente núcleo de Greengrass.

importante

Si el spooler de MQTT storageType está configurado en Disk y desea degradar Greengrass Nucleus de la versión 2.11.x a una versión anterior, debe volver a cambiar la configuración a. Memory La única configuración compatible con las storageType versiones 2.10.x y anteriores del núcleo de Greengrass es. Memory Si no se siguen estas instrucciones, se puede romper la bobina. Esto provocaría que su dispositivo principal de Greengrass no pudiera enviar mensajes MQTT al. Nube de AWS

Valor predeterminado: Memory

pluginName

(Opcional) El nombre del componente del complemento. Este componente solo se usará si storageType está configurado enDisk. Esta opción está predeterminada aws.greengrass.DiskSpooler y usará la proporcionada por Bobina de disco Greengrass.

Esta función está disponible para la versión 2.11.0 y versiones posteriores del componente núcleo de Greengrass.

Valor predeterminado: "aws.greengrass.DiskSpooler"

maxSizeInBytes

(Opcional) El tamaño máximo de la memoria caché en la que el dispositivo principal almacena los mensajes MQTT sin procesar. Si la caché está llena, se rechazan los mensajes nuevos.

Predeterminado: 2621440 (2,5 MB)

keepQos0WhenOffline

(Opcional) Puede agrupar los mensajes QoS 0 de MQTT que el dispositivo principal recibe mientras está fuera de línea. Si estableces esta opcióntrue, el dispositivo principal almacena los mensajes de QoS 0 que no puede enviar mientras está desconectado. Si estableces esta opciónfalse, el dispositivo principal descartará estos mensajes. El dispositivo principal siempre envía los mensajes de QoS 1 a menos que la bobina esté llena.

Valor predeterminado: false

version

(Opcional) La versión de MQTT. Puede especificar mqtt3 o mqtt5.

Esta función está disponible para la versión 2.10.0 y versiones posteriores del componente núcleo de Greengrass.

Valor predeterminado: mqtt5

receiveMaximum

(Opcional) El número máximo de paquetes QoS1 no confirmados que el bróker puede enviar.

Esta función está disponible para la versión 2.10.0 y versiones posteriores del componente núcleo de Greengrass.

Valor predeterminado: 100

sessionExpirySeconds

(Opcional) La cantidad de tiempo en segundos que puede solicitar para que dure una sesión desde IoT Core. El valor predeterminado es el tiempo máximo admitido por AWS IoT Core.

Esta función está disponible para la versión 2.10.0 y versiones posteriores del componente núcleo de Greengrass.

Valor predeterminado: 604800 (7 days)

minimumReconnectDelaySeconds

(Opcional) Una opción para el comportamiento de reconexión. El tiempo mínimo en segundos para que MQTT se vuelva a conectar.

Esta función está disponible para la versión 2.10.0 y versiones posteriores del componente núcleo de Greengrass.

Valor predeterminado: 1

maximumReconnectDelaySeconds

(Opcional) Una opción para el comportamiento de reconexión. El tiempo máximo en segundos que tarda MQTT en volver a conectarse.

Esta función está disponible para la versión 2.10.0 y versiones posteriores del componente núcleo de Greengrass.

Valor predeterminado: 120

minimumConnectedTimeBeforeRetryResetSeconds

(Opcional) Una opción para el comportamiento de reconexión. Cantidad de tiempo en segundos que una conexión debe estar activa antes de que el retraso en el reintento se restablezca al mínimo.

Esta función está disponible para la versión 2.10.0 y versiones posteriores del componente núcleo de Greengrass.

Valor predeterminado: 30

jvmOptions

(Opcional) Las opciones de JVM que se utilizarán para ejecutar el software principal. AWS IoT Greengrass Para obtener información sobre las opciones de JVM recomendadas para ejecutar el software AWS IoT Greengrass Core, consulte. Controle la asignación de memoria con las opciones de JVM

importante

Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.

iotDataEndpoint

El punto final AWS IoT de datos para su. Cuenta de AWS

Cuando ejecuta el software AWS IoT Greengrass Core con la --provision true opción, el software obtiene sus datos y credenciales de los puntos finales AWS IoT y los coloca en el componente núcleo.

iotCredEndpoint

El punto final de AWS IoT credenciales para su. Cuenta de AWS

Cuando ejecuta el software AWS IoT Greengrass Core con la --provision true opción, el software obtiene sus datos y credenciales de los puntos finales AWS IoT y los establece en el componente núcleo.

greengrassDataPlaneEndpoint

Esta función está disponible en la versión 2.7.0 y versiones posteriores de este componente.

Para obtener más información, consulte Utilice un certificado de dispositivo firmado por una entidad emisora de certificados privada.

greengrassDataPlanePort

Esta función está disponible en la versión 2.0.4 y versiones posteriores de este componente.

(Opcional) El puerto que se utilizará para las conexiones del plano de datos. Para obtener más información, consulte Realizar la conexión en el puerto 443 o a través de un proxy de red.

importante

Debe especificar un puerto en el que el dispositivo pueda realizar conexiones salientes. Si especificas un puerto que está bloqueado, el dispositivo no podrá conectarse AWS IoT Greengrass para recibir despliegues.

Puede elegir entre las siguientes opciones:

  • 443

  • 8443

Valor predeterminado: 8443

awsRegion

El que se Región de AWS debe usar.

runWithDefault

El usuario del sistema que se utilizará para ejecutar los componentes.

importante

Al implementar un cambio en este parámetro de configuración, el software AWS IoT Greengrass principal se reinicia para que el cambio surta efecto.

Este objeto contiene la siguiente información:

posixUser

El nombre o ID del usuario del sistema y, opcionalmente, del grupo de sistemas que el dispositivo principal utiliza para ejecutar los componentes genéricos y de Lambda. Especifique el usuario y el grupo separados por dos puntos (:) con el siguiente formato: user:group. El grupo es opcional. Si no especifica un grupo, el software AWS IoT Greengrass Core utiliza el grupo principal para el usuario. Por ejemplo, puede especificar ggc_user o ggc_user:ggc_group. Para obtener más información, consulte Configure el usuario que ejecuta los componentes.

Al ejecutar el instalador del software AWS IoT Greengrass Core con la --component-default-user ggc_user:ggc_group opción, el software establece este parámetro en el componente core.

windowsUser

Esta función está disponible en la versión 2.5.0 y versiones posteriores de este componente.

El nombre del usuario de Windows que se va a utilizar para ejecutar este componente en los dispositivos principales de Windows. El usuario debe estar en todos los dispositivos principales de Windows y su nombre y contraseña deben almacenarse en la instancia del administrador de credenciales de la LocalSystem cuenta. Para obtener más información, consulte Configure el usuario que ejecuta los componentes.

Al ejecutar el instalador de software AWS IoT Greengrass Core con la --component-default-user ggc_user opción, el software establece este parámetro en el componente core.

systemResourceLimits

Esta función está disponible en la versión 2.4.0 y versiones posteriores de este componente. AWS IoT Greengrass actualmente no admite esta función en los dispositivos principales de Windows.

Los límites de recursos del sistema se aplicarán de forma predeterminada a los procesos de componentes de Lambda genéricos y no contenerizados. Puede anular los límites de recursos del sistema para los componentes individuales al crear una implementación. Para obtener más información, consulte Configure los límites de recursos del sistema para los componentes.

Este objeto contiene la siguiente información:

cpus

La cantidad máxima de tiempo de CPU que los procesos de cada componente pueden utilizar en el dispositivo principal. El tiempo total de CPU de un dispositivo principal equivale a la cantidad de núcleos de CPU del dispositivo. Por ejemplo, en un dispositivo principal con 4 núcleos de CPU, puede establecer este valor 2 para limitar los procesos de cada componente al 50 por ciento de uso de cada núcleo de CPU. En un dispositivo con 1 núcleo de CPU, puede establecer este valor 0.25 para limitar los procesos de cada componente al 25 por ciento de uso de la CPU. Si estableces este valor en un número mayor que el número de núcleos de la CPU, el software AWS IoT Greengrass Core no limita el uso de la CPU de los componentes.

memory

La cantidad máxima de RAM (en kilobytes) que los procesos de cada componente pueden utilizar en el dispositivo principal.

s3EndpointType

(Opcional) El tipo de punto final S3. Este parámetro solo se aplicará a la región EE.UU. Este (Virginia del Norteus-east-1) (). Se ignorará la configuración de este parámetro desde cualquier otra región. Puede elegir entre las siguientes opciones:

  • REGIONAL— El cliente S3 y la URL prefirmada utilizan el punto final regional.

  • GLOBAL— El cliente S3 y la URL prefirmada utilizan el punto final heredado.

Valor predeterminado: GLOBAL

logging

(Opcional) La configuración de registro del dispositivo principal. Para obtener más información sobre cómo configurar y usar los registros de Greengrass, consulte. Supervisar AWS IoT Greengrass registros

Este objeto contiene la siguiente información:

level

(Opcional) El nivel mínimo de mensajes de registro que se van a generar.

Elija uno de los siguientes niveles de registro, que se muestran aquí en orden de niveles:

  • DEBUG

  • INFO

  • WARN

  • ERROR

Valor predeterminado: INFO

format

(Opcional) El formato de datos de los registros. Puede elegir entre las siguientes opciones:

  • TEXT— Elija esta opción si desea ver los registros en forma de texto.

  • JSON— Elija esta opción si desea ver los registros con el comando logs de la CLI de Greengrass o interactuar con los registros mediante programación.

Valor predeterminado: TEXT

outputType

(Opcional) El tipo de salida de los registros. Puede elegir entre las siguientes opciones:

  • FILE— El software AWS IoT Greengrass Core envía los registros a los archivos del directorio que especifiqueoutputDirectory.

  • CONSOLE— El software AWS IoT Greengrass Core imprime los registros enstdout. Seleccione esta opción para ver los registros a medida que los imprime el dispositivo principal.

Valor predeterminado: FILE

fileSizeKB

(Opcional) El tamaño máximo de cada archivo de registro (en kilobytes). Cuando un archivo de registro supera este tamaño máximo de archivo, el software AWS IoT Greengrass principal crea un nuevo archivo de registro.

Este parámetro solo se aplica cuando se especifica FILE paraoutputType.

Valor predeterminado: 1024

totalLogsSizeKB

(Opcional) El tamaño total máximo de los archivos de registro (en kilobytes) de cada componente, incluido el núcleo de Greengrass. Los archivos de registro del núcleo de Greengrass también incluyen registros de los componentes del complemento. Cuando el tamaño total de los archivos de registro de un componente supera este tamaño máximo, el software AWS IoT Greengrass Core elimina los archivos de registro más antiguos de ese componente.

Este parámetro equivale al parámetro de límite de espacio en disco del componente del administrador de registros (diskSpaceLimit), que puede especificar para el núcleo (sistema) de Greengrass y para cada componente. El software AWS IoT Greengrass Core utiliza el mínimo de los dos valores como tamaño de registro total máximo para el núcleo de Greengrass y cada componente.

Este parámetro se aplica solo cuando se especifica FILE paraoutputType.

Valor predeterminado: 10240

outputDirectory

(Opcional) El directorio de salida de los archivos de registro.

Este parámetro solo se aplica cuando se especifica FILE paraoutputType.

Predeterminado:/greengrass/v2/logs, donde /greengrass/v2 está la carpeta AWS IoT Greengrass raíz.

fleetstatus

Este parámetro está disponible en la versión 2.1.0 y versiones posteriores de este componente.

(Opcional) La configuración del estado de la flota para el dispositivo principal.

Este objeto contiene la siguiente información:

periodicStatusPublishIntervalSeconds

(Opcional) El tiempo (en segundos) transcurrido desde que el dispositivo principal publica el estado del dispositivo en el Nube de AWS.

Mínimo: 86400 (24 horas)

Predeterminado: 86400 (24 horas)

telemetry

(Opcional) La configuración de telemetría del estado del sistema para el dispositivo principal. Para obtener más información sobre las métricas de telemetría y cómo actuar en función de los datos de telemetría, consulte. Recopile datos de telemetría del estado del sistema de los dispositivos principales AWS IoT Greengrass

Este objeto contiene la siguiente información:

enabled

(Opcional) Puede activar o desactivar la telemetría.

Valor predeterminado: true

periodicAggregateMetricsIntervalSeconds

(Opcional) El intervalo (en segundos) durante el que el dispositivo principal agrega las métricas.

Si establece este valor por debajo del valor mínimo admitido, el núcleo utilizará el valor predeterminado en su lugar.

Mínimo: 3600

Valor predeterminado: 3600

periodicPublishMetricsIntervalSeconds

(Opcional) El intervalo de tiempo (en segundos) entre el que el dispositivo principal publica las métricas de telemetría en el. Nube de AWS

Si establece este valor por debajo del valor mínimo admitido, el núcleo utilizará el valor predeterminado en su lugar.

Mínimo: 86400

Valor predeterminado: 86400

deploymentPollingFrequencySeconds

(Opcional) El período en segundos durante el que se deben sondear las notificaciones de despliegue.

Valor predeterminado: 15

componentStoreMaxSizeBytes

(Opcional) El tamaño máximo en disco del almacén de componentes, que incluye las recetas y los artefactos de los componentes.

Predeterminado: 10000000000 (10 GB)

platformOverride

(Opcional) Un diccionario de atributos que identifica la plataforma del dispositivo principal. Úselo para definir los atributos de plataforma personalizados que las recetas de componentes pueden usar para identificar el ciclo de vida y los artefactos correctos del componente. Por ejemplo, puede definir un atributo de capacidad de hardware para implementar solo el conjunto mínimo de artefactos necesarios para la ejecución de un componente. Para obtener más información, consulte el parámetro de plataforma del manifiesto en la receta del componente.

También puede usar este parámetro para anular los atributos os y de architecture plataforma del dispositivo principal.

httpClient

Este parámetro está disponible en la versión 2.5.0 y versiones posteriores de este componente.

(Opcional) La configuración del cliente HTTP para el dispositivo principal. Estas opciones de configuración se aplican a todas las solicitudes HTTP realizadas por este componente. Si un dispositivo principal funciona en una red más lenta, puede aumentar estos tiempos de espera para evitar que se agoten los tiempos de espera de las solicitudes HTTP.

Este objeto contiene la siguiente información:

connectionTimeoutMs

(Opcional) El tiempo (en milisegundos) que se debe esperar a que se abra una conexión antes de que se agote el tiempo de espera de la solicitud de conexión.

Predeterminado: 2000 (2 segundos)

socketTimeoutMs

(Opcional) La cantidad de tiempo (en milisegundos) que se debe esperar a que los datos se transfieran a través de una conexión abierta antes de que se agote el tiempo de espera de la conexión.

Predeterminado: 30000 (30 segundos)

ejemplo Ejemplo: actualización de la combinación de configuraciones
{ "iotRoleAlias": "GreengrassCoreTokenExchangeRoleAlias", "networkProxy": { "noProxyAddresses": "http://192.168.0.1,www.example.com", "proxy": { "url": "http://my-proxy-server:1100", "username": "Mary_Major", "password": "pass@word1357" } }, "mqtt": { "port": 443 }, "greengrassDataPlanePort": 443, "jvmOptions": "-Xmx64m", "runWithDefault": { "posixUser": "ggc_user:ggc_group" } }

Archivo de registro local

Este componente utiliza el siguiente archivo de registro.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
Para ver los registros de este componente
  • Ejecute el siguiente comando en el dispositivo principal para ver el archivo de registro de este componente en tiempo real. Sustituya /greengrass/v2 o C:\greengrass\v2 por la ruta a la carpeta AWS IoT Greengrass raíz.

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Registros de cambios

En la siguiente tabla se describen los cambios en cada versión del componente.

Versión

Cambios

2.12.6

Mejoras y correcciones de errores
  • Corrige un problema que provocaba un bloqueo al arrancar algunos procesadores ARMv8, incluido el Jetson Nano.

2.12.5

Mejoras y correcciones de errores
  • Soluciona un problema que provocaba que, en ocasiones, la reversión de la implementación se bloqueara al revertir un componente previamente dañado con dependencias sólidas.

  • Soluciona un problema por el que el núcleo no publicaba actualizaciones de estado tras el aprovisionamiento de la flota.

  • Añade reintentos a la GetDeploymentConfiguration API después de recibir 404 errores.

2.12.4

Mejoras y correcciones de errores
  • Soluciona un problema por el que el núcleo entra en un punto muerto durante el arranque en algunos dispositivos Linux.

2.12.3

aviso

Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.

Mejoras y correcciones de errores

  • Soluciona un problema que provocaba que el núcleo no mostrara el estado correcto de los componentes después del relanzamiento del núcleo y durante la recuperación de los componentes.

  • Corrección de errores y mejoras generales.

2.12.2

Mejoras y correcciones de errores
  • Soluciona un problema por el que los registros antiguos no se limpiaban correctamente.

  • Corrección de errores y mejoras generales.

2.12.1

Mejoras y correcciones de errores
  • Soluciona un problema por el que el núcleo podía duplicar las suscripciones de MQTT por temas de despliegue, lo que provocaba más registros y publicaciones de MQTT.

2.12.0

Nuevas características
  • Le permite ejecutar los pasos del ciclo de vida del arranque como parte de una implementación de reversión.

2.11.3

Mejoras y correcciones de errores
  • Soluciona un problema en el núcleo que podía iniciar incorrectamente un componente cuando fallaban sus dependencias.

Nuevas características
  • Añade un tipo de punto final s3 configurable.

2.11.2

Mejoras y correcciones de errores
  • Soluciona un problema en el cliente Core MQTT 5 que podía aparecer desconectado cuando se utilizaban un gran número de suscripciones (> 50).

  • Añade un reintento por el error TCP del docker dial.

2.11.1

Mejoras y correcciones de errores
  • Soluciona un problema por el que el núcleo no se iniciaba si se producía un error en una tarea de arranque y el archivo de metadatos de despliegue estaba dañado.

  • Soluciona un problema por el que los componentes Lambda bajo demanda no se incluyen en las actualizaciones del estado de la implementación.

  • Añade compatibilidad con los identificadores de política de autorización duplicados.

2.11.0

Nuevas características
  • Permite cancelar una implementación local.

  • Le permite configurar una política de gestión de errores para una implementación local.

  • Añade compatibilidad con un complemento de spooler de discos.

2.10.3

Mejoras y correcciones de errores
  • Soluciona un problema por el que Greengrass no se suscribe a las notificaciones de despliegue cuando utiliza el proveedor PKCS #11.

2.10.2

Mejoras y correcciones de errores
  • Permite analizar los ciclos de vida de los componentes sin distinguir entre mayúsculas y minúsculas.

  • Soluciona un problema por el que la variable PATH del entorno no se recreaba correctamente.

  • Corrige la codificación URI del proxy para los componentes, incluido el administrador de flujos para los nombres de usuario con caracteres especiales.

2.10.1

Mejoras y correcciones de errores
  • Corrige un problema que podía provocar un bloqueo al arrancar algunos procesadores ARMv8, incluido el Jetson Nano.

  • Greengrass ya no cierra el estándar de un componente, lo que revierte el comportamiento anterior a la versión 2.10.0

2.10.0

Nuevas características
  • Añade interpolateComponentConfiguration compatibilidad con la expresión regular vacía. Greengrass ahora interpola desde el objeto de configuración raíz.

  • Añade compatibilidad con MQTT5.

  • Añade un mecanismo para cargar los componentes del plugin rápidamente sin necesidad de escanearlos.

  • Permite a Greengrass ahorrar espacio en disco al eliminar las imágenes de Docker no utilizadas.

Mejoras y correcciones de errores
  • Soluciona un problema por el que la reversión dejaba determinados valores de configuración de una implementación en su lugar.

  • Soluciona un problema por el que el núcleo de Greengrass valida una secuencia de AWS dominios en puntos finales de AWS datos y sin credenciales personalizados.

  • Actualiza la resolución de dependencias multigrupo para volver a resolver todas las dependencias de los grupos mediante la Nube de AWS negociación, en lugar de limitarlas a la versión activa. Esta actualización también elimina el código de error de implementación. INSTALLED_COMPONENT_NOT_FOUND

  • Actualiza el núcleo de Greengrass para omitir la descarga de imágenes de Docker cuando ya existen localmente.

  • Actualiza el núcleo de Greengrass para reiniciar el paso de instalación de un componente antes de que se agote el tiempo de espera.

  • Correcciones y mejoras menores adicionales.

2.9.6

Mejoras y correcciones de errores
  • Corrige un problema por el que una implementación de Greengrass fallaba con el error LAUNCH_DIRECTORY_CORRUPTED y un posterior reinicio del dispositivo no podía iniciar Greengrass. Este error puede producirse al mover el dispositivo Greengrass entre varios grupos de cosas con implementaciones que requieren el reinicio de Greengrass.

2.9.5

Nuevas características
  • Añade compatibilidad con la verificación de firmas del software Greengrass Nucleus.

Mejoras y correcciones de errores
  • Soluciona un problema por el que una implementación falla cuando la región de metadatos de la receta local no coincide con la región de lanzamiento del núcleo de Greengrass. El núcleo de Greengrass ahora renegocia con la nube cuando esto ocurre.

  • Soluciona un problema por el que el spooler de mensajes de MQTT se llenaba y nunca eliminaba los mensajes.

  • Correcciones y mejoras menores adicionales.

2.9.4

Mejoras y correcciones de errores
  • Comprueba si hay un mensaje nulo antes de eliminar los mensajes de QOS 0.

  • Trunca los valores de detalle del estado del trabajo si superan el límite de 1024 caracteres.

  • Actualiza el script de arranque para Windows para que lea correctamente la ruta raíz de Greengrass si esa ruta incluye espacios.

  • Actualiza la suscripción para AWS IoT Core que se eliminen los mensajes de los clientes si no se envió la respuesta de la suscripción.

  • Garantiza que el núcleo cargue su configuración a partir de archivos de respaldo cuando el archivo de configuración principal esté dañado o falte.

2.9.3

Mejoras y correcciones de errores
  • Garantiza que los ID de los clientes de MQTT no estén duplicados.

  • Añade una lectura y escritura de archivos más robustas para evitar la corrupción y recuperarse de ella.

  • Reintenta extraer la imagen del docker en caso de errores específicos relacionados con la red.

  • Añade la noProxyAddresses opción de conexión MQTT.

2.9.2

Mejoras y correcciones de errores
  • Soluciona un problema por el que la configuración interpolateComponentConfiguration no se aplicaba a una implementación en curso.

  • Utiliza OSHI para enumerar todos los procesos secundarios.

2.9.1

Mejoras y correcciones de errores
  • Añade una corrección por la que Greengrass se reinicia si una implementación elimina un componente del complemento.

2.9.0

Nuevas características
  • Añade la posibilidad de crear subdespliegues que reintenten los despliegues con un subconjunto de dispositivos más pequeño. Esta función crea una forma más eficiente de probar y resolver las implementaciones fallidas.

Mejoras y correcciones de errores
  • Mejora la compatibilidad con los sistemas que no tienen useraddgroupadd, yusermod.

  • Mejoras y correcciones menores adicionales.

2.8.1

Mejoras y correcciones de errores
  • Soluciona un problema por el que los códigos de error de despliegue no se generaban correctamente a partir de errores de la API de Greengrass.

  • Soluciona un problema que provocaba que las actualizaciones del estado de la flota enviaran información inexacta cuando un componente alcanzaba un ERRORED estado determinado durante un despliegue.

  • Soluciona un problema por el que las implementaciones no se podían completar cuando Greengrass tenía más de 50 suscripciones existentes.

2.8.0

Nuevas características
  • Actualiza el núcleo de Greengrass para informar sobre una respuesta sobre el estado del despliegue que incluye códigos de error detallados cuando se produce un problema al implementar los componentes en un dispositivo central. Para obtener más información, consulte Códigos de error de implementación detallados.

  • Actualiza el núcleo de Greengrass para informar de una respuesta al estado de salud de un componente que incluye códigos de error detallados cuando un componente entra en el estado BROKEN oERRORED. Para obtener más información, consulte Códigos de estado detallados de los componentes.

  • Amplía los campos de los mensajes de estado para mejorar la información de disponibilidad de los dispositivos en la nube.

  • Mejora la solidez del servicio de estado de la flota.

Mejoras y correcciones de errores
  • Permite volver a instalar un componente dañado cuando cambia su configuración.

  • Soluciona un problema por el que el reinicio del núcleo durante la implementación de bootstrap provoca un error en la implementación.

  • Soluciona un problema en Windows por el que la instalación falla cuando una ruta raíz contiene espacios.

  • Soluciona un problema por el que un componente que se apagaba durante una implementación utilizaba el script de apagado de la nueva versión.

  • Varias mejoras de apagado.

  • Correcciones y mejoras menores adicionales.

2.7.0

Nuevas características
  • Actualiza el núcleo de Greengrass para enviar actualizaciones de estado a la AWS IoT Greengrass nube cuando el dispositivo principal aplica un despliegue local.

  • Añade compatibilidad con los certificados de cliente firmados por una autoridad de certificación (CA) personalizada, en la que la CA no esté registrada. AWS IoT Para utilizar esta función, puede establecer la nueva opción greengrassDataPlaneEndpoint de configuración eniotdata. Para obtener más información, consulte Utilice un certificado de dispositivo firmado por una entidad emisora de certificados privada.

Mejoras y correcciones de errores
  • Soluciona un problema por el que el núcleo de Greengrass retrasa un despliegue en determinadas situaciones cuando el núcleo se detiene o se reinicia. El núcleo ahora reanuda su despliegue después de que se reinicie.

  • Actualiza el instalador de Greengrass para que respete el --start argumento cuando se especifica configurar el software como un servicio del sistema.

  • Actualiza el comportamiento SubscribeToComponentUpdates para establecer el ID de despliegue en los casos en los que el núcleo actualiza un componente.

  • Correcciones y mejoras menores adicionales.

2.6.0

Nuevas características
Mejoras y correcciones de errores
  • Soluciona un problema por el que los componentes dependientes no reaccionaban cuando sus dependencias principales se reiniciaban o cambiaban de estado en determinadas situaciones.

  • Mejora los mensajes de error que el dispositivo principal envía al servicio AWS IoT Greengrass en la nube cuando se produce un error en la implementación.

  • Soluciona un problema por el que el núcleo de Greengrass desplegaba una cosa dos veces en determinadas situaciones cuando el núcleo se reiniciaba.

  • Correcciones y mejoras menores adicionales. Para obtener más información, consulte las versiones en GitHub.

2.5.6

Nuevas características
  • Añade compatibilidad con los módulos de seguridad de hardware que utilizan claves ECC. Puede utilizar un módulo de seguridad de hardware (HSM) para almacenar de forma segura la clave privada y el certificado del dispositivo. Para obtener más información, consulte Integración de la seguridad de hardware.

Mejoras y correcciones de errores
  • Soluciona un problema por el que la implementación nunca se completa cuando se implementa un componente con un script de instalación defectuoso en determinadas situaciones.

  • Mejora el rendimiento durante el inicio.

  • Mejoras y correcciones menores adicionales.

2.5.5

Nuevas características
  • Añade la variable de GG_ROOT_CA_PATH entorno para los componentes, de forma que pueda acceder al certificado raíz de la entidad emisora de certificados (CA) en los componentes personalizados.

Mejoras y correcciones de errores
  • Añade compatibilidad con dispositivos Windows que utilizan un idioma de visualización distinto del inglés.

  • Actualiza la forma en que el núcleo de Greengrass analiza los argumentos booleanos del instalador, de modo que puede especificar un argumento booleano sin un valor booleano para especificar un valor. true Por ejemplo, ahora puede especificar en --provision lugar de instalar con el aprovisionamiento automático de recursos. --provision true

  • Soluciona un problema por el que el dispositivo principal no informaba de su estado al servicio en la AWS IoT Greengrass nube después del aprovisionamiento en determinadas situaciones.

  • Correcciones y mejoras menores adicionales.

2.5.4

Mejoras y correcciones de errores
  • Corrección de errores y mejoras generales.

2.5.3

Nuevas características
  • Añade compatibilidad con la integración de la seguridad del hardware. Puede utilizar un módulo de seguridad de hardware (HSM) para almacenar de forma segura la clave privada y el certificado del dispositivo. Para obtener más información, consulte Integración de la seguridad de hardware.

Mejoras y correcciones de errores
  • Corrige un problema con las excepciones de tiempo de ejecución cuando el núcleo establece conexiones con AWS IoT Core MQTT.

2.5.2

Mejoras y correcciones de errores
  • Soluciona un problema por el que, una vez actualizado el núcleo de Greengrass, el servicio de Windows no se puede iniciar de nuevo después de detenerlo o reiniciar el dispositivo.

2.5.1

aviso

Esta versión ya no está disponible. Las mejoras de esta versión están disponibles en versiones posteriores de este componente.

Mejoras y correcciones de errores
  • Añade compatibilidad con las versiones de 32 bits del entorno de ejecución de Java (JRE) en Windows.

  • Cambia el comportamiento de eliminación de grupos de cosas en los dispositivos principales cuya AWS IoT política no concede el greengrass:ListThingGroupsForCoreDevice permiso. Con esta versión, la implementación continúa, registra una advertencia y no elimina componentes al quitar el dispositivo principal de un grupo de cosas. Para obtener más información, consulte Implemente AWS IoT Greengrass componentes en los dispositivos.

  • Corrige un problema con las variables de entorno del sistema que el núcleo de Greengrass pone a disposición de los procesos de los componentes de Greengrass. Ahora puede reiniciar un componente para que utilice las variables de entorno del sistema más recientes.

2.5.0

Nuevas características
  • Añade compatibilidad con los dispositivos principales que ejecutan Windows.

  • Cambia el comportamiento de la eliminación de grupos de cosas. Con esta versión, puede eliminar un dispositivo principal de un grupo de cosas para desinstalar los componentes de ese grupo de cosas en la siguiente implementación.

    Como resultado de este cambio, la AWS IoT política de un dispositivo principal debe tener el greengrass:ListThingGroupsForCoreDevice permiso. Si usó el instalador de software AWS IoT Greengrass Core para aprovisionar recursos, la AWS IoT política predeterminada lo permitegreengrass:*, e incluye este permiso. Para obtener más información, consulte Autenticación y autorización de dispositivos en AWS IoT Greengrass.

  • Añade compatibilidad con las configuraciones de proxy HTTPS. Para obtener más información, consulte Realizar la conexión en el puerto 443 o a través de un proxy de red.

  • Añade el nuevo parámetro windowsUser de configuración. Puede usar este parámetro para especificar el usuario predeterminado que se utilizará para ejecutar los componentes en un dispositivo principal de Windows. Para obtener más información, consulte Configure el usuario que ejecuta los componentes.

  • Agrega las nuevas opciones de httpClient configuración que puede usar para personalizar los tiempos de espera de las solicitudes HTTP a fin de mejorar el rendimiento en redes lentas. Para obtener más información, consulte el parámetro de configuración HttpClient.

Mejoras y correcciones de errores
  • Corrige la opción del ciclo de vida de arranque para reiniciar el dispositivo principal desde un componente.

  • Añade compatibilidad con guiones en las variables de receta.

  • Corrige la autorización de IPC para los componentes de la función Lambda bajo demanda.

  • Mejora los mensajes de registro y cambia los registros no críticos de un DEBUG nivel INFO a otro, por lo que los registros son más útiles.

  • Elimina el iot:DescribeCertificate permiso de la función de intercambio de fichas predeterminada que el núcleo de Greengrass crea al instalar el software AWS IoT Greengrass Core con aprovisionamiento automático. El núcleo de Greengrass no utiliza este permiso.

  • Corrige un problema por el que el script de aprovisionamiento automático no requería el iam:GetPolicy permiso si estaba iam:CreatePolicy disponible para la misma política.

  • Correcciones y mejoras menores adicionales.

2.4.0

Nuevas características
Mejoras y correcciones de errores
  • Actualiza la configuración de registro al inicio. Esto corrige un problema por el que la configuración de registro no se aplicaba al inicio.

  • Actualiza el enlace simbólico del cargador de núcleos para que apunte al almacén de componentes de la carpeta raíz de Greengrass durante la instalación. Esta actualización le permite eliminar el archivo JAR y otros artefactos del núcleo que se descargan al instalar el software AWS IoT Greengrass Core.

  • Correcciones y mejoras menores adicionales. Para obtener más información, consulte las versiones en GitHub.

2.3.0

Nuevas características
  • Añade la variable de iot:thingName receta. Puedes usar esta variable de receta para obtener el nombre del dispositivo AWS IoT principal en una receta. Para obtener más información, consulte Variables de receta.

Mejoras y correcciones de errores
  • Correcciones y mejoras menores adicionales. Para obtener más información, consulte las versiones en GitHub.

2.2.0

Nuevas características
  • Añade operaciones de IPC para la gestión clandestina local.

Mejoras y correcciones de errores
  • Reduce el tamaño del archivo JAR.

  • Reduce el uso de memoria.

  • Soluciona problemas por los que la configuración del registro no se actualizaba en determinados casos.

  • Correcciones y mejoras menores adicionales. Para obtener más información, consulte las versiones en GitHub.

2.1.0

Nuevas características
  • Admite la descarga de imágenes de Docker desde repositorios privados en Amazon ECR.

  • Añade los siguientes parámetros para personalizar la configuración de MQTT en los dispositivos principales:

    • maxInFlightPublishes— El número máximo de mensajes QoS 1 de MQTT no confirmados que pueden estar en vuelo al mismo tiempo.

    • maxPublishRetry— El número máximo de veces que se puede volver a intentar un mensaje que no se publica.

  • Añade el parámetro fleetstatusservice de configuración para configurar el intervalo en el que el dispositivo principal publica el estado del Nube de AWS dispositivo en.

  • Correcciones y mejoras menores adicionales. Para obtener más información, consulte las versiones en GitHub.

Mejoras y correcciones de errores
  • Corrige un problema que provocaba que los despliegues ocultos se duplicaran al reiniciarse el núcleo.

  • Corrige un problema que provocaba que el núcleo se bloqueara cuando detectaba una excepción de carga de servicio.

  • Mejora la resolución de dependencias de componentes para evitar que se produzca un error en una implementación que incluya una dependencia circular.

  • Corrige un problema que impedía volver a implementar un componente de un complemento si ese componente se había eliminado previamente del dispositivo principal.

  • Se ha corregido un problema que provocaba que la variable de HOME entorno se estableciera en el /greengrass/v2/work directorio de los componentes de Lambda o de los componentes que se ejecutan como root. La HOME variable ahora está correctamente configurada en el directorio principal del usuario que ejecuta el componente.

  • Correcciones y mejoras menores adicionales. Para obtener más información, consulte las versiones en GitHub.

2.0.5

Mejoras y correcciones de errores
  • Enruta correctamente el tráfico a través de un proxy de red configurado al descargar los componentes AWS proporcionados.

  • Utilice el punto final correcto del plano de datos de Greengrass en las regiones de AWS China.

2.0.4

Nuevas características
  • Habilita el tráfico HTTPS a través del puerto 443. Puede usar el nuevo parámetro de greengrassDataPlanePort configuración de la versión 2.0.4 del componente núcleo para configurar la comunicación HTTPS para que viaje a través del puerto 443 en lugar del puerto predeterminado 8443. Para obtener más información, consulte Configure HTTPS a través del puerto 443.

  • Añade la variable de receta de ruta de trabajo. Puede utilizar esta variable de receta para obtener la ruta a las carpetas de trabajo de los componentes, que puede utilizar para compartir archivos entre los componentes y sus dependencias. Para obtener más información, consulte la variable de receta de ruta de trabajo.

Mejoras y correcciones de errores
  • Impide la creación de la política de roles de intercambio de fichas AWS Identity and Access Management (IAM) si ya existe una política de roles.

    Como resultado de este cambio, el instalador ahora necesita la iam:GetPolicy y sts:GetCallerIdentity cuando se ejecuta con --provision true ella. Para obtener más información, consulte Política de IAM mínima para que el instalador aprovisione recursos.

  • Gestiona correctamente la cancelación de una implementación que aún no se ha registrado correctamente.

  • Actualiza la configuración para eliminar las entradas antiguas con marcas de tiempo más recientes al anular una implementación.

  • Correcciones y mejoras menores adicionales. Para obtener más información, consulte las versiones en GitHub.

2.0.3

Versión inicial.