Configuración de su dispositivo para ejecutar pruebas de IDT - AWS IoT Greengrass

AWS IoT Greengrass Version 1 entró en la fase de vida útil prolongada el 30 de junio de 2023. Para obtener más información, consulte la política de mantenimiento de AWS IoT Greengrass V1 Después de esta fecha, AWS IoT Greengrass V1 no se publicarán actualizaciones que proporcionen funciones, mejoras, correcciones de errores o parches de seguridad. Los dispositivos que se ejecuten AWS IoT Greengrass V1 no se verán afectados y seguirán funcionando y conectándose a la nube. Le recomendamos encarecidamente que migre a AWS IoT Greengrass Version 2, ya que añade importantes funciones nuevas y es compatible con plataformas adicionales.

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.

Configuración de su dispositivo para ejecutar pruebas de IDT

Para configurar el dispositivo debe instalar dependencias de AWS IoT Greengrass, configurar el software de AWS IoT Greengrass Core, configurar su equipo host para acceder a su dispositivo y configurar los permisos de usuario en su dispositivo.

Verificación de las dependencias de AWS IoT Greengrass en el dispositivo sometido a prueba

Antes de que IDT para AWS IoT Greengrass pueda probar los dispositivos, asegúrese de que el dispositivo esté configurado tal como se describe en Introducción a AWS IoT Greengrass. Para obtener información sobre las plataformas admitidas, consulte Plataformas compatibles.

Configuración del software de AWS IoT Greengrass

IDT para AWS IoT Greengrass prueba su dispositivo para comprobar la compatibilidad con una versión específica de AWS IoT Greengrass. IDT le ofrece dos opciones para probar AWS IoT Greengrass en sus dispositivos:

  • Descargue y utilice una versión del software de AWS IoT Greengrass Core. IDT instala el software.

  • Utilice una versión del software de AWS IoT Greengrass Core ya instalada en su dispositivo.

nota

Cada versión de AWS IoT Greengrass tiene una versión correspondiente de IDT. Debe descargar la versión de IDT que corresponde a la versión de AWS IoT Greengrass que está utilizando.

Estas opciones se describen en las siguientes secciones. Solo tiene que hacer una.

Puede descargar el software AWS IoT Greengrass Core desde la página de descargas del Software AWS IoT Greengrass Core..

  1. Busque la arquitectura y la distribución de Linux correctas y, a continuación, elija Download (Descargar).

  2. Copie el archivo tar.gz en <device-tester-extract-location>/products/greengrass/ggc.

nota

No cambie el nombre del archivo tar.gz de AWS IoT Greengrass. No coloque varios archivos en este directorio para el mismo sistema operativo y arquitectura. Por ejemplo, tener los archivos greengrass-linux-armv7l-1.7.1.tar.gz y greengrass-linux-armv7l-1.8.1.tar.gz en dicho directorio hará que las pruebas devuelvan un error.

Configure IDT para probar el software de AWS IoT Greengrass Core instalado en su dispositivo añadiendo el atributo greengrassLocation al archivo device.json ubicado en la carpeta <device-tester-extract-location>/configs. Por ejemplo:

"greengrassLocation" : "<path-to-greengrass-on-device>"

Para obtener más información acerca del archivo device.json, consulte Configurar device.json.

En los dispositivos Linux, la ubicación predeterminada del software Núcleo de AWS IoT Greengrass es /greengrass.

nota

Su dispositivo debe tener una instalación del software de AWS IoT Greengrass Core que no se haya iniciado.

Asegúrese de haber añadido el usuario de ggc_user y ggc_group en el dispositivo. Para obtener más información, consulte Configuración del entorno para AWS IoT Greengrass.

Configuración del equipo host para acceder a un dispositivo en pruebas

IDT se ejecuta en su equipo host y debe poder utilizar SSH para conectarse a su dispositivo. Existen dos opciones para permitir que IDT obtenga acceso SSH a los dispositivos sometidos a la prueba:

  1. Siga las instrucciones que se indican aquí para crear un par de claves SSH y autorizar su clave para iniciar sesión en su dispositivo en proceso de prueba sin especificar una contraseña.

  2. Proporcione un nombre de usuario y una contraseña para cada dispositivo en el archivo device.json. Para obtener más información, consulte Configurar device.json.

Puede utilizar cualquier implementación SSL para crear una clave SSH. Las siguientes instrucciones muestran cómo utilizar SSH-KEYGEN o PuTTYgen (para Windows). Si utiliza otra implementación de SSL, consulte la documentación de dicha aplicación.

IDT utiliza claves SSH para autenticar con su dispositivo bajo prueba.

Para crear una clave SSH con SSH-KEYGEN, realice el siguiente procedimiento:
  1. Cree una clave de SSH.

    Puede utilizar el comando ssh-keygen de Open SSH para crear un par de claves SSH. Si ya tiene un par de claves SSH en su equipo host, es una práctica recomendada crear un par de claves SSH específicamente para IDT. De esta forma, una vez completadas las pruebas, el equipo host ya no podrá conectarse a su dispositivo sin introducir una contraseña. También le permite restringir el acceso al dispositivo remoto únicamente a aquellos que lo necesiten.

    nota

    Windows no tiene instalado un cliente SSH. Para obtener más información sobre la instalación de un cliente SSH en Windows, consulte Download SSH Client Software.

    El comando ssh-keygen le solicita un nombre y la ruta para almacenar el par de claves. De forma predeterminada, los archivos de par de claves se denominan id_rsa (clave privada) y id_rsa.pub (clave pública). En macOS y Linux, la ubicación predeterminada de estos archivos es ~/.ssh/. En Windows, la ubicación predeterminada es C:\Users\<user-name>\.ssh.

    Cuando se le solicite, introduzca una frase clave para proteger la clave SSH. Para obtener más información, consulte la sección acerca de cómo generar una nueva clave SSH.

  2. Añada claves SSH autorizadas a su dispositivo en proceso de prueba.

    IDT debe utilizar su clave privada de SSH para iniciar sesión en el dispositivo a prueba. Para autorizar que su clave privada de SSH inicie sesión en el dispositivo a prueba, use el comando ssh-copy-id en su equipo host. Este comando añade su clave pública al archivo ~/.ssh/authorized_keys que se encuentra en su dispositivo a prueba. Por ejemplo:

    $ ssh-copy-id <remote-ssh-user>@<remote-device-ip>

    Donde usuario-ssh-remoto es el nombre de usuario utilizado para iniciar sesión en su dispositivo sometido a ensayo e ip-dispositivo-remoto es la dirección IP del dispositivo sometido a ensayo para ejecutar pruebas. Por ejemplo:

    ssh-copy-id pi@192.168.1.5

    Cuando se le solicite, introduzca la contraseña para el nombre de usuario que ha especificado en el comando ssh-copy-id.

    ssh-copy-id presupone que la clave pública se denomina id_rsa.pub y se almacena en la ubicación predeterminada (en macOS y Linux, ~/.ssh/ y en Windows, C:\Users\<user-name>\.ssh). Si asignó a la clave pública un nombre diferente o la almacenó en otra ubicación, debe especificar la ruta completa a su clave pública SSH utilizando la opción -i para ssh-copy-id (por ejemplo: ssh-copy-id -i ~/my/path/myKey.pub). Para obtener más información acerca de la creación de claves de SSH y la copia de las claves públicas, consulte SSH-COPY-ID.

Para crear una clave SSH con PuTTYgen (solo Windows), realice el siguiente procedimiento:
  1. Asegúrese de que tiene el servidor y el cliente de OpenSSH instalados en su dispositivo en proceso de prueba. Para obtener más información, consulte OpenSSH.

  2. Instale PuTTYgen en su dispositivo en proceso de prueba.

  3. Abra PuTTYgen.

  4. Elija Generate (Generar) y mueva el cursor del ratón dentro del cuadro para generar una clave privada.

  5. En el menú Conversions (Conversiones), elija Export OpenSSH key (Exportar clave OpenSSH) y guarde la clave privada con una extensión de archivo .pem.

  6. Añada la clave pública al archivo /home/<user>/.ssh/authorized_keys en el dispositivo en proceso de prueba.

    1. Copie el texto de la clave pública de la ventana PuTTYgen.

    2. Utilice PuTTY para crear una sesión en su dispositivo en proceso de prueba.

      1. En un símbolo del sistema o en una ventana de Windows PowerShell, ejecute el siguiente comando:

        C:/<path-to-putty>/putty.exe -ssh <user>@<dut-ip-address>

      2. Cuando se le solicite, escriba la contraseña de su dispositivo.

      3. Utilice vi u otro editor de texto para añadir la clave pública al archivo /home/<user>/.ssh/authorized_keys en su dispositivo en proceso de prueba.

  7. Actualice el archivo device.json con su nombre de usuario, la dirección IP y la ruta al archivo de clave privada que acaba de guardar en el equipo host para cada dispositivo en proceso de prueba. Para obtener más información, consulte Configurar device.json. Asegúrese de proporcionar la ruta completa y el nombre de archivo a la clave privada y utilizar barras diagonales ("/"). Por ejemplo, para la ruta de Windows C:\DT\privatekey.pem, utilice C:/DT/privatekey.pem en el archivo device.json.

Configuración de los permisos de usuario en el dispositivo

IDT realiza operaciones en diversos directorios y archivos en un dispositivo que se está probando. Algunas de estas operaciones requieren permisos elevados (usando sudo). Para automatizar estas operaciones, IDT para AWS IoT Greengrass debe ser capaz de ejecutar comandos con sudo sin que se le solicite una contraseña.

Siga estos pasos en el dispositivo a prueba para permitir acceso a sudo sin que se le solicite una contraseña.

nota

username hace referencia al usuario de SSH que utiliza IDT para obtener acceso al dispositivo bajo prueba.

Para añadir el usuario al grupo sudo
  1. En el dispositivo bajo prueba, ejecute sudo usermod -aG sudo <username>.

  2. Cierre la sesión y, a continuación, vuelva a iniciar sesión para que los cambios surtan efecto.

  3. Para comprobar que su nombre de usuario se haya añadido correctamente, ejecute sudo echo test. Si no se le solicita una contraseña, el usuario se ha configurado correctamente.

  4. Añada el archivo /etc/sudoers y agregue la siguiente línea al final del archivo:

    <ssh-username> ALL=(ALL) NOPASSWD: ALL

Configurar el dispositivo para probar características opcionales

En los temas siguientes se describe cómo configurar los dispositivos para ejecutar pruebas de IDT para características opcionales. Siga estos pasos de configuración solo si desea probar estas características. De lo contrario, siga en Configuración de los ajustes de IDT para ejecutar el conjunto de cualificación de AWS IoT Greengrass.