Configure un nuevo dispositivo central V2 para probar las aplicaciones V1 - 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.

Configure un nuevo dispositivo central V2 para probar las aplicaciones V1

Configure un nuevo dispositivo AWS IoT Greengrass V2 principal para implementar y probar los componentes y AWS Lambda funciones AWS proporcionados para sus AWS IoT Greengrass V1 aplicaciones. También puede usar este dispositivo principal V2 para desarrollar y probar componentes Greengrass personalizados adicionales que ejecutan procesos nativos en los dispositivos principales. Después de probar sus aplicaciones en un dispositivo de núcleo V2, puede actualizar sus dispositivos principales V1 existentes a V2 e implementar los componentes de V2 que proporcionan la funcionalidad de la V1.

Paso 1: Instalar AWS IoT Greengrass V2 en un dispositivo nuevo

Instale el software AWS IoT Greengrass Core v2.x en un dispositivo nuevo. Puede seguir el tutorial de introducción para configurar un dispositivo y aprender a desarrollar e implementar componentes. En este tutorial, se utiliza el aprovisionamiento automático para configurar rápidamente un dispositivo. Cuando instale el software AWS IoT Greengrass Core v2.x, especifique el --deploy-dev-tools argumento para implementar la CLI de Greengrass, de modo que pueda desarrollar, probar y depurar componentes directamente en el dispositivo. Para obtener más información sobre otras opciones de instalación, incluida la forma de instalar el software AWS IoT Greengrass Core detrás de un proxy o mediante un módulo de seguridad de hardware (HSM), consulte. Instalación del software AWS IoT Greengrass Core

(Opcional) Habilita el registro en Amazon CloudWatch Logs

Para permitir que un dispositivo principal V2 cargue registros en Amazon CloudWatch Logs, puede implementar el componente AWS de administrador de registros proporcionado. Puede utilizar CloudWatch los registros para ver los registros de los componentes, de forma que pueda depurar y solucionar problemas sin tener acceso al sistema de archivos del dispositivo principal. Para obtener más información, consulte Supervisar AWS IoT Greengrass registros.

Paso 2: Crear e implementar AWS IoT Greengrass V2 componentes para migrar aplicaciones AWS IoT Greengrass V1

Puede ejecutar la mayoría de AWS IoT Greengrass V1 las aplicaciones en ellas AWS IoT Greengrass V2. Puede importar funciones Lambda como componentes en AWS IoT Greengrass V2 los que se ejecutan y puede usar los componentes AWS proporcionados que ofrecen la misma funcionalidad que los conectores. AWS IoT Greengrass

También puede desarrollar componentes personalizados para crear cualquier función o tiempo de ejecución que se ejecute en los dispositivos principales de Greengrass. Para obtener información sobre cómo desarrollar y probar componentes localmente, consulteCrear AWS IoT Greengrass componentes.

Importación de funciones Lambda V1

Puede importar funciones Lambda como AWS IoT Greengrass V2 componentes. Elija uno de los siguientes enfoques:

  • Importe funciones Lambda V1 directamente como componentes de Greengrass.

  • Actualice las funciones de Lambda para utilizar las bibliotecas de Greengrass en la SDK para dispositivos con AWS IoT versión 2 y, a continuación, importe las funciones de Lambda como componentes de Greengrass.

  • Cree componentes personalizados que utilicen código que no sea de Lambda y la SDK para dispositivos con AWS IoT versión 2 para implementar la misma funcionalidad que sus funciones de Lambda.

Si su función Lambda usa funciones, como el administrador de transmisiones o secretos locales, debe definir las dependencias en los componentes AWS proporcionados que empaquetan estas funciones. Al implementar el componente de función Lambda, el despliegue también incluye el componente para cada función que defina como dependencia. En la implementación, puede configurar los parámetros, como los secretos que se van a implementar en el dispositivo principal. No todas las funciones de la V1 requieren una dependencia de componentes para la función Lambda en la V2. En la siguiente lista se describe cómo utilizar las funciones de la V1 en el componente de la función Lambda de la V2.

  • Acceda a otros servicios AWS

    Si la función Lambda usa AWS credenciales para realizar solicitudes a otros AWS servicios, la función de intercambio de token del dispositivo principal debe permitir que el dispositivo principal realice las AWS operaciones que usa la función Lambda. Para obtener más información, consulte Autorizar a los dispositivos principales a interactuar con AWS los servicios.

  • Gestor de transmisiones

    Si su función Lambda usa el administrador de flujos, especifíquelo aws.greengrass.StreamManager como una dependencia de componente al importar la función. Al implementar el componente del administrador de transmisiones, especifique los parámetros del administrador de transmisiones que desee configurar para los dispositivos principales de destino. La función de intercambio de tokens del dispositivo principal debe permitir que el dispositivo principal acceda a los Nube de AWS destinos que utilizas con Stream Manager. Para obtener más información, consulte Administrador de transmisiones.

  • Secretos locales

    Si la función Lambda usa secretos locales, especifíquelos aws.greengrass.SecretManager como dependencia de componentes al importar la función. Al implementar el componente de administrador de secretos, especifique los recursos secretos que se van a implementar en los dispositivos principales de destino. La función de intercambio de fichas del dispositivo principal debe permitir que el dispositivo principal recupere los recursos secretos para desplegarlos. Para obtener más información, consulte Gestor secreto.

    Al implementar el componente de la función Lambda, configúrelo para que tenga una política de autorización de IPC que conceda permiso para usar la operación de GetSecretValue IPC en la V2. SDK para dispositivos con AWS IoT

  • Sombras locales

    Si la función Lambda interactúa con las sombras locales, debe actualizar el código de la función Lambda para usar la V2. SDK para dispositivos con AWS IoT También debe especificarlo aws.greengrass.ShadowManager como dependencia de un componente al importar la función. Para obtener más información, consulte Interactúa con las sombras de los dispositivos.

    Al implementar el componente de la función Lambda, configúrelo para que tenga una política de autorización de IPC que conceda permiso para utilizar las operaciones de IPC ocultas en la V2. SDK para dispositivos con AWS IoT

  • Suscripciones

    • Si su función Lambda se suscribe a mensajes de una fuente en la nube, especifique esas suscripciones como fuentes de eventos al importar la función.

    • Si la función de Lambda se suscribe a los mensajes de otra función de Lambda, o si la función de Lambda publica mensajes en u AWS IoT Core otras funciones de Lambda, configure e implemente el componente del router de suscripciones heredado al implementar la función de Lambda. Al implementar el componente del router de suscripciones heredado, especifique las suscripciones que utiliza la función Lambda.

      nota

      El componente de router de suscripción antiguo solo es necesario si la función Lambda utiliza la publish() función del SDK AWS IoT Greengrass principal. Si actualiza el código de la función Lambda para utilizar la interfaz de comunicación entre procesos (IPC) de la SDK para dispositivos con AWS IoT V2, no necesitará implementar el componente de router de suscripción heredado. Para obtener más información, consulte los siguientes servicios de comunicación entre procesos:

    • Si la función Lambda se suscribe a los mensajes de los dispositivos locales conectados, especifique esas suscripciones como fuentes de eventos al importar la función. También debe configurar e implementar el componente de puente MQTT para retransmitir los mensajes desde los dispositivos conectados a los temas locales de publicación o suscripción que especifique como fuentes de eventos.

    • Si su función Lambda publica mensajes en dispositivos conectados localmente, debe actualizar el código de la función Lambda para usar la SDK para dispositivos con AWS IoT V2 para publicar mensajes locales de publicación/suscripción. También debe configurar e implementar el componente de puente MQTT para retransmitir los mensajes desde el intermediario local de mensajes de publicación/suscripción a los dispositivos conectados.

  • Volúmenes y dispositivos locales

    Si la función Lambda en contenedores accede a volúmenes o dispositivos locales, especifique esos volúmenes y dispositivos al importar la función Lambda. Esta función no requiere una dependencia de componentes.

Para obtener más información, consulte AWS LambdaFunciones de ejecución.

Utilice conectores V1

Puede implementar los componentes AWS proporcionados que ofrecen la misma funcionalidad que algunos AWS IoT Greengrass conectores. Al crear la implementación, puede configurar los parámetros de los conectores.

Los siguientes AWS IoT Greengrass V2 componentes proporcionan la funcionalidad del conector Greengrass V1:

Ejecute contenedores de Docker

AWS IoT Greengrass V2 no proporciona un componente que sustituya directamente al conector de implementación de aplicaciones Docker de la versión 1. Sin embargo, puede usar el componente del administrador de aplicaciones de Docker para descargar imágenes de Docker y, a continuación, crear componentes personalizados que ejecuten contenedores de Docker a partir de las imágenes descargadas. Para obtener más información, consulte Ejecute un contenedor Docker y Gestor de aplicaciones Docker.

Ejecute una inferencia de aprendizaje automático

AWS IoT Greengrass V2 proporciona un componente de Amazon SageMaker Edge Manager que instala el agente de Amazon SageMaker Edge Manager y le permite utilizar modelos SageMaker compilados en NEO como componentes de modelos en los dispositivos principales de Greengrass. AWS IoT Greengrass V2 también proporciona componentes que instalan Deep Learning Runtime y TensorFlow Lite en su dispositivo. Puede utilizar el modelo DLR y TensorFlow Lite correspondientes y los componentes de inferencia para realizar la clasificación de imágenes de muestra y la inferencia de detección de objetos. Para utilizar otros marcos de aprendizaje automático, como MXNet TensorFlow, puede desarrollar sus propios componentes personalizados que utilicen estos marcos.

Conecta dispositivos Greengrass V1

Los dispositivos conectados en AWS IoT Greengrass V1 se denominan dispositivos cliente en AWS IoT Greengrass V2. AWS IoT Greengrass V2 la compatibilidad con dispositivos cliente es compatible con versiones anteriores AWS IoT Greengrass V1, por lo que puede conectar los dispositivos cliente V1 a los dispositivos principales V2 sin cambiar su código de aplicación. Para permitir que los dispositivos cliente se conecten a un dispositivo central V2, implemente los componentes de Greengrass que permitan la compatibilidad con los dispositivos cliente y asocie los dispositivos cliente al dispositivo principal. Para retransmitir mensajes entre los dispositivos cliente, el servicio AWS IoT Core en la nube y los componentes de Greengrass (incluidas las funciones Lambda), implemente y configure el componente puente MQTT. Puede implementar el componente detector de IP para detectar automáticamente la información de conectividad, o puede administrar manualmente los puntos finales. Para obtener más información, consulte Interactúa con dispositivos IoT locales.

Habilite el servicio paralelo local

En AWS IoT Greengrass V2, el servicio de sombra local se implementa mediante el componente AWS de administrador de sombras proporcionado. AWS IoT Greengrass V2 también incluye soporte para sombras con nombre asignado. Para permitir que sus componentes interactúen con las sombras locales y sincronicen los estados de las sombras AWS IoT Core, configure e implemente el componente administrador de sombras y utilice las operaciones de IPC ocultas en el código del componente. Para obtener más información, consulte Interactúa con las sombras de los dispositivos.

Intégrelo con AWS IoT SiteWise

Si utilizas tu dispositivo principal V1 como AWS IoT SiteWise puerta de enlace, sigue las instrucciones para configurar tu nuevo dispositivo central V2 como AWS IoT SiteWise puerta de enlace. AWS IoT SiteWise proporciona un script de instalación que despliega los AWS IoT SiteWise componentes automáticamente.

Paso 3: Pruebe sus aplicaciones AWS IoT Greengrass V2

Tras crear e implementar los componentes de la V2 en el nuevo dispositivo principal de la V2, compruebe que las aplicaciones cumplen sus expectativas. Puede consultar los registros del dispositivo para ver los mensajes de salida estándar (stdout) y de error estándar (stderr) de sus componentes. Para obtener más información, consulte Supervisar AWS IoT Greengrass registros.

Si implementó la CLI de Greengrass en el dispositivo principal, puede usarla para depurar los componentes y sus configuraciones. Para obtener más información, consulte Comandos CLI de Greengrass.

Tras comprobar que las aplicaciones funcionan en un dispositivo principal V2, puede implementar los componentes Greengrass de la aplicación en otros dispositivos principales. Si ha desarrollado componentes personalizados que ejecutan procesos nativos o contenedores de Docker, primero debe publicar esos componentes en el AWS IoT Greengrass servicio para implementarlos en otros dispositivos principales.