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.
Instale el software AWS IoT Greengrass principal con aprovisionamiento AWS IoT de flota
Esta función está disponible para la versión 2.4.0 y versiones posteriores del componente núcleo de Greengrass.
Con el aprovisionamiento de AWS IoT flotas, puede configurarlo AWS IoT para generar y entregar de forma segura los certificados de dispositivo X.509 y las claves privadas a sus dispositivos cuando se conectan a AWS IoT ellos por primera vez. AWS IoT proporciona certificados de cliente firmados por la autoridad de certificación (CA) raíz de Amazon. También puede configurarlo AWS IoT para especificar grupos de cosas, tipos de cosas y permisos para los dispositivos principales de Greengrass que aprovisiona con el aprovisionamiento de flotas. Defina una plantilla de aprovisionamiento para definir cómo AWS IoT aprovisiona cada dispositivo. La plantilla de aprovisionamiento especifica el objeto, la política y los recursos de certificado que se van a crear para un dispositivo durante el aprovisionamiento. Para obtener más información, consulte las plantillas de aprovisionamiento en la AWS IoT Core Guía para desarrolladores.
AWS IoT Greengrass proporciona un complemento de aprovisionamiento de AWS IoT flotas que puede usar para instalar el software AWS IoT Greengrass principal utilizando los AWS recursos creados por el aprovisionamiento de AWS IoT flotas. El complemento de aprovisionamiento de flotas utiliza el aprovisionamiento por reclamación. Los dispositivos utilizan un certificado de aprovisionamiento y una clave privada para obtener un certificado de dispositivo X.509 y una clave privada únicos que pueden utilizar para sus operaciones habituales. Puede incrustar el certificado de reclamación y la clave privada en cada dispositivo durante la fabricación, de modo que sus clientes puedan activar los dispositivos más adelante, cuando cada dispositivo entre en funcionamiento. Puede utilizar el mismo certificado de reclamación y la misma clave privada para varios dispositivos. Para obtener más información, consulte Aprovisionamiento por reclamación en la Guía para AWS IoT Core desarrolladores.
nota
Actualmente, el complemento de aprovisionamiento de flotas no admite el almacenamiento de archivos de certificados y claves privadas en un módulo de seguridad de hardware ()HSM. Para usar unHSM, instala el software AWS IoT Greengrass Core con aprovisionamiento manual.
Para instalar el software AWS IoT Greengrass Core con el aprovisionamiento de AWS IoT flotas, debe configurar los recursos Cuenta de AWS que AWS IoT utiliza para aprovisionar los dispositivos principales de Greengrass. Estos recursos incluyen una plantilla de aprovisionamiento, certificados de reclamación y una función de intercambio de fichas. IAM Después de crear estos recursos, puede reutilizarlos para aprovisionar varios dispositivos principales de una flota. Para obtener más información, consulte Configurar el aprovisionamiento de AWS IoT flota para los dispositivos principales de Greengrass.
importante
Antes de descargar el software AWS IoT Greengrass Core, compruebe que su dispositivo principal cumpla los requisitos para instalar y ejecutar el software AWS IoT Greengrass Core v2.0.
Temas
- Requisitos previos
- Recupere los puntos finales AWS IoT
- Descargue los certificados al dispositivo
- Configura el entorno del dispositivo
- Descargue el software AWS IoT Greengrass principal
- Descargue el complemento de aprovisionamiento AWS IoT de flotas
- Instale el software AWS IoT Greengrass principal
- Configurar el aprovisionamiento de AWS IoT flota para los dispositivos principales de Greengrass
- Configurar el complemento de aprovisionamiento de AWS IoT flotas
- AWS IoT registro de cambios del complemento de aprovisionamiento de flotas
Requisitos previos
Para instalar el software AWS IoT Greengrass Core con el aprovisionamiento de AWS IoT flota, primero debe configurar el aprovisionamiento de AWS IoT flota para los dispositivos principales de Greengrass. Tras completar estos pasos una vez, puede utilizar el aprovisionamiento de flotas para instalar el software AWS IoT Greengrass Core en cualquier número de dispositivos.
Recupere los puntos finales AWS IoT
Obtenga los AWS IoT puntos finales que desee y guárdelos para usarlos más adelante. Cuenta de AWS El dispositivo utiliza estos puntos finales para conectarse a ellos. AWS IoT Haga lo siguiente:
-
Obtenga el punto final AWS IoT de datos para su. Cuenta de AWS
aws iot describe-endpoint --endpoint-type iot:Data-ATS
La respuesta es similar a la del siguiente ejemplo, si la solicitud se realiza correctamente.
{ "endpointAddress": "
device-data-prefix
-ats.iot.us-west-2.amazonaws.com" } -
Obtenga el punto final de AWS IoT credenciales para su. Cuenta de AWS
aws iot describe-endpoint --endpoint-type iot:CredentialProvider
La respuesta es similar a la del siguiente ejemplo, si la solicitud se realiza correctamente.
{ "endpointAddress": "
device-credentials-prefix
.credentials.iot.us-west-2.amazonaws.com" }
Descargue los certificados al dispositivo
El dispositivo utiliza un certificado de reclamación y una clave privada para autenticar su solicitud de aprovisionamiento de AWS recursos y adquirir un certificado de dispositivo X.509. Puede incrustar el certificado de reclamación y la clave privada en el dispositivo durante la fabricación o copiar el certificado y la clave en el dispositivo durante la instalación. En esta sección, debe copiar el certificado de reclamación y la clave privada en el dispositivo. También descargas el certificado de la autoridad de certificación (CA) raíz de Amazon en el dispositivo.
importante
El aprovisionamiento afirma que las claves privadas deben estar protegidas en todo momento, incluso en los dispositivos principales de Greengrass. Te recomendamos que utilices CloudWatch las estadísticas y los registros de Amazon para detectar indicios de uso indebido, como el uso no autorizado del certificado de reclamación para aprovisionar dispositivos. Si detectas un uso indebido, desactiva el certificado de notificación de aprovisionamiento para que no se pueda utilizar para el aprovisionamiento de dispositivos. Para obtener más información, consulte Monitorear AWS IoT en la Guía para desarrolladores de AWS IoT Core .
Para ayudarte a gestionar mejor la cantidad de dispositivos y los dispositivos que se registran automáticamente en el tuyo Cuenta de AWS, puedes especificar un enlace previo al aprovisionamiento al crear una plantilla de aprovisionamiento de flotas. Un enlace de preaprovisionamiento es una AWS Lambda función que valida los parámetros de plantilla que proporcionan los dispositivos durante el registro. Por ejemplo, puede crear un enlace de preaprovisionamiento que compare el ID de un dispositivo con una base de datos para comprobar que el dispositivo tiene permiso de aprovisionamiento. Para obtener más información, consulta los ganchos de aprovisionamiento previo en la Guía para desarrolladores.AWS IoT Core
Para descargar los certificados de reclamación al dispositivo
-
Copie el certificado de reclamación y la clave privada en el dispositivo. Si SSH SCP están habilitados en el ordenador de desarrollo y en el dispositivo, puede utilizar el
scp
comando del ordenador de desarrollo para transferir el certificado de reclamación y la clave privada. El siguiente comando de ejemplo transfiere estos archivos al dispositivo a una carpeta denominadaclaim-certs
en su ordenador de desarrollo. Reemplazardevice-ip-address
con la dirección IP de su dispositivo.scp -r claim-certs/
device-ip-address
:~ -
Cree la carpeta raíz de Greengrass en el dispositivo. Más adelante instalará el software AWS IoT Greengrass principal en esta carpeta.
nota
Windows tiene una limitación de longitud de ruta de 260 caracteres. Si utiliza Windows, utilice una carpeta raíz como
C:\greengrass\v2
oD:\greengrass\v2
para mantener las rutas de los componentes de Greengrass por debajo del límite de 260 caracteres. -
(Solo para Linux) Establezca los permisos de la carpeta principal de la raíz de Greengrass.
-
Reemplazar
/greengrass
con el elemento principal de la carpeta raíz.
sudo chmod 755
/greengrass
-
-
Mueva los certificados de reclamación a la carpeta raíz de Greengrass.
-
Sustituya
o/greengrass/v2
C:\greengrass\v2
con la carpeta raíz de Greengrass.
-
-
Descarga el certificado de la autoridad de certificación raíz (CA) de Amazon. AWS IoT Los certificados están asociados al certificado de CA raíz de Amazon de forma predeterminada.
Configura el entorno del dispositivo
Siga los pasos de esta sección para configurar un dispositivo Linux o Windows para usarlo como dispositivo AWS IoT Greengrass principal.
Configura un dispositivo Linux
Para configurar un dispositivo Linux para AWS IoT Greengrass V2
-
Instale el motor de ejecución de Java, que el software AWS IoT Greengrass principal necesita para ejecutarse. Le recomendamos que utilice las versiones de soporte a JDK largo plazo de Amazon Corretto
o Open . Se requiere la versión 8 o superior. Los siguientes comandos le muestran cómo instalar Open JDK en su dispositivo. -
Para distribuciones basadas en Debian o en Ubuntu:
sudo apt install default-jdk
-
Para distribuciones basadas en Red Hat:
sudo yum install java-11-openjdk-devel
-
En Amazon Linux 2:
sudo amazon-linux-extras install java-openjdk11
-
En Amazon Linux 2023:
sudo dnf install java-11-amazon-corretto -y
Cuando se complete la instalación, ejecute el siguiente comando para comprobar que Java se ejecuta en su dispositivo Linux.
java -version
El comando imprime la versión de Java que se ejecuta en el dispositivo. Por ejemplo, en una distribución basada en Debian, el resultado podría tener un aspecto similar al del siguiente ejemplo.
openjdk version "11.0.9.1" 2020-11-04 OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2) OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
-
-
(Opcional) Cree el usuario y el grupo predeterminados del sistema que ejecutan los componentes del dispositivo. También puede optar por permitir que el instalador del software AWS IoT Greengrass principal cree este usuario y grupo durante la instalación con el argumento del
--component-default-user
instalador. Para obtener más información, consulte Argumentos de instalación.sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
-
Compruebe que el usuario que ejecuta el software AWS IoT Greengrass principal (normalmente
root
) tiene permiso para ejecutarsudo
con cualquier usuario y grupo.-
Ejecute el siguiente comando para abrir el
/etc/sudoers
archivo.sudo visudo
-
Compruebe que el permiso del usuario es similar al del ejemplo siguiente.
root ALL=(ALL:ALL) ALL
-
-
(Opcional) Para ejecutar funciones Lambda en contenedores, debe habilitar cgroups
v1 y debe habilitar y montar los cgroups de memoria y dispositivos. Si no planea ejecutar funciones Lambda en contenedores, puede omitir este paso. Para habilitar estas opciones de cgroups, arranque el dispositivo con los siguientes parámetros del núcleo de Linux.
cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
Para obtener información sobre cómo ver y configurar los parámetros del núcleo de su dispositivo, consulte la documentación del sistema operativo y del gestor de arranque. Siga las instrucciones para configurar permanentemente los parámetros del núcleo.
-
Instale todas las demás dependencias necesarias en su dispositivo tal y como se indica en Requisitos de los dispositivos la lista de requisitos de.
Configura un dispositivo Windows
nota
Esta función está disponible para la versión 2.5.0 y versiones posteriores del componente núcleo de Greengrass.
Para configurar un dispositivo Windows para AWS IoT Greengrass V2
-
Instale el motor de ejecución de Java, que el software AWS IoT Greengrass principal necesita para ejecutarse. Le recomendamos que utilice las versiones de soporte a JDK largo plazo de Amazon Corretto
o Open . Se requiere la versión 8 o superior. -
Compruebe si Java está disponible en la variable de PATH
sistema y agréguelo si no lo está. La LocalSystem cuenta ejecuta el software AWS IoT Greengrass principal, por lo que debe agregar Java a la variable de PATH sistema en lugar de a la variable de PATH usuario de su usuario. Haga lo siguiente: -
Pulse la tecla Windows para abrir el menú de inicio.
-
Escriba
environment variables
para buscar las opciones del sistema en el menú de inicio. -
En los resultados de la búsqueda del menú de inicio, seleccione Editar las variables de entorno del sistema para abrir la ventana de propiedades del sistema.
-
Seleccione Variables de entorno... para abrir la ventana Variables de entorno.
-
En Variables de sistema, seleccione Ruta y, a continuación, elija Editar. En la ventana Editar variables de entorno, puede ver cada ruta en una línea independiente.
-
Compruebe si la ruta a la
bin
carpeta de la instalación de Java está presente. La ruta puede tener un aspecto similar al del siguiente ejemplo.C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
-
Si la
bin
carpeta de la instalación de Java no aparece en Path, seleccione Nueva para añadirla y, a continuación, pulse Aceptar.
-
-
Abre la línea de comandos de Windows (
cmd.exe
) como administrador. -
Cree el usuario predeterminado en la LocalSystem cuenta del dispositivo Windows. Reemplazar
password
con una contraseña segura.net user /add ggc_user
password
sugerencia
Según la configuración de Windows, es posible que la contraseña del usuario caduque en una fecha futura. Para garantizar que sus aplicaciones de Greengrass sigan funcionando, controle cuándo caduque la contraseña y actualícela antes de que caduque. También puede configurar la contraseña del usuario para que nunca caduque.
-
Para comprobar cuándo caducan un usuario y su contraseña, ejecuta el siguiente comando.
net user
ggc_user
| findstr /C:expires -
Para configurar la contraseña de un usuario para que no caduque nunca, ejecute el siguiente comando.
wmic UserAccount where "Name='
ggc_user
'" set PasswordExpires=False -
Si utilizas Windows 10 o una versión posterior, donde el
wmic
comando está obsoleto, ejecuta el siguiente PowerShell comando. Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = '
ggc_user
'" | Set-CimInstance -Property @{PasswordExpires="False"}
-
-
Descargue e instale la PsExecutilidad
de Microsoft en el dispositivo. -
Utilice la PsExec utilidad para almacenar el nombre de usuario y la contraseña del usuario predeterminado en la instancia de Credential Manager de la LocalSystem cuenta. Reemplazar
password
con la contraseña de usuario que configuró anteriormente.psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:
password
Si se PsExec License Agreementabre, elija Acceptaceptar la licencia y ejecutar el comando.
nota
En los dispositivos Windows, la LocalSystem cuenta ejecuta el núcleo de Greengrass y debe usar la PsExec utilidad para almacenar la información de usuario predeterminada en la LocalSystem cuenta. El uso de la aplicación Credential Manager almacena esta información en la cuenta de Windows del usuario que ha iniciado sesión actualmente, en lugar de en la LocalSystem cuenta.
Descargue el software AWS IoT Greengrass principal
Puede descargar la última versión del software AWS IoT Greengrass Core desde la siguiente ubicación:
nota
Puede descargar una versión específica del software AWS IoT Greengrass Core desde la siguiente ubicación. Reemplazar version
con la versión que se va a descargar.
https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-
version
.zip
Para descargar el software AWS IoT Greengrass Core
-
En su dispositivo principal, descargue el software AWS IoT Greengrass Core en un archivo denominado
greengrass-nucleus-latest.zip
.Al descargar este software, acepta el acuerdo de licencia del software de Greengrass Core
. -
(Opcional) Para verificar la firma del software Greengrass Nucleus
nota
Esta función está disponible con la versión 2.9.5 y posteriores del núcleo de Greengrass.
-
Usa el siguiente comando para verificar la firma del artefacto núcleo de Greengrass:
-
La
jarsigner
invocación produce un resultado que indica los resultados de la verificación.-
Si el archivo zip del núcleo de Greengrass está firmado, el resultado contiene la siguiente declaración:
jar verified.
-
Si el archivo zip del núcleo de Greengrass no está firmado, el resultado contiene la siguiente declaración:
jar is unsigned.
-
-
Si ha proporcionado la
-certs
opción Jarsigner junto con-verbose
las opciones-verify
y, el resultado también incluye información detallada del certificado de firmante.
-
-
Descomprime el software AWS IoT Greengrass principal en una carpeta de tu dispositivo. Reemplazar
GreengrassInstaller
con la carpeta que quieras usar. -
(Opcional) Ejecute el siguiente comando para ver la versión del software AWS IoT Greengrass principal.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version
importante
Si instala una versión del núcleo de Greengrass anterior a la v2.4.0, no elimine esta carpeta después de instalar el software Core. AWS IoT Greengrass El software AWS IoT Greengrass Core utiliza los archivos de esta carpeta para ejecutarse.
Si descargó la última versión del software, instale la versión 2.4.0 o posterior y podrá eliminar esta carpeta después de instalar el software AWS IoT Greengrass principal.
Descargue el complemento de aprovisionamiento AWS IoT de flotas
Puedes descargar la última versión del complemento de aprovisionamiento de AWS IoT flotas desde la siguiente ubicación:
nota
Puede descargar una versión específica del complemento de aprovisionamiento de AWS IoT flotas desde la siguiente ubicación. Reemplazar version
con la versión que se va a descargar. Para obtener más información sobre cada versión del complemento de aprovisionamiento de flotas, consulteAWS IoT registro de cambios del complemento de aprovisionamiento de flotas.
https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-
version
.jar
El complemento de aprovisionamiento de flotas es de código abierto. Para ver su código fuente, consulta el complemento de aprovisionamiento de AWS IoT
flotas
Para descargar el complemento de aprovisionamiento de AWS IoT flotas
-
En su dispositivo, descargue el complemento de aprovisionamiento de AWS IoT flotas en un archivo denominado.
aws.greengrass.FleetProvisioningByClaim.jar
ReemplazarGreengrassInstaller
con la carpeta que quieras usar.Al descargar este software, acepta el acuerdo de licencia del software de Greengrass Core
.
Instale el software AWS IoT Greengrass principal
Ejecute el instalador con argumentos que especifiquen las siguientes acciones:
-
Realice la instalación desde un archivo de configuración parcial que especifique el uso del complemento de aprovisionamiento de flotas para aprovisionar AWS recursos. El software AWS IoT Greengrass Core utiliza un archivo de configuración que especifica la configuración de todos los componentes de Greengrass del dispositivo. El instalador crea un archivo de configuración completo a partir del archivo de configuración parcial que usted proporciona y de AWS los recursos que crea el complemento de aprovisionamiento de flotas.
-
Especifique si desea utilizar el usuario
ggc_user
del sistema para ejecutar los componentes de software en el dispositivo principal. En los dispositivos Linux, este comando también especifica el uso del grupoggc_group
del sistema, y el instalador crea el usuario y el grupo del sistema automáticamente. -
Configure el software AWS IoT Greengrass principal como un servicio del sistema que se ejecute durante el arranque. En los dispositivos Linux, esto requiere el sistema de inicio Systemd
. importante
En los dispositivos principales de Windows, debe configurar el software AWS IoT Greengrass Core como un servicio del sistema.
Para obtener más información sobre los argumentos que puede especificar, consulteArgumentos de instalación.
nota
Si utiliza un AWS IoT Greengrass dispositivo con memoria limitada, puede controlar la cantidad de memoria que utiliza el software AWS IoT Greengrass Core. Para controlar la asignación de memoria, puede configurar las opciones de tamaño de JVM pila en el parámetro de jvmOptions
configuración del componente Nucleus. Para obtener más información, consulte Controle la asignación de memoria con opciones JVM.
Para instalar el software AWS IoT Greengrass Core
-
Compruebe la versión del software AWS IoT Greengrass principal.
-
Reemplazar
GreengrassInstaller
con la ruta a la carpeta que contiene el software.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version -
-
Utilice un editor de texto para crear un archivo de configuración con el nombre
config.yaml
para proporcionárselo al instalador.Por ejemplo, en un sistema basado en Linux, puede ejecutar el siguiente comando para usar GNU nano para crear el archivo.
nano
GreengrassInstaller
/config.yamlCopie el siguiente YAML contenido en el archivo. Este archivo de configuración parcial especifica los parámetros del complemento de aprovisionamiento de flotas. Para obtener más información sobre las opciones que puede especificar, consulteConfigurar el complemento de aprovisionamiento de AWS IoT flotas.
A continuación, proceda del modo siguiente:
-
Reemplazar
2.13.0
con la versión del software AWS IoT Greengrass Core. -
Sustituya cada instancia de
o/greengrass/v2
C:\greengrass\v2
con la carpeta raíz de Greengrass.nota
En los dispositivos Windows, debe especificar los separadores de rutas como barras invertidas dobles (
\\
), como.C:\\greengrass\\v2
-
Reemplazar
us-west-2
con la AWS región en la que creó la plantilla de aprovisionamiento y otros recursos. -
iotDataEndpoint
Sustitúyalo por su punto final AWS IoT de datos. -
Sustituya el
iotCredentialEndpoint
punto final por el de sus AWS IoT credenciales. -
Reemplazar
GreengrassCoreTokenExchangeRoleAlias
con el nombre del alias del rol de intercambio de fichas. -
Reemplazar
GreengrassFleetProvisioningTemplate
con el nombre de la plantilla de aprovisionamiento de flota. -
Sustitúyala por la ruta al certificado de reclamación del dispositivo.
claimCertificatePath
-
Sustitúyala por la ruta a la clave privada del certificado de reclamación del dispositivo.
claimCertificatePrivateKeyPath
-
Sustituya los parámetros de la plantilla (
templateParameters
) por los valores que se utilizarán para aprovisionar el dispositivo. Este ejemplo hace referencia a la plantilla de ejemplo que defineThingName
losThingGroupName
parámetros.
nota
En este archivo de configuración, puede personalizar otras opciones de configuración, como los puertos y el proxy de red que se van a utilizar, como se muestra en el siguiente ejemplo. Para obtener más información, consulte Configuración del núcleo de Greengrass.
Para usar un HTTPS proxy, debe usar la versión 1.1.0 o posterior del complemento de aprovisionamiento de flotas. Además, debe especificar lo siguiente
rootCaPath
system
, como se muestra en el siguiente ejemplo. -
-
Ejecute el instalador. Especifique si
--trusted-plugin
desea proporcionar el complemento de aprovisionamiento de flotas y especifique si--init-config
desea proporcionar el archivo de configuración.-
Sustitúyala por la carpeta raíz de Greengrass./greengrass/v2
-
Sustituya cada instancia de
GreengrassInstaller
con la carpeta en la que desempaquetó el instalador.
importante
En los dispositivos principales de Windows, debe especificar si
--setup-system-service true
desea configurar el software AWS IoT Greengrass Core como un servicio del sistema.Si lo especifica
--setup-system-service true
, el instaladorSuccessfully set up Nucleus as a system service
imprimirá si configuró y ejecutó el software como un servicio del sistema. De lo contrario, el instalador no mostrará ningún mensaje si instala el software correctamente.nota
No puede usar el
deploy-dev-tools
argumento para implementar herramientas de desarrollo local cuando ejecuta el instalador sin el--provision true
argumento. Para obtener información sobre cómo implementar Greengrass CLI directamente en su dispositivo, consulte. Interfaz de línea de comandos Greengrass -
-
Compruebe la instalación consultando los archivos de la carpeta raíz.
Si la instalación se realizó correctamente, la carpeta raíz contiene varias carpetas
config
, comopackages
, ylogs
.
Si ha instalado el software AWS IoT Greengrass principal como un servicio del sistema, el instalador ejecutará el software automáticamente. De lo contrario, debe ejecutar el software manualmente. Para obtener más información, consulte Ejecute el software AWS IoT Greengrass principal.
Para obtener más información acerca de cómo configurar y utilizar el software AWS IoT Greengrass, consulte lo siguiente: