Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
AWS IoT Greengrass supporta l'uso di endpoint FIPS (Federal Information Processing Standard (FIPS) 140-2)
Comunicazioni MQTT per AWS IoT utilizzare l'endpoint FIPS del piano dati IoT (Connecting to FIPS endpoint - AWS IoT Core) e la libreria crittografica conforme a AWS IoT FIPS sviluppata aws-lc. AWS
Per le comunicazioni HTTP in Greengrass:
-
Per i componenti nucleus e plugin, tutti i client HTTP SDK sono configurati con endpoint FIPS impostando la proprietà di sistema su true; AWS_USE_FIPS_ENDPOINT
-
Per i componenti generici, tutti i componenti iniziano con la proprietà AWS_USE_FIPS_ENDPOINT di sistema impostata su true. Questo processo garantisce che i client HTTP SDK utilizzati da questi componenti generici inviino richieste a endpoint conformi a FIPS.
Nota
Nel caso di Stream manager, Nucleus passa la variabile di ambiente _FIPS_MODE. AWS_GG Questa variabile di ambiente consente ai client HTTP utilizzati all'interno di Stream Manager di identificare e connettersi al corrispondente endpoint conforme allo standard FIPS.
AWS IoT Greengrass offre due metodi per abilitare la modalità FIPS: provisioning e deployment. Per attivare la modalità FIPS, è necessario impostare il parametro fipsMode
di configurazione su true, Nucleus imposta quindi la proprietà di sistema su true e propagarla come variabile di ambiente AWS_USE_FIPS_ENDPOINT a tutti gli altri componenti. Inoltre, AWS IoT Greengrass scaricherà un certificato CA root (CA3) e lo aggiungerà al file RootCA.pem (o .pem) esistente. AmazonRoot CA1 Se abiliti FIPS tramite una nuova distribuzione, Nucleus si riavvierà per garantire che la proprietà del sistema abbia effetto dopo aver abilitato la modalità FIPS.
Oltre a configurare il fipsMode
parametro, è necessario configurare anche i parametri, and. iotDataEndpoint
iotCredEndpoint
greengrassDataEndpoint
Per ulteriori informazioni, consultate il documento pertinente riportato di seguito.
Abilita gli endpoint FIPS con l'implementazione
Ottieni gli AWS IoT endpoint per te e salvali per utilizzarli in un secondo momento. Account AWS Il tuo dispositivo utilizza questi endpoint per connettersi a. AWS IoT Sono necessari due endpoint, il iotDataEndpoint
e il. iotCredEndpoint
Esegui questa operazione:
-
Ottieni l'endpoint di dati FIPS per la tua regione negli endpoint del piano dati AWS IoT Core FIPS. L'endpoint di dati FIPS per te dovrebbe avere il seguente aspetto: Account AWS
data.iot-fips.us-west-2.amazonaws.com
-
Ottieni l'endpoint delle credenziali FIPS per la tua regione negli endpoint del AWS IoT Core piano dati FIPS. L'endpoint di credenziali FIPS per il tuo dovrebbe avere il seguente aspetto: Account AWS
data.credentials.iot-fips.us-west-2.amazonaws.com
Quindi, per abilitare FIPS con una distribuzione, è necessario applicare la seguente configurazione a Nucleus. La configurazione da unire durante la distribuzione è la seguente.
- Configurazione da unire
-
{ "fipsMode": "true", "iotDataEndpoint": "data.iot-fips.us-west-2.amazonaws.com", "greengrassDataPlaneEndpoint": "iotData", "iotCredEndpoint": "data.credentials.iot-fips.us-west-2.amazonaws.com" }
Installa Nucleus con endpoint FIPS con provisioning manuale delle risorse
Esegui manualmente il provisioning AWS delle risorse per i dispositivi AWS IoT Greengrass V2 principali con endpoint FIPS
Importante
Prima di scaricare il software AWS IoT Greengrass Core, verifica che il dispositivo principale soddisfi i requisiti per installare ed eseguire il software AWS IoT Greengrass Core v2.0.
Argomenti
Recupera AWS IoT gli endpoint
Ottieni gli AWS IoT endpoint per te e salvali per Account AWS utilizzarli in un secondo momento. Il tuo dispositivo utilizza questi endpoint per connettersi a. AWS IoT Sono necessari due endpoint, il iotDataEndpoint
e il. iotCredEndpoint
Esegui questa operazione:
-
Ottieni l'endpoint di dati FIPS per la tua regione negli endpoint del piano dati AWS IoT Core FIPS. L'endpoint di dati FIPS per te dovrebbe avere il seguente aspetto: Account AWS
data.iot-fips.us-west-2.amazonaws.com
-
Ottieni l'endpoint delle credenziali FIPS per la tua regione negli endpoint del AWS IoT Core piano dati FIPS. L'endpoint di credenziali FIPS per il tuo dovrebbe avere il seguente aspetto: Account AWS
data.credentials.iot-fips.us-west-2.amazonaws.com
Crea qualsiasi cosa AWS IoT
AWS IoT le cose rappresentano dispositivi ed entità logiche a cui si connettono AWS IoT. I dispositivi core Greengrass sono AWS IoT cose. Quando registri un dispositivo come AWS IoT oggetto, quel dispositivo può utilizzare un certificato digitale con cui autenticarsi. AWS
In questa sezione, crei AWS IoT qualcosa che rappresenta il tuo dispositivo.
Per creare qualsiasi AWS IoT cosa
-
Crea AWS IoT qualcosa per il tuo dispositivo. Sul tuo computer di sviluppo, esegui il seguente comando.
-
Sostituisci
MyGreengrassCore
con il nome dell'oggetto da usare. Questo nome è anche il nome del dispositivo principale Greengrass.Nota
Il nome dell'oggetto non può contenere i due punti (
:
).
aws iot create-thing --thing-name
MyGreengrassCore
La risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "thingName": "MyGreengrassCore", "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "thingId": "8cb4b6cd-268e-495d-b5b9-1713d71dbf42" }
-
-
(Facoltativo) Aggiungere l' AWS IoT oggetto a un gruppo di oggetti nuovo o esistente. Utilizzi i gruppi di cose per gestire flotte di dispositivi core Greengrass. Quando distribuisci componenti software sui tuoi dispositivi, puoi scegliere come target singoli dispositivi o gruppi di dispositivi. È possibile aggiungere un dispositivo a un gruppo di cose con una distribuzione Greengrass attiva per distribuire i componenti software di quel gruppo di cose sul dispositivo. Esegui questa operazione:
-
(Facoltativo) Crea un gruppo di AWS IoT cose.
-
Sostituirlo
MyGreengrassCoreGroup
con il nome del gruppo di oggetti da creare.Nota
Il nome del gruppo di cose non può contenere i due punti (
:
).
aws iot create-thing-group --thing-group-name
MyGreengrassCoreGroup
La risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "thingGroupName": "MyGreengrassCoreGroup", "thingGroupArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "thingGroupId": "4df721e1-ff9f-4f97-92dd-02db4e3f03aa" }
-
-
Aggiungere l' AWS IoT oggetto a un gruppo di oggetti.
-
Sostituiscilo
MyGreengrassCore
con il nome del tuo AWS IoT oggetto. -
Sostituisci
MyGreengrassCoreGroup
con il nome del gruppo di oggetti.
aws iot add-thing-to-thing-group --thing-name
MyGreengrassCore
--thing-group-nameMyGreengrassCoreGroup
Il comando non produce alcun output se la richiesta ha esito positivo.
-
-
Crea il certificato dell'oggetto
Quando si registra un dispositivo come AWS IoT oggetto, quel dispositivo può utilizzare un certificato digitale con AWS cui autenticarsi. Questo certificato consente al dispositivo di comunicare con AWS IoT e AWS IoT Greengrass.
In questa sezione, crei e scarichi certificati a cui il tuo dispositivo può connettersi AWS.
Se desideri configurare il software AWS IoT Greengrass Core per utilizzare un modulo di sicurezza hardware (HSM) per archiviare in modo sicuro la chiave privata e il certificato, segui i passaggi per creare il certificato da una chiave privata in un HSM. Altrimenti, segui i passaggi per creare il certificato e la chiave privata nel servizio. AWS IoT La funzionalità di sicurezza hardware è disponibile solo sui dispositivi Linux. Per ulteriori informazioni sulla sicurezza dell'hardware e sui requisiti per utilizzarla, vedereIntegrazione della sicurezza hardware.
Creare il certificato e la chiave privata nel AWS IoT servizio
Per creare il certificato dell'oggetto
-
Crea una cartella in cui scaricare i certificati relativi all' AWS IoT oggetto.
mkdir greengrass-v2-certs
-
Crea e scarica i certificati relativi all' AWS IoT oggetto.
aws iot create-keys-and-certificate --set-as-active --certificate-pem-outfile greengrass-v2-certs/device.pem.crt --public-key-outfile greengrass-v2-certs/public.pem.key --private-key-outfile greengrass-v2-certs/private.pem.key
La risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\ MIIBIjANBgkqhkEXAMPLEQEFAAOCAQ8AMIIBCgKCAQEAEXAMPLE1nnyJwKSMHw4h\ MMEXAMPLEuuN/dMAS3fyce8DW/4+EXAMPLEyjmoF/YVF/gHr99VEEXAMPLE5VF13\ 59VK7cEXAMPLE67GK+y+jikqXOgHh/xJTwo+sGpWEXAMPLEDz18xOd2ka4tCzuWEXAMPLEahJbYkCPUBSU8opVkR7qkEXAMPLE1DR6sx2HocliOOLtu6Fkw91swQWEXAMPLE\\GB3ZPrNh0PzQYvjUStZeccyNCx2EXAMPLEvp9mQOUXP6plfgxwKRX2fEXAMPLEDa\ hJLXkX3rHU2xbxJSq7D+XEXAMPLEcw+LyFhI5mgFRl88eGdsAEXAMPLElnI9EesG\ FQIDAQAB\ -----END PUBLIC KEY-----\ ", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\ key omitted for security reasons\ -----END RSA PRIVATE KEY-----\ " } }
Salva l'Amazon Resource Name (ARN) del certificato da utilizzare per configurare il certificato in un secondo momento.
Crea il certificato da una chiave privata in un HSM
Nota
Questa funzionalità è disponibile per la versione 2.5.3 e successive del componente Greengrass nucleus. AWS IoT Greengrass attualmente non supporta questa funzionalità sui dispositivi Windows core.
Per creare il certificato Thing
-
Sul dispositivo principale, inizializza un token PKCS #11 nell'HSM e genera una chiave privata. La chiave privata deve essere una chiave RSA con una dimensione di chiave RSA-2048 (o superiore) o una chiave ECC.
Nota
Per utilizzare un modulo di sicurezza hardware con chiavi ECC, è necessario utilizzare Greengrass nucleus v2.5.6 o versione successiva.
Per utilizzare un modulo di sicurezza hardware e un gestore segreto, è necessario utilizzare un modulo di sicurezza hardware con chiavi RSA.
Consulta la documentazione del tuo HSM per scoprire come inizializzare il token e generare la chiave privata. Se il tuo HSM supporta gli oggetti IDs, specifica un ID dell'oggetto quando generi la chiave privata. Salva l'ID dello slot, il PIN utente, l'etichetta dell'oggetto, l'ID dell'oggetto (se il tuo HSM ne utilizza uno) che specifichi quando inizializzi il token e generi la chiave privata. Questi valori vengono utilizzati successivamente quando si importa il certificato dell'oggetto nell'HSM e si configura il AWS IoT Greengrass software Core.
-
Crea una richiesta di firma del certificato (CSR) dalla chiave privata. AWS IoT utilizza questa CSR per creare un thing certificate per la chiave privata generata nell'HSM. Per informazioni su come creare una CSR dalla chiave privata, consulta la documentazione del tuo HSM. La CSR è un file, ad esempio.
iotdevicekey.csr
-
Copia la CSR dal dispositivo al tuo computer di sviluppo. Se SSH e SCP sono abilitati sul computer di sviluppo e sul dispositivo, puoi usare il
scp
comando sul tuo computer di sviluppo per trasferire la CSR. Sostituiscilodevice-ip-address
con l'indirizzo IP del dispositivo e sostituiscilo~/iotdevicekey.csr
con il percorso del file CSR sul dispositivo.scp
device-ip-address
:~/iotdevicekey.csr
iotdevicekey.csr -
Sul tuo computer di sviluppo, crea una cartella in cui scaricare il certificato relativo all' AWS IoT oggetto.
mkdir greengrass-v2-certs
-
Usa il file CSR per creare e scaricare il certificato relativo all' AWS IoT oggetto sul tuo computer di sviluppo.
aws iot create-certificate-from-csr --set-as-active --certificate-signing-request=file://iotdevicekey.csr --certificate-pem-outfile greengrass-v2-certs/device.pem.crt
La risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----" }
Salva l'ARN del certificato da utilizzare per configurare il certificato in un secondo momento.
Configura il certificato del oggetto
Allega il thing certificate all' AWS IoT oggetto che hai creato in precedenza e aggiungi una AWS IoT policy al certificato per definire le AWS IoT autorizzazioni per il dispositivo principale.
Per configurare il certificato dell'oggetto
-
Allega il certificato all' AWS IoT oggetto.
-
Sostituiscilo
MyGreengrassCore
con il nome del tuo AWS IoT oggetto. -
Sostituisci il certificato Amazon Resource Name (ARN) con l'ARN del certificato che hai creato nel passaggio precedente.
aws iot attach-thing-principal --thing-name
MyGreengrassCore
--principalarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
Il comando non produce alcun output se la richiesta ha esito positivo.
-
-
Crea e allega una AWS IoT policy che definisca le AWS IoT autorizzazioni per il tuo dispositivo principale Greengrass. La seguente politica consente l'accesso a tutti gli argomenti MQTT e alle operazioni di Greengrass, in modo che il dispositivo funzioni con applicazioni personalizzate e modifiche future che richiedono nuove operazioni Greengrass. È possibile limitare questa politica in base al proprio caso d'uso. Per ulteriori informazioni, consulta AWS IoT Politica minima per i dispositivi AWS IoT Greengrass V2 principali.
Se hai già configurato un dispositivo Greengrass core, puoi allegare la AWS IoT relativa policy invece di crearne una nuova.
Esegui questa operazione:
-
Crea un file che contenga il documento di AWS IoT policy richiesto dai dispositivi core Greengrass.
Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
nano greengrass-v2-iot-policy.json
Copiate il seguente codice JSON nel file.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish", "iot:Subscribe", "iot:Receive", "iot:Connect", "greengrass:*" ], "Resource": [ "*" ] } ] }
-
Crea una AWS IoT politica dal documento di policy.
-
Sostituisci
GreengrassV2IoTThingPolicy
con il nome della politica da creare.
aws iot create-policy --policy-name
GreengrassV2IoTThingPolicy
--policy-document file://greengrass-v2-iot-policy.jsonLa risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "policyName": "GreengrassV2IoTThingPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassV2IoTThingPolicy", "policyDocument": "{ \\"Version\\": \\"2012-10-17\\", \\"Statement\\": [ { \\"Effect\\": \\"Allow\\", \\"Action\\": [ \\"iot:Publish\\", \\"iot:Subscribe\\", \\"iot:Receive\\", \\"iot:Connect\\", \\"greengrass:*\\" ], \\"Resource\\": [ \\"*\\" ] } ] }", "policyVersionId": "1" }
-
-
Allega la AWS IoT policy al certificato dell' AWS IoT oggetto.
-
Sostituisci
GreengrassV2IoTThingPolicy
con il nome della politica da allegare. -
Sostituisci l'ARN di destinazione con l'ARN del certificato per il tuo oggetto. AWS IoT
aws iot attach-policy --policy-name
GreengrassV2IoTThingPolicy
--targetarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
Il comando non ha alcun output se la richiesta ha esito positivo.
-
-
Crea un ruolo di scambio di token
I dispositivi core Greengrass utilizzano un ruolo di servizio IAM, chiamato token exchange role, per autorizzare le chiamate ai servizi. AWS Il dispositivo utilizza il provider di AWS IoT credenziali per ottenere AWS credenziali temporanee per questo ruolo, che consente al dispositivo di interagire AWS IoT, inviare log ad Amazon CloudWatch Logs e scaricare elementi dei componenti personalizzati da Amazon S3. Per ulteriori informazioni, consulta Autorizza i dispositivi principali a interagire con i servizi AWS.
Si utilizza un alias di AWS IoT ruolo per configurare il ruolo di scambio di token per i dispositivi principali Greengrass. Gli alias di ruolo consentono di modificare il ruolo di scambio di token per un dispositivo ma mantengono invariata la configurazione del dispositivo. Per ulteriori informazioni, consulta Autorizzazione delle chiamate dirette ai AWS servizi nella Guida per gli AWS IoT Core sviluppatori.
In questa sezione, crei un ruolo IAM per lo scambio di token e un alias di AWS IoT ruolo che rimanda al ruolo. Se hai già configurato un dispositivo principale Greengrass, puoi utilizzare il ruolo di scambio di token e l'alias del ruolo invece di crearne di nuovi. Quindi, configuri il dispositivo in modo che utilizzi quel ruolo e quell'alias. AWS IoT
Per creare un ruolo IAM per lo scambio di token
-
Crea un ruolo IAM che il tuo dispositivo possa utilizzare come ruolo di scambio di token. Esegui questa operazione:
-
Crea un file che contenga il documento sulla politica di fiducia richiesto dal ruolo di scambio di token.
Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
nano device-role-trust-policy.json
Copiate il seguente codice JSON nel file.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
Crea il ruolo di scambio di token con il documento sulla politica di fiducia.
-
Sostituiscilo
GreengrassV2TokenExchangeRole
con il nome del ruolo IAM da creare.
aws iam create-role --role-name
GreengrassV2TokenExchangeRole
--assume-role-policy-document file://device-role-trust-policy.jsonLa risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "Role": { "Path": "/", "RoleName": "GreengrassV2TokenExchangeRole", "RoleId": "AROAZ2YMUHYHK5OKM77FB", "Arn": "arn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole", "CreateDate": "2021-02-06T00:13:29+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } }
-
-
Crea un file che contenga il documento sulla politica di accesso richiesto dal ruolo di scambio di token.
Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
nano device-role-access-policy.json
Copiate il seguente codice JSON nel file.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams", "s3:GetBucketLocation" ], "Resource": "*" } ] }
Nota
Questa politica di accesso non consente l'accesso agli artefatti dei componenti nei bucket S3. Per distribuire componenti personalizzati che definiscono gli artefatti in Amazon S3, devi aggiungere autorizzazioni al ruolo per consentire al dispositivo principale di recuperare gli artefatti dei componenti. Per ulteriori informazioni, consulta Consenti l'accesso ai bucket S3 per gli artefatti dei componenti.
Se non disponi ancora di un bucket S3 per gli artefatti dei componenti, puoi aggiungere queste autorizzazioni in un secondo momento dopo aver creato un bucket.
-
Crea la policy IAM dal documento di policy.
-
Sostituiscila
GreengrassV2TokenExchangeRoleAccess
con il nome della policy IAM da creare.
aws iam create-policy --policy-name
GreengrassV2TokenExchangeRoleAccess
--policy-document file://device-role-access-policy.jsonLa risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "Policy": { "PolicyName": "GreengrassV2TokenExchangeRoleAccess", "PolicyId": "ANPAZ2YMUHYHACI7C5Z66", "Arn": "arn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess", "Path": "/", "DefaultVersionId": "v1", "AttachmentCount": 0, "PermissionsBoundaryUsageCount": 0, "IsAttachable": true, "CreateDate": "2021-02-06T00:37:17+00:00", "UpdateDate": "2021-02-06T00:37:17+00:00" } }
-
-
Allega la policy IAM al ruolo di scambio di token.
-
Sostituisci
GreengrassV2TokenExchangeRole
con il nome del ruolo IAM. -
Sostituisci l'ARN della policy con l'ARN della policy IAM che hai creato nel passaggio precedente.
aws iam attach-role-policy --role-name
GreengrassV2TokenExchangeRole
--policy-arnarn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess
Il comando non ha alcun output se la richiesta ha esito positivo.
-
-
-
Crea un alias di AWS IoT ruolo che punti al ruolo di scambio di token.
-
Sostituiscilo
GreengrassCoreTokenExchangeRoleAlias
con il nome dell'alias del ruolo da creare. -
Sostituisci il ruolo ARN con l'ARN del ruolo IAM creato nel passaggio precedente.
aws iot create-role-alias --role-alias
GreengrassCoreTokenExchangeRoleAlias
--role-arnarn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole
La risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "roleAlias": "GreengrassCoreTokenExchangeRoleAlias", "roleAliasArn": "arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias" }
Nota
Per creare un alias di ruolo, devi disporre dell'autorizzazione a passare il ruolo IAM per lo scambio di token a. AWS IoT Se ricevi un messaggio di errore quando tenti di creare un alias di ruolo, verifica che AWS l'utente disponga di questa autorizzazione. Per ulteriori informazioni, consulta Concessione a un utente delle autorizzazioni per il trasferimento di un ruolo a un AWS servizio nella Guida per l'AWS Identity and Access Management utente.
-
-
Crea e allega una AWS IoT policy che consenta al tuo dispositivo principale Greengrass di utilizzare l'alias del ruolo per assumere il ruolo di scambio di token. Se hai già configurato un dispositivo principale Greengrass, puoi allegare la sua AWS IoT politica di alias di ruolo invece di crearne uno nuovo. Esegui questa operazione:
-
(Facoltativo) Create un file che contenga il documento di AWS IoT policy richiesto dall'alias di ruolo.
Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
nano greengrass-v2-iot-role-alias-policy.json
Copiate il seguente codice JSON nel file.
-
Sostituisci l'ARN della risorsa con l'ARN del tuo alias di ruolo.
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:AssumeRoleWithCertificate", "Resource": "
arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias
" } ] } -
-
Crea una AWS IoT politica dal documento di policy.
-
Sostituisci
GreengrassCoreTokenExchangeRoleAliasPolicy
con il nome della AWS IoT politica da creare.
aws iot create-policy --policy-name
GreengrassCoreTokenExchangeRoleAliasPolicy
--policy-document file://greengrass-v2-iot-role-alias-policy.jsonLa risposta è simile all'esempio seguente, se la richiesta ha esito positivo.
{ "policyName": "GreengrassCoreTokenExchangeRoleAliasPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassCoreTokenExchangeRoleAliasPolicy", "policyDocument": "{ \\"Version\\":\\"2012-10-17\\", \\"Statement\\": [ { \\"Effect\\": \\"Allow\\", \\"Action\\": \\"iot:AssumeRoleWithCertificate\\", \\"Resource\\": \\"arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias\\" } ] }", "policyVersionId": "1" }
-
-
Allega la AWS IoT policy al certificato dell' AWS IoT oggetto.
-
Sostituisci
GreengrassCoreTokenExchangeRoleAliasPolicy
con il nome della AWS IoT politica relativa agli alias del ruolo. -
Sostituisci l'ARN di destinazione con l'ARN del certificato per il tuo oggetto. AWS IoT
aws iot attach-policy --policy-name
GreengrassCoreTokenExchangeRoleAliasPolicy
--targetarn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4
Il comando non ha alcun output se la richiesta ha esito positivo.
-
-
Scarica i certificati sul dispositivo
In precedenza, avevi scaricato il certificato del dispositivo sul computer di sviluppo. In questa sezione, si copia il certificato sul dispositivo principale per configurare il dispositivo con i certificati a cui viene utilizzato per la connessione AWS IoT. Puoi anche scaricare il certificato Amazon Root Certificate Authority (CA). Se utilizzi un HSM, in questa sezione importi anche il file del certificato nell'HSM.
-
Se in precedenza hai creato il certificato e la chiave privata nel AWS IoT servizio, segui i passaggi per scaricare i certificati con chiave privata e file di certificato.
-
Se in precedenza hai creato il certificato dell'oggetto da una chiave privata in un modulo di sicurezza hardware (HSM), segui i passaggi per scaricare i certificati con la chiave privata e il certificato in un HSM.
Scarica i certificati con chiave privata e file di certificato
Per scaricare i certificati sul dispositivo
-
Copia il certificato AWS IoT Thing dal tuo computer di sviluppo al dispositivo. Se SSH e SCP sono abilitati sul computer di sviluppo e sul dispositivo, puoi usare il
scp
comando sul tuo computer di sviluppo per trasferire il certificato.device-ip-address
Sostituiscilo con l'indirizzo IP del tuo dispositivo.scp -r greengrass-v2-certs/
device-ip-address
:~ -
Crea la cartella principale Greengrass sul dispositivo. Successivamente installerai il software AWS IoT Greengrass Core in questa cartella.
Nota
In Windows esiste un limite di lunghezza del percorso di 260 caratteri. Se usi Windows, usa una cartella principale come
C:\greengrass\v2
oD:\greengrass\v2
per mantenere i percorsi dei componenti Greengrass al di sotto del limite di 260 caratteri.-
Sostituiscilo con la cartella da usare./greengrass/v2
sudo mkdir -p
/greengrass/v2
-
(Solo Linux) Imposta le autorizzazioni del genitore della cartella principale di Greengrass.
-
Sostituiscilo
/greengrass
con quello principale della cartella principale.
sudo chmod 755
/greengrass
-
-
Copia i AWS IoT Thing Certificates nella cartella principale di Greengrass.
-
Sostituisci
con la cartella principale di Greengrass./greengrass/v2
sudo cp -R ~/greengrass-v2-certs/*
/greengrass/v2
-
Scarica il certificato Amazon Root Certificate Authority (CA). AWS IoT per impostazione predefinita, i certificati sono associati al certificato CA root di Amazon. Scarica il CA1 certificato e il CA3certificato
. -
Sostituisci
o/greengrass/v2
C:\greengrass\v2
con la cartella principale di Greengrass.
sudo curl -o
/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem sudo curl -o - https://www.amazontrust.com/repository/AmazonRootCA3.pem >>/greengrass/v2
/AmazonRootCA1.pem/greengrass/v2
Scarica i certificati con la chiave privata e il certificato in un HSM
Nota
Questa funzionalità è disponibile per la versione 2.5.3 e successive del componente Greengrass nucleus. AWS IoT Greengrass attualmente non supporta questa funzionalità sui dispositivi Windows core.
Per scaricare i certificati sul dispositivo
-
Copia il certificato AWS IoT Thing dal tuo computer di sviluppo al dispositivo. Se SSH e SCP sono abilitati sul computer di sviluppo e sul dispositivo, puoi usare il
scp
comando sul tuo computer di sviluppo per trasferire il certificato.device-ip-address
Sostituiscilo con l'indirizzo IP del tuo dispositivo.scp -r greengrass-v2-certs/
device-ip-address
:~ -
Crea la cartella principale Greengrass sul dispositivo. Successivamente installerai il software AWS IoT Greengrass Core in questa cartella.
Nota
In Windows esiste un limite di lunghezza del percorso di 260 caratteri. Se usi Windows, usa una cartella principale come
C:\greengrass\v2
oD:\greengrass\v2
per mantenere i percorsi dei componenti Greengrass al di sotto del limite di 260 caratteri.-
Sostituiscilo con la cartella da usare./greengrass/v2
sudo mkdir -p
/greengrass/v2
-
(Solo Linux) Imposta le autorizzazioni del genitore della cartella principale di Greengrass.
-
Sostituiscilo
/greengrass
con quello principale della cartella principale.
sudo chmod 755
/greengrass
-
-
Importa il file del certificato dell'oggetto
~/greengrass-v2-certs/device.pem.crt
, nell'HSM. Consulta la documentazione del tuo HSM per scoprire come importare i certificati al suo interno. Importa il certificato utilizzando lo stesso token, ID slot, PIN utente, etichetta dell'oggetto e ID oggetto (se il tuo HSM ne utilizza uno) con cui hai generato la chiave privata nell'HSM in precedenza.Nota
Se hai generato la chiave privata in precedenza senza un ID di oggetto e il certificato ha un ID oggetto, imposta l'ID dell'oggetto della chiave privata sullo stesso valore del certificato. Consultate la documentazione del vostro HSM per scoprire come impostare l'ID dell'oggetto per l'oggetto chiave privata.
-
(Facoltativo) Eliminare il file del certificato dell'oggetto, in modo che esista solo nell'HSM.
rm ~/greengrass-v2-certs/device.pem.crt
-
Scarica il certificato Amazon Root Certificate Authority (CA). AWS IoT per impostazione predefinita, i certificati sono associati al certificato CA root di Amazon. Scarica sia il CA1 certificato che il CA3certificato
. -
Sostituisci
o/greengrass/v2
C:\greengrass\v2
con la cartella principale di Greengrass.
sudo curl -o
/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem sudo curl -o - https://www.amazontrust.com/repository/AmazonRootCA3.pem >>/greengrass/v2
/AmazonRootCA1.pem/greengrass/v2
Configura l'ambiente del dispositivo
Segui i passaggi di questa sezione per configurare un dispositivo Linux o Windows da utilizzare come dispositivo AWS IoT Greengrass principale.
Configura un dispositivo Linux
Per configurare un dispositivo Linux per AWS IoT Greengrass V2
-
Installa il runtime Java, necessario per l'esecuzione del software AWS IoT Greengrass Core. Ti consigliamo di utilizzare le versioni di supporto a lungo termine di Amazon Corretto
o OpenJDK . È richiesta la versione 8 o successiva. I seguenti comandi mostrano come installare OpenJDK sul tuo dispositivo. -
Per le distribuzioni basate su Debian o basate su Ubuntuu:
sudo apt install default-jdk
-
Per le distribuzioni basate su Red Hat:
sudo yum install java-11-openjdk-devel
-
Per Amazon Linux 2:
sudo amazon-linux-extras install java-openjdk11
-
Per Amazon Linux 2023:
sudo dnf install java-11-amazon-corretto -y
Al termine dell'installazione, esegui il comando seguente per verificare che Java funzioni sul tuo dispositivo Linux.
java -version
Il comando stampa la versione di Java in esecuzione sul dispositivo. Ad esempio, su una distribuzione basata su Debian, l'output potrebbe essere simile all'esempio seguente.
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)
-
-
(Facoltativo) Crea l'utente e il gruppo di sistema predefiniti che eseguono i componenti sul dispositivo. Puoi anche scegliere di lasciare che il programma di installazione del software AWS IoT Greengrass Core crei questo utente e gruppo durante l'installazione con l'argomento
--component-default-user
installer. Per ulteriori informazioni, consulta Argomenti dell'installatore.sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
-
Verificate che l'utente che esegue il software AWS IoT Greengrass Core (in genere
root
) sia autorizzato a funzionaresudo
con qualsiasi utente e gruppo.-
Eseguite il comando seguente per aprire il
/etc/sudoers
file.sudo visudo
-
Verificate che l'autorizzazione per l'utente sia simile all'esempio seguente.
root ALL=(ALL:ALL) ALL
-
-
(Facoltativo) Per eseguire funzioni Lambda containerizzate, è necessario abilitare cgroups
v1 e abilitare e montare i cgroup di memoria e dispositivi. Se non intendi eseguire funzioni Lambda containerizzate, puoi saltare questo passaggio. Per abilitare queste opzioni di cgroups, avvia il dispositivo con i seguenti parametri del kernel Linux.
cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
Per informazioni sulla visualizzazione e l'impostazione dei parametri del kernel per il tuo dispositivo, consulta la documentazione del tuo sistema operativo e del boot loader. Segui le istruzioni per impostare in modo permanente i parametri del kernel.
-
Installa tutte le altre dipendenze richieste sul tuo dispositivo come indicato dall'elenco dei requisiti in. Requisiti per il dispositivo
Configura un dispositivo Windows
Nota
Questa funzionalità è disponibile per la versione 2.5.0 e successive del componente Greengrass nucleus.
Per configurare un dispositivo Windows per AWS IoT Greengrass V2
-
Installa il runtime Java, necessario per l'esecuzione del software AWS IoT Greengrass Core. Ti consigliamo di utilizzare le versioni di supporto a lungo termine di Amazon Corretto
o OpenJDK . È richiesta la versione 8 o successiva. -
Controlla se Java è disponibile nella variabile di sistema PATH
e aggiungilo in caso contrario. L' LocalSystem account esegue il software AWS IoT Greengrass Core, quindi è necessario aggiungere Java alla variabile di sistema PATH anziché alla variabile utente PATH per l'utente. Esegui questa operazione: -
Premi il tasto Windows per aprire il menu di avvio.
-
Digita
environment variables
per cercare le opzioni di sistema dal menu di avvio. -
Nei risultati della ricerca del menu di avvio, scegli Modifica le variabili di ambiente di sistema per aprire la finestra delle proprietà del sistema.
-
Scegli Variabili di ambiente... per aprire la finestra Variabili d'ambiente.
-
In Variabili di sistema, seleziona Percorso, quindi scegli Modifica. Nella finestra Modifica variabile di ambiente, puoi visualizzare ogni percorso su una riga separata.
-
Controlla se è presente il percorso della
bin
cartella di installazione di Java. Il percorso potrebbe essere simile all'esempio seguente.C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
-
Se la
bin
cartella di installazione Java non è presente in Path, scegliete Nuovo per aggiungerla, quindi scegliete OK.
-
-
Aprite il prompt dei comandi di Windows (
cmd.exe
) come amministratore. -
Crea l'utente predefinito nell' LocalSystem account sul dispositivo Windows. Sostituiscilo
password
con una password sicura.net user /add ggc_user
password
Suggerimento
A seconda della configurazione di Windows, la password dell'utente potrebbe essere impostata per scadere in date future. Per garantire che le tue applicazioni Greengrass continuino a funzionare, tieni traccia della scadenza della password e aggiornala prima che scada. Puoi anche impostare la password dell'utente in modo che non scada mai.
-
Per verificare la scadenza di un utente e della relativa password, esegui il comando seguente.
net user
ggc_user
| findstr /C:expires -
Per impostare la password di un utente in modo che non scada mai, esegui il comando seguente.
wmic UserAccount where "Name='
ggc_user
'" set PasswordExpires=False -
Se utilizzi Windows 10 o versioni successive in cui il
wmic
comando è obsoleto, esegui il comandoseguente. PowerShell Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = '
ggc_user
'" | Set-CimInstance -Property @{PasswordExpires="False"}
-
-
Scarica e installa l'PsExecutilità
di Microsoft sul dispositivo. -
Utilizzate l' PsExec utilità per memorizzare il nome utente e la password per l'utente predefinito nell'istanza di Credential Manager per l' LocalSystem account. Sostituiscila
password
con la password dell'utente che hai impostato in precedenza.psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:
password
Se l'icona PsExec License Agreementapre, scegli Acceptper accettare la licenza ed eseguire il comando.
Nota
Sui dispositivi Windows, l' LocalSystem account esegue il Greengrass nucleus ed è necessario utilizzare l' PsExec utilità per memorizzare le informazioni utente predefinite nell'account. LocalSystem L'utilizzo dell'applicazione Credential Manager archivia queste informazioni nell'account Windows dell'utente attualmente connesso, anziché nell'account. LocalSystem
Scaricate il software Core AWS IoT Greengrass
È possibile scaricare la versione più recente del software AWS IoT Greengrass Core dal seguente indirizzo:
-
https://d2s8p88vqu9w66.cloudfront. net/releases/greengrass
-nucleus-latest.zip
Nota
È possibile scaricare una versione specifica del software AWS IoT Greengrass Core dal seguente percorso. Sostituiscila version
con la versione da scaricare.
https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-
version
.zip
Per scaricare il software AWS IoT Greengrass Core
-
Sul dispositivo principale, scaricate il software AWS IoT Greengrass Core in un file denominato
greengrass-nucleus-latest.zip
.curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
Scaricando questo software accetti l'Accordo di licenza del software Greengrass Core
. -
(Facoltativo) Per verificare la firma del software Greengrass nucleus
Nota
Questa funzionalità è disponibile con Greengrass nucleus versione 2.9.5 e successive.
-
Usa il seguente comando per verificare la firma del tuo artefatto Greengrass nucleus:
jarsigner -verify -certs -verbose
greengrass-nucleus-latest.zip
-
L'
jarsigner
invocazione produce un output che indica i risultati della verifica.-
Se il file zip Greengrass nucleus è firmato, l'output contiene la seguente dichiarazione:
jar verified.
-
Se il file zip Greengrass nucleus non è firmato, l'output contiene la seguente dichiarazione:
jar is unsigned.
-
-
Se hai fornito l'
-certs
opzione Jarsigner insieme alle-verbose
opzioni-verify
e, l'output include anche informazioni dettagliate sul certificato del firmatario.
-
-
Decomprimi il software AWS IoT Greengrass Core in una cartella sul tuo dispositivo. Sostituiscilo
GreengrassInstaller
con la cartella che desideri utilizzare.unzip greengrass-nucleus-latest.zip -d
GreengrassInstaller
&& rm greengrass-nucleus-latest.zip -
(Facoltativo) Eseguite il comando seguente per visualizzare la versione del software AWS IoT Greengrass Core.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version
Importante
Se installi una versione del nucleo Greengrass precedente alla v2.4.0, non rimuovere questa cartella dopo aver installato il software Core. AWS IoT Greengrass Il software AWS IoT Greengrass Core utilizza i file in questa cartella per l'esecuzione.
Se hai scaricato la versione più recente del software, installi la versione 2.4.0 o successiva e puoi rimuovere questa cartella dopo aver installato il software AWS IoT Greengrass Core.
Installa il software Core AWS IoT Greengrass
Esegui il programma di installazione con argomenti che specificano le seguenti azioni:
-
Esegui l'installazione da un file di configurazione parziale che specifica di utilizzare le AWS risorse e i certificati creati in precedenza. Il software AWS IoT Greengrass Core utilizza un file di configurazione che specifica la configurazione di ogni componente Greengrass sul dispositivo. Il programma di installazione crea un file di configurazione completo a partire dal file di configurazione parziale fornito dall'utente.
-
Specificate di utilizzare l'utente
ggc_user
del sistema per eseguire i componenti software sul dispositivo principale. Sui dispositivi Linux, questo comando specifica anche di utilizzare il gruppo diggc_group
sistema e il programma di installazione crea automaticamente l'utente e il gruppo di sistema. -
Configura il software AWS IoT Greengrass Core come servizio di sistema che viene eseguito all'avvio. Sui dispositivi Linux, ciò richiede il sistema di inizializzazione Systemd
. Importante
Sui dispositivi Windows core, è necessario configurare il software AWS IoT Greengrass Core come servizio di sistema.
Per ulteriori informazioni sugli argomenti che è possibile specificare, vedereArgomenti dell'installatore.
Nota
Se utilizzi AWS IoT Greengrass un dispositivo con memoria limitata, puoi controllare la quantità di memoria utilizzata dal software AWS IoT Greengrass Core. Per controllare l'allocazione della memoria, è possibile impostare le opzioni relative alla dimensione dell'heap JVM nel parametro di jvmOptions
configurazione del componente nucleus. Per ulteriori informazioni, consulta Controlla l'allocazione della memoria con le opzioni JVM.
-
Se in precedenza hai creato il certificato e la chiave privata nel AWS IoT servizio, segui i passaggi per installare il software AWS IoT Greengrass Core con la chiave privata e i file di certificato.
-
Se in precedenza hai creato il certificato dell'oggetto da una chiave privata in un modulo di sicurezza hardware (HSM), segui i passaggi per installare il software AWS IoT Greengrass Core con la chiave privata e il certificato in un HSM.
Installa il software AWS IoT Greengrass Core con chiave privata e file di certificato
Per installare il software AWS IoT Greengrass Core
-
Controlla la versione del software AWS IoT Greengrass Core.
-
Sostituisci
GreengrassInstaller
con il percorso della cartella che contiene il software.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version -
-
Utilizzate un editor di testo per creare un file di configurazione denominato
config.yaml
da fornire all'installatore.Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
nano
GreengrassInstaller
/config.yamlCopiate il seguente contenuto YAML nel file. Questo file di configurazione parziale specifica i parametri di sistema e i parametri del nucleo di Greengrass.
--- system: certificateFilePath: "
/device.pem.crt" privateKeyPath: "/greengrass/v2
/private.pem.key" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "/greengrass/v2
MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.14.0
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" fipsMode: "true" iotDataEndpoint: "data.iot-fips.us-west-2.amazonaws.com
" greengrassDataPlaneEndpoint: "iotData" iotCredEndpoint: "data.credentials.iot-fips.us-west-2.amazonaws.com
"Successivamente, esegui queste operazioni:
-
Sostituisci ogni istanza di
con la cartella principale di Greengrass./greengrass/v2
-
Sostituisci
MyGreengrassCore
con il nome della AWS IoT cosa. -
Sostituire
2.14.0
con la versione del software AWS IoT Greengrass Core. -
Sostituisci
us-west-2
con la Regione AWS posizione in cui hai creato le risorse. -
Sostituisci
GreengrassCoreTokenExchangeRoleAlias
con il nome dell'alias del ruolo di scambio di token. -
Sostituiscilo
iotDataEndpoint
con il tuo endpoint di AWS IoT dati. -
Sostituisci l'
iotCredEndpoint
endpoint con AWS IoT le tue credenziali.
-
-
Eseguite il programma di installazione e specificate di
--init-config
fornire il file di configurazione.-
Sostituisci
o/greengrass/v2
C:\greengrass\v2
con la cartella principale di Greengrass. -
Sostituisci ogni istanza di
GreengrassInstaller
con la cartella in cui hai decompresso il programma di installazione.
sudo -E java -Droot="
" -Dlog.store=FILE \ -jar .//greengrass/v2
GreengrassInstaller
/lib/Greengrass.jar \ --init-config ./GreengrassInstaller
/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service trueImportante
Nei dispositivi Windows Core, è necessario specificare
--setup-system-service true
di configurare il software AWS IoT Greengrass Core come servizio di sistema.Se si specifica
--setup-system-service true
, il programma di installazione stampaSuccessfully set up Nucleus as a system service
se ha configurato ed eseguito il software come servizio di sistema. In caso contrario, il programma di installazione non emette alcun messaggio se installa il software correttamente.Nota
Non è possibile utilizzare l'
deploy-dev-tools
argomento per distribuire strumenti di sviluppo locali quando si esegue il programma di installazione senza l'argomento.--provision true
Per informazioni sulla distribuzione della CLI Greengrass direttamente sul dispositivo, consulta. Interfaccia a riga di comando Greengrass -
-
Verifica l'installazione visualizzando i file nella cartella principale.
ls
/greengrass/v2
Se l'installazione è riuscita, la cartella principale contiene diverse cartelle, ad esempio
config
packages
, elogs
.
Installa il software AWS IoT Greengrass Core con la chiave privata e il certificato in un HSM
Nota
Questa funzionalità è disponibile per la versione 2.5.3 e successive del componente Greengrass nucleus. AWS IoT Greengrass attualmente non supporta questa funzionalità sui dispositivi Windows core.
Per installare il software AWS IoT Greengrass Core
-
Controlla la versione del software AWS IoT Greengrass Core.
-
Sostituisci
GreengrassInstaller
con il percorso della cartella che contiene il software.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version -
-
Per consentire al software AWS IoT Greengrass Core di utilizzare la chiave privata e il certificato nell'HSM, installate il componente del provider PKCS #11 quando installate il software AWS IoT Greengrass Core. Il componente del provider PKCS #11 è un plug-in che è possibile configurare durante l'installazione. È possibile scaricare la versione più recente del componente del provider PKCS #11 dalla seguente posizione:
Scarica il plugin del provider PKCS #11 in un file denominato.
aws.greengrass.crypto.Pkcs11Provider.jar
SostituisciloGreengrassInstaller
con la cartella che desideri utilizzare.curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/Pkcs11Provider/aws.greengrass.crypto.Pkcs11Provider-latest.jar >
GreengrassInstaller
/aws.greengrass.crypto.Pkcs11Provider.jarScaricando questo software accetti l'Accordo di licenza del software Greengrass Core
. -
Utilizzate un editor di testo per creare un file di configurazione denominato
config.yaml
da fornire all'installatore.Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
nano
GreengrassInstaller
/config.yamlCopiate il seguente contenuto YAML nel file. Questo file di configurazione parziale specifica i parametri di sistema, i parametri Greengrass nucleus e i parametri del provider PKCS #11.
--- system: certificateFilePath: "
/device.pem.crt" privateKeyPath: "/greengrass/v2
/private.pem.key" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" rootpath: "/greengrass/v2
" thingName: "/greengrass/v2
MyGreengrassCore
" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.14.0
" configuration: awsRegion: "us-west-2
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" fipsMode: "true" iotDataEndpoint: "data.iot-fips.us-west-2.amazonaws.com
" greengrassDataPlaneEndpoint: "iotData" iotCredEndpoint: "data.credentials.iot-fips.us-west-2.amazonaws.com
"Successivamente, esegui queste operazioni:
-
Sostituisci ogni istanza di
iotdevicekey
PKCS #11 URIs con l'etichetta dell'oggetto in cui hai creato la chiave privata e importato il certificato. -
Sostituisci ogni istanza di
con la cartella principale di Greengrass./greengrass/v2
-
Sostituisci
MyGreengrassCore
con il nome della AWS IoT cosa. -
Sostituire
2.14.0
con la versione del software AWS IoT Greengrass Core. -
Sostituisci
us-west-2
con la Regione AWS posizione in cui hai creato le risorse. -
Sostituisci
GreengrassCoreTokenExchangeRoleAlias
con il nome dell'alias del ruolo di scambio di token. -
Sostituiscilo
iotDataEndpoint
con il tuo endpoint di AWS IoT dati. -
Sostituisci l'
iotCredEndpoint
endpoint con AWS IoT le tue credenziali. -
Sostituisci i parametri di configurazione per il
aws.greengrass.crypto.Pkcs11Provider
componente con i valori per la configurazione HSM sul dispositivo principale.
-
-
Eseguite il programma di installazione e specificate
--init-config
di fornire il file di configurazione.-
Sostituisci
con la cartella principale di Greengrass./greengrass/v2
-
Sostituisci ogni istanza di
GreengrassInstaller
con la cartella in cui hai decompresso il programma di installazione.
sudo -E java -Droot="
" -Dlog.store=FILE \ -jar .//greengrass/v2
GreengrassInstaller
/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller
/aws.greengrass.crypto.Pkcs11Provider.jar \ --init-config ./GreengrassInstaller
/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service trueImportante
Nei dispositivi Windows Core, è necessario specificare
--setup-system-service true
di configurare il software AWS IoT Greengrass Core come servizio di sistema.Se si specifica
--setup-system-service true
, il programma di installazione stampaSuccessfully set up Nucleus as a system service
se ha configurato ed eseguito il software come servizio di sistema. In caso contrario, il programma di installazione non emette alcun messaggio se installa il software correttamente.Nota
Non è possibile utilizzare l'
deploy-dev-tools
argomento per distribuire strumenti di sviluppo locali quando si esegue il programma di installazione senza l'argomento.--provision true
Per informazioni sulla distribuzione della CLI Greengrass direttamente sul dispositivo, consulta. Interfaccia a riga di comando Greengrass -
-
Verifica l'installazione visualizzando i file nella cartella principale.
ls
/greengrass/v2
Se l'installazione è riuscita, la cartella principale contiene diverse cartelle, ad esempio
config
packages
, elogs
.
Se avete installato il software AWS IoT Greengrass Core come servizio di sistema, il programma di installazione esegue il software automaticamente. In caso contrario, è necessario eseguire il software manualmente. Per ulteriori informazioni, consulta Esegui il software AWS IoT Greengrass Core.
Per ulteriori informazioni su come configurare e utilizzare il software AWS IoT Greengrass, consulta quanto segue:
Installa gli endpoint FIPS con il provisioning della flotta
Questa funzionalità è disponibile per la versione 2.4.0 e successive del componente Greengrass nucleus.
Installa gli endpoint FIPS sul tuo software AWS IoT Greengrass Core con il provisioning del AWS IoT parco veicoli per i tuoi dispositivi principali.
Nota
Il plug-in Fleet Provisioning attualmente non supporta l'archiviazione di chiavi private e file di certificati in un modulo di sicurezza hardware (HSM). Per utilizzare un HSM, installa il software AWS IoT Greengrass Core con provisioning manuale.
Per installare il software AWS IoT Greengrass Core con il provisioning AWS IoT della flotta, è necessario configurare le risorse nel dispositivo AWS IoT utilizzato per Account AWS il provisioning dei dispositivi core Greengrass. Queste risorse includono un modello di provisioning, certificati di richiesta e un ruolo IAM per lo scambio di token. Dopo aver creato queste risorse, puoi riutilizzarle per effettuare il provisioning di più dispositivi principali in una flotta. Per ulteriori informazioni, consulta Configura il provisioning AWS IoT della flotta per i dispositivi core Greengrass.
Importante
Prima di scaricare il software AWS IoT Greengrass Core, verificate che il dispositivo principale soddisfi i requisiti per installare ed eseguire il software AWS IoT Greengrass Core v2.0.
Argomenti
Prerequisiti
Per installare il software AWS IoT Greengrass Core con il provisioning AWS IoT della flotta, devi prima configurare il provisioning del AWS IoT parco veicoli per i dispositivi core Greengrass. Dopo aver completato questi passaggi una volta, puoi utilizzare il provisioning del parco veicoli per installare il software AWS IoT Greengrass Core su un numero qualsiasi di dispositivi.
Recupera AWS IoT gli endpoint
Ottieni gli endpoint FIPS per te e salvali per Account AWS utilizzarli in un secondo momento. Il dispositivo utilizza questi endpoint per connettersi a. AWS IoT Esegui questa operazione:
-
Ottieni l'endpoint di dati FIPS per la tua regione negli endpoint del piano dati AWS IoT Core FIPS. L'endpoint di dati FIPS per te dovrebbe avere il seguente aspetto: Account AWS
data.iot-fips.us-west-2.amazonaws.com
-
Ottieni l'endpoint delle credenziali FIPS per la tua regione negli endpoint del AWS IoT Core piano dati FIPS. L'endpoint di credenziali FIPS per il tuo dovrebbe avere il seguente aspetto: Account AWS
data.credentials.iot-fips.us-west-2.amazonaws.com
Scarica i certificati sul dispositivo
Il dispositivo utilizza un certificato di richiesta e una chiave privata per autenticare la richiesta di fornitura di AWS risorse e acquisire un certificato del dispositivo X.509. È possibile incorporare il certificato di richiesta e la chiave privata nel dispositivo durante la produzione oppure copiare il certificato e la chiave sul dispositivo durante l'installazione. In questa sezione, copi il certificato di richiesta e la chiave privata sul dispositivo. Puoi anche scaricare il certificato Amazon Root Certificate Authority (CA) sul dispositivo.
Importante
Il provisioning dichiara che le chiavi private devono essere protette in ogni momento, anche sui dispositivi core Greengrass. Ti consigliamo di utilizzare i CloudWatch parametri e i log di Amazon per monitorare eventuali indicazioni di uso improprio, come l'uso non autorizzato del certificato di attestazione per il provisioning dei dispositivi. Se rilevi un uso improprio, disattiva il certificato di richiesta di approvvigionamento in modo che non possa essere utilizzato per il provisioning dei dispositivi. Per ulteriori informazioni, consulta Monitoring AWS IoT nella Developer Guide.AWS IoT Core
Per aiutarti a gestire meglio il numero di dispositivi e i dispositivi che si registrano automaticamente nel tuo sistema Account AWS, puoi specificare un hook di pre-provisioning quando crei un modello di provisioning del parco veicoli. Un hook di pre-provisioning è una AWS Lambda funzione che convalida i parametri del modello forniti dai dispositivi durante la registrazione. Ad esempio, è possibile creare un hook di pre-provisioning che controlli l'ID di un dispositivo confrontandolo con un database per verificare che il dispositivo disponga dell'autorizzazione al provisioning. Per ulteriori informazioni, consulta Pre-provisioning hook nella Developer Guide.AWS IoT Core
Per scaricare i certificati di richiesta sul dispositivo
-
Copia il certificato di richiesta e la chiave privata sul dispositivo. Se SSH e SCP sono abilitati sul computer di sviluppo e sul dispositivo, puoi utilizzare il
scp
comando sul tuo computer di sviluppo per trasferire il certificato di richiesta e la chiave privata. Il comando di esempio seguente trasferisce questi file in una cartella denominataclaim-certs
sul computer di sviluppo al dispositivo. Sostituiscilodevice-ip-address
con l'indirizzo IP del tuo dispositivo.scp -r claim-certs/
device-ip-address
:~ -
Crea la cartella principale Greengrass sul dispositivo. Successivamente installerai il software AWS IoT Greengrass Core in questa cartella.
Nota
In Windows esiste un limite di lunghezza del percorso di 260 caratteri. Se usi Windows, usa una cartella principale come
C:\greengrass\v2
oD:\greengrass\v2
per mantenere i percorsi dei componenti Greengrass al di sotto del limite di 260 caratteri.-
Sostituiscilo con la cartella da usare./greengrass/v2
sudo mkdir -p
/greengrass/v2
-
(Solo Linux) Imposta le autorizzazioni del genitore della cartella principale di Greengrass.
-
Sostituiscilo
/greengrass
con quello principale della cartella principale.
sudo chmod 755
/greengrass
-
-
Sposta i certificati di reclamo nella cartella principale di Greengrass.
-
Sostituisci
o/greengrass/v2
C:\greengrass\v2
con la cartella principale di Greengrass.
sudo mv ~/claim-certs
/greengrass/v2
-
-
Scarica sia il CA1 certificato che il CA3certificato
. sudo curl -o - https://www.amazontrust.com/repository/AmazonRootCA3.pem >>
/AmazonRootCA1.pem/greengrass/v2
Configura l'ambiente del dispositivo
Segui i passaggi di questa sezione per configurare un dispositivo Linux o Windows da utilizzare come dispositivo AWS IoT Greengrass principale.
Configura un dispositivo Linux
Per configurare un dispositivo Linux per AWS IoT Greengrass V2
-
Installa il runtime Java, necessario per l'esecuzione del software AWS IoT Greengrass Core. Ti consigliamo di utilizzare le versioni di supporto a lungo termine di Amazon Corretto
o OpenJDK . È richiesta la versione 8 o successiva. I seguenti comandi mostrano come installare OpenJDK sul tuo dispositivo. -
Per le distribuzioni basate su Debian o basate su Ubuntuu:
sudo apt install default-jdk
-
Per le distribuzioni basate su Red Hat:
sudo yum install java-11-openjdk-devel
-
Per Amazon Linux 2:
sudo amazon-linux-extras install java-openjdk11
-
Per Amazon Linux 2023:
sudo dnf install java-11-amazon-corretto -y
Al termine dell'installazione, esegui il comando seguente per verificare che Java funzioni sul tuo dispositivo Linux.
java -version
Il comando stampa la versione di Java in esecuzione sul dispositivo. Ad esempio, su una distribuzione basata su Debian, l'output potrebbe essere simile all'esempio seguente.
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)
-
-
(Facoltativo) Crea l'utente e il gruppo di sistema predefiniti che eseguono i componenti sul dispositivo. Puoi anche scegliere di lasciare che il programma di installazione del software AWS IoT Greengrass Core crei questo utente e gruppo durante l'installazione con l'argomento
--component-default-user
installer. Per ulteriori informazioni, consulta Argomenti dell'installatore.sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
-
Verificate che l'utente che esegue il software AWS IoT Greengrass Core (in genere
root
) sia autorizzato a funzionaresudo
con qualsiasi utente e gruppo.-
Eseguite il comando seguente per aprire il
/etc/sudoers
file.sudo visudo
-
Verificate che l'autorizzazione per l'utente sia simile all'esempio seguente.
root ALL=(ALL:ALL) ALL
-
-
(Facoltativo) Per eseguire funzioni Lambda containerizzate, è necessario abilitare cgroups
v1 e abilitare e montare i cgroup di memoria e dispositivi. Se non intendi eseguire funzioni Lambda containerizzate, puoi saltare questo passaggio. Per abilitare queste opzioni di cgroups, avvia il dispositivo con i seguenti parametri del kernel Linux.
cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
Per informazioni sulla visualizzazione e l'impostazione dei parametri del kernel per il tuo dispositivo, consulta la documentazione del tuo sistema operativo e del boot loader. Segui le istruzioni per impostare in modo permanente i parametri del kernel.
-
Installa tutte le altre dipendenze richieste sul tuo dispositivo come indicato dall'elenco dei requisiti in. Requisiti per il dispositivo
Configura un dispositivo Windows
Nota
Questa funzionalità è disponibile per la versione 2.5.0 e successive del componente Greengrass nucleus.
Per configurare un dispositivo Windows per AWS IoT Greengrass V2
-
Installa il runtime Java, necessario per l'esecuzione del software AWS IoT Greengrass Core. Ti consigliamo di utilizzare le versioni di supporto a lungo termine di Amazon Corretto
o OpenJDK . È richiesta la versione 8 o successiva. -
Controlla se Java è disponibile nella variabile di sistema PATH
e aggiungilo in caso contrario. L' LocalSystem account esegue il software AWS IoT Greengrass Core, quindi è necessario aggiungere Java alla variabile di sistema PATH anziché alla variabile utente PATH per l'utente. Esegui questa operazione: -
Premi il tasto Windows per aprire il menu di avvio.
-
Digita
environment variables
per cercare le opzioni di sistema dal menu di avvio. -
Nei risultati della ricerca del menu di avvio, scegli Modifica le variabili di ambiente di sistema per aprire la finestra delle proprietà del sistema.
-
Scegli Variabili di ambiente... per aprire la finestra Variabili d'ambiente.
-
In Variabili di sistema, seleziona Percorso, quindi scegli Modifica. Nella finestra Modifica variabile di ambiente, puoi visualizzare ogni percorso su una riga separata.
-
Controlla se è presente il percorso della
bin
cartella di installazione di Java. Il percorso potrebbe essere simile all'esempio seguente.C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
-
Se la
bin
cartella di installazione Java non è presente in Path, scegliete Nuovo per aggiungerla, quindi scegliete OK.
-
-
Aprite il prompt dei comandi di Windows (
cmd.exe
) come amministratore. -
Crea l'utente predefinito nell' LocalSystem account sul dispositivo Windows. Sostituiscilo
password
con una password sicura.net user /add ggc_user
password
Suggerimento
A seconda della configurazione di Windows, la password dell'utente potrebbe essere impostata per scadere in date future. Per garantire che le tue applicazioni Greengrass continuino a funzionare, tieni traccia della scadenza della password e aggiornala prima che scada. Puoi anche impostare la password dell'utente in modo che non scada mai.
-
Per verificare la scadenza di un utente e della relativa password, esegui il comando seguente.
net user
ggc_user
| findstr /C:expires -
Per impostare la password di un utente in modo che non scada mai, esegui il comando seguente.
wmic UserAccount where "Name='
ggc_user
'" set PasswordExpires=False -
Se utilizzi Windows 10 o versioni successive in cui il
wmic
comando è obsoleto, esegui il comandoseguente. PowerShell Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = '
ggc_user
'" | Set-CimInstance -Property @{PasswordExpires="False"}
-
-
Scarica e installa l'PsExecutilità
di Microsoft sul dispositivo. -
Utilizzate l' PsExec utilità per memorizzare il nome utente e la password per l'utente predefinito nell'istanza di Credential Manager per l' LocalSystem account. Sostituiscila
password
con la password dell'utente che hai impostato in precedenza.psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:
password
Se l'icona PsExec License Agreementapre, scegli Acceptper accettare la licenza ed eseguire il comando.
Nota
Sui dispositivi Windows, l' LocalSystem account esegue il Greengrass nucleus ed è necessario utilizzare l' PsExec utilità per memorizzare le informazioni utente predefinite nell'account. LocalSystem L'utilizzo dell'applicazione Credential Manager archivia queste informazioni nell'account Windows dell'utente attualmente connesso, anziché nell'account. LocalSystem
Scaricate il software Core AWS IoT Greengrass
È possibile scaricare la versione più recente del software AWS IoT Greengrass Core dal seguente indirizzo:
-
https://d2s8p88vqu9w66.cloudfront. net/releases/greengrass
-nucleus-latest.zip
Nota
È possibile scaricare una versione specifica del software AWS IoT Greengrass Core dal seguente percorso. Sostituiscila version
con la versione da scaricare.
https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-
version
.zip
Per scaricare il software AWS IoT Greengrass Core
-
Sul dispositivo principale, scaricate il software AWS IoT Greengrass Core in un file denominato
greengrass-nucleus-latest.zip
.curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
Scaricando questo software accetti l'Accordo di licenza del software Greengrass Core
. -
(Facoltativo) Per verificare la firma del software Greengrass nucleus
Nota
Questa funzionalità è disponibile con Greengrass nucleus versione 2.9.5 e successive.
-
Usa il seguente comando per verificare la firma del tuo artefatto Greengrass nucleus:
jarsigner -verify -certs -verbose
greengrass-nucleus-latest.zip
-
L'
jarsigner
invocazione produce un output che indica i risultati della verifica.-
Se il file zip Greengrass nucleus è firmato, l'output contiene la seguente dichiarazione:
jar verified.
-
Se il file zip Greengrass nucleus non è firmato, l'output contiene la seguente dichiarazione:
jar is unsigned.
-
-
Se hai fornito l'
-certs
opzione Jarsigner insieme alle-verbose
opzioni-verify
e, l'output include anche informazioni dettagliate sul certificato del firmatario.
-
-
Decomprimi il software AWS IoT Greengrass Core in una cartella sul tuo dispositivo. Sostituiscilo
GreengrassInstaller
con la cartella che desideri utilizzare.unzip greengrass-nucleus-latest.zip -d
GreengrassInstaller
&& rm greengrass-nucleus-latest.zip -
(Facoltativo) Eseguite il comando seguente per visualizzare la versione del software AWS IoT Greengrass Core.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version
Importante
Se installi una versione del nucleo Greengrass precedente alla v2.4.0, non rimuovere questa cartella dopo aver installato il software Core. AWS IoT Greengrass Il software AWS IoT Greengrass Core utilizza i file in questa cartella per l'esecuzione.
Se hai scaricato la versione più recente del software, installi la versione 2.4.0 o successiva e puoi rimuovere questa cartella dopo aver installato il software AWS IoT Greengrass Core.
Scarica il plug-in per il provisioning AWS IoT della flotta
Puoi scaricare l'ultima versione del plug-in per il provisioning AWS IoT della flotta dal seguente indirizzo:
Nota
È possibile scaricare una versione specifica del plug-in per il provisioning AWS IoT della flotta dalla seguente posizione. version
Sostituiscila con la versione da scaricare. Per ulteriori informazioni su ciascuna versione del plug-in Fleet Provisioning, consultaAWS IoT log delle modifiche del plugin per il provisioning della flotta.
https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-
version
.jar
Il plug-in per il provisioning della flotta è open source. Per visualizzarne il codice sorgente, consulta il plug-in AWS IoT Fleet Provisioning
Per scaricare il plug-in per il provisioning AWS IoT della flotta
-
Sul tuo dispositivo, scarica il plug-in AWS IoT Fleet Provisioning in un file denominato.
aws.greengrass.FleetProvisioningByClaim.jar
SostituisciloGreengrassInstaller
con la cartella che desideri utilizzare.curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar >
GreengrassInstaller
/aws.greengrass.FleetProvisioningByClaim.jarScaricando questo software accetti l'Accordo di licenza del software Greengrass Core
.
Installare il software AWS IoT Greengrass Core.
Esegui il programma di installazione con argomenti che specificano le seguenti azioni:
-
Esegui l'installazione da un file di configurazione parziale che specifica di utilizzare il plug-in fleet provisioning per il provisioning delle risorse. AWS Il software AWS IoT Greengrass Core utilizza un file di configurazione che specifica la configurazione di ogni componente Greengrass sul dispositivo. Il programma di installazione crea un file di configurazione completo a partire dal file di configurazione parziale fornito dall'utente e dalle AWS risorse create dal plug-in Fleet Provisioning.
-
Specificare di utilizzare l'utente
ggc_user
del sistema per eseguire i componenti software sul dispositivo principale. Sui dispositivi Linux, questo comando specifica anche di utilizzare il gruppo diggc_group
sistema e il programma di installazione crea automaticamente l'utente e il gruppo di sistema. -
Configura il software AWS IoT Greengrass Core come servizio di sistema che viene eseguito all'avvio. Sui dispositivi Linux, ciò richiede il sistema di inizializzazione Systemd
. Importante
Sui dispositivi Windows core, è necessario configurare il software AWS IoT Greengrass Core come servizio di sistema.
Per ulteriori informazioni sugli argomenti che è possibile specificare, vedereArgomenti dell'installatore.
Nota
Se utilizzi AWS IoT Greengrass un dispositivo con memoria limitata, puoi controllare la quantità di memoria utilizzata dal software AWS IoT Greengrass Core. Per controllare l'allocazione della memoria, è possibile impostare le opzioni relative alla dimensione dell'heap JVM nel parametro di jvmOptions
configurazione del componente nucleus. Per ulteriori informazioni, consulta Controlla l'allocazione della memoria con le opzioni JVM.
Per installare il software Core AWS IoT Greengrass
-
Controlla la versione del software AWS IoT Greengrass Core.
-
Sostituisci
GreengrassInstaller
con il percorso della cartella che contiene il software.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version -
-
Utilizzate un editor di testo per creare un file di configurazione denominato
config.yaml
da fornire all'installatore.Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
nano
GreengrassInstaller
/config.yamlCopiate il seguente contenuto YAML nel file. Questo file di configurazione parziale specifica i parametri per il plug-in Fleet Provisioning. Per ulteriori informazioni sulle opzioni che è possibile specificare, vedere. Configurare il plug-in per il provisioning AWS IoT della flotta
--- services: aws.greengrass.Nucleus: version: "
2.14.0
" configuration: fipsMode: "true" greengrassDataPlaneEndpoint: "iotData" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "
" awsRegion: "/greengrass/v2
us-west-2
" iotDataEndpoint: "data.iot-fips.us-west-2.amazonaws.com
" iotCredEndpoint: "data.credentials.iot-fips.us-west-2.amazonaws.com
" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias
" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "
/claim-certs/claim.pem.crt" claimCertificatePrivateKeyPath: "/greengrass/v2
/claim-certs/claim.private.pem.key" rootCaPath: "/greengrass/v2
/AmazonRootCA1.pem" templateParameters: ThingName: "/greengrass/v2
MyGreengrassCore
" ThingGroupName: "MyGreengrassCoreGroup
"Successivamente, esegui queste operazioni:
-
Sostituire
2.14.0
con la versione del software AWS IoT Greengrass Core. -
Sostituisci ogni istanza di
o/greengrass/v2
C:\greengrass\v2
con la cartella principale di Greengrass.Nota
Sui dispositivi Windows, è necessario specificare i separatori di percorso come doppie barre rovesciate (
\\
), ad esempio.C:\\greengrass\\v2
-
us-west-2
Sostituiscilo con la AWS regione in cui hai creato il modello di provisioning e altre risorse. -
Sostituiscilo
iotDataEndpoint
con il tuo endpoint di AWS IoT dati. -
Sostituisci l'
iotCredentialEndpoint
endpoint con AWS IoT le tue credenziali. -
Sostituisci
GreengrassCoreTokenExchangeRoleAlias
con il nome dell'alias del ruolo di scambio di token. -
Sostituiscilo
GreengrassFleetProvisioningTemplate
con il nome del modello di approvvigionamento della flotta. -
Sostituisci il
claimCertificatePath
con il percorso del certificato di richiesta sul dispositivo. -
Sostituiscilo
claimCertificatePrivateKeyPath
con il percorso della chiave privata del certificato di richiesta sul dispositivo. -
Sostituisci i parametri del modello (
templateParameters
) con i valori da utilizzare per il provisioning del dispositivo. Questo esempio si riferisce al modello di esempio che definisceThingName
iThingGroupName
parametri.
-
Eseguire il programma di installazione. Specificate
--trusted-plugin
di fornire il plug-in Fleet Provisioning e specificate--init-config
di fornire il file di configurazione.-
Sostituisci
con la cartella principale di Greengrass./greengrass/v2
-
Sostituisci ogni istanza di
GreengrassInstaller
con la cartella in cui hai decompresso il programma di installazione.
sudo -E java -Droot="
" -Dlog.store=FILE \ -jar .//greengrass/v2
GreengrassInstaller
/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller
/aws.greengrass.FleetProvisioningByClaim.jar \ --init-config ./GreengrassInstaller
/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service trueImportante
Nei dispositivi Windows Core, è necessario specificare
--setup-system-service true
di configurare il software AWS IoT Greengrass Core come servizio di sistema.Se si specifica
--setup-system-service true
, il programma di installazione stampaSuccessfully set up Nucleus as a system service
se ha configurato ed eseguito il software come servizio di sistema. In caso contrario, il programma di installazione non emette alcun messaggio se installa il software correttamente.Nota
Non è possibile utilizzare l'
deploy-dev-tools
argomento per distribuire strumenti di sviluppo locali quando si esegue il programma di installazione senza l'argomento.--provision true
Per informazioni sulla distribuzione della CLI Greengrass direttamente sul dispositivo, consulta. Interfaccia a riga di comando Greengrass -
-
Verifica l'installazione visualizzando i file nella cartella principale.
ls
/greengrass/v2
Se l'installazione è riuscita, la cartella principale contiene diverse cartelle, ad esempio
config
packages
, elogs
.
Se avete installato il software AWS IoT Greengrass Core come servizio di sistema, il programma di installazione esegue il software automaticamente. In caso contrario, è necessario eseguire il software manualmente. Per ulteriori informazioni, consulta Esegui il software AWS IoT Greengrass Core.
Per ulteriori informazioni su come configurare e utilizzare il software AWS IoT Greengrass, consulta quanto segue:
Installa gli endpoint FIPS con il provisioning automatico delle risorse
Il software AWS IoT Greengrass Core include un programma di installazione che configura il dispositivo come dispositivo principale Greengrass. Per configurare rapidamente un dispositivo, l'installatore può fornire il thing, il AWS IoT AWS IoT thing group, il ruolo IAM e l'alias di AWS IoT ruolo necessari per il funzionamento del dispositivo principale. Il programma di installazione può anche distribuire gli strumenti di sviluppo locali sul dispositivo principale, in modo da poter utilizzare il dispositivo per sviluppare e testare componenti software personalizzati. Il programma di installazione richiede AWS credenziali per fornire queste risorse e creare la distribuzione.
Se non è possibile fornire AWS le credenziali al dispositivo, è possibile fornire le AWS risorse necessarie al funzionamento del dispositivo principale. Puoi anche distribuire gli strumenti di sviluppo su un dispositivo principale da utilizzare come dispositivo di sviluppo. Ciò consente di fornire meno autorizzazioni al dispositivo quando si esegue il programma di installazione. Per ulteriori informazioni, consulta Installa il software AWS IoT Greengrass Core con provisioning manuale delle risorse.
Importante
Prima di scaricare il software AWS IoT Greengrass Core, verifica che il dispositivo principale soddisfi i requisiti per installare ed eseguire il software AWS IoT Greengrass Core v2.0.
Argomenti
Configura l'ambiente del dispositivo
Segui i passaggi di questa sezione per configurare un dispositivo Linux o Windows da utilizzare come dispositivo AWS IoT Greengrass principale.
Configura un dispositivo Linux
Per configurare un dispositivo Linux per AWS IoT Greengrass V2
-
Installa il runtime Java, necessario per l'esecuzione del software AWS IoT Greengrass Core. Ti consigliamo di utilizzare le versioni di supporto a lungo termine di Amazon Corretto
o OpenJDK . È richiesta la versione 8 o successiva. I seguenti comandi mostrano come installare OpenJDK sul tuo dispositivo. -
Per le distribuzioni basate su Debian o basate su Ubuntuu:
sudo apt install default-jdk
-
Per le distribuzioni basate su Red Hat:
sudo yum install java-11-openjdk-devel
-
Per Amazon Linux 2:
sudo amazon-linux-extras install java-openjdk11
-
Per Amazon Linux 2023:
sudo dnf install java-11-amazon-corretto -y
Al termine dell'installazione, esegui il comando seguente per verificare che Java funzioni sul tuo dispositivo Linux.
java -version
Il comando stampa la versione di Java in esecuzione sul dispositivo. Ad esempio, su una distribuzione basata su Debian, l'output potrebbe essere simile all'esempio seguente.
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)
-
-
(Facoltativo) Crea l'utente e il gruppo di sistema predefiniti che eseguono i componenti sul dispositivo. Puoi anche scegliere di lasciare che il programma di installazione del software AWS IoT Greengrass Core crei questo utente e gruppo durante l'installazione con l'argomento
--component-default-user
installer. Per ulteriori informazioni, consulta Argomenti dell'installatore.sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
-
Verificate che l'utente che esegue il software AWS IoT Greengrass Core (in genere
root
) sia autorizzato a funzionaresudo
con qualsiasi utente e gruppo.-
Eseguite il comando seguente per aprire il
/etc/sudoers
file.sudo visudo
-
Verificate che l'autorizzazione per l'utente sia simile all'esempio seguente.
root ALL=(ALL:ALL) ALL
-
-
(Facoltativo) Per eseguire funzioni Lambda containerizzate, è necessario abilitare cgroups
v1 e abilitare e montare i cgroup di memoria e dispositivi. Se non intendi eseguire funzioni Lambda containerizzate, puoi saltare questo passaggio. Per abilitare queste opzioni di cgroups, avvia il dispositivo con i seguenti parametri del kernel Linux.
cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
Per informazioni sulla visualizzazione e l'impostazione dei parametri del kernel per il tuo dispositivo, consulta la documentazione del tuo sistema operativo e del boot loader. Segui le istruzioni per impostare in modo permanente i parametri del kernel.
-
Installa tutte le altre dipendenze richieste sul tuo dispositivo come indicato dall'elenco dei requisiti in. Requisiti per il dispositivo
Configura un dispositivo Windows
Nota
Questa funzionalità è disponibile per la versione 2.5.0 e successive del componente Greengrass nucleus.
Per configurare un dispositivo Windows per AWS IoT Greengrass V2
-
Installa il runtime Java, necessario per l'esecuzione del software AWS IoT Greengrass Core. Ti consigliamo di utilizzare le versioni di supporto a lungo termine di Amazon Corretto
o OpenJDK . È richiesta la versione 8 o successiva. -
Controlla se Java è disponibile nella variabile di sistema PATH
e aggiungilo in caso contrario. L' LocalSystem account esegue il software AWS IoT Greengrass Core, quindi è necessario aggiungere Java alla variabile di sistema PATH anziché alla variabile utente PATH per l'utente. Esegui questa operazione: -
Premi il tasto Windows per aprire il menu di avvio.
-
Digita
environment variables
per cercare le opzioni di sistema dal menu di avvio. -
Nei risultati della ricerca del menu di avvio, scegli Modifica le variabili di ambiente di sistema per aprire la finestra delle proprietà del sistema.
-
Scegli Variabili di ambiente... per aprire la finestra Variabili d'ambiente.
-
In Variabili di sistema, seleziona Percorso, quindi scegli Modifica. Nella finestra Modifica variabile di ambiente, puoi visualizzare ogni percorso su una riga separata.
-
Controlla se è presente il percorso della
bin
cartella di installazione di Java. Il percorso potrebbe essere simile all'esempio seguente.C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
-
Se la
bin
cartella di installazione Java non è presente in Path, scegliete Nuovo per aggiungerla, quindi scegliete OK.
-
-
Aprite il prompt dei comandi di Windows (
cmd.exe
) come amministratore. -
Crea l'utente predefinito nell' LocalSystem account sul dispositivo Windows. Sostituiscilo
password
con una password sicura.net user /add ggc_user
password
Suggerimento
A seconda della configurazione di Windows, la password dell'utente potrebbe essere impostata per scadere in date future. Per garantire che le tue applicazioni Greengrass continuino a funzionare, tieni traccia della scadenza della password e aggiornala prima che scada. Puoi anche impostare la password dell'utente in modo che non scada mai.
-
Per verificare la scadenza di un utente e della relativa password, esegui il comando seguente.
net user
ggc_user
| findstr /C:expires -
Per impostare la password di un utente in modo che non scada mai, esegui il comando seguente.
wmic UserAccount where "Name='
ggc_user
'" set PasswordExpires=False -
Se utilizzi Windows 10 o versioni successive in cui il
wmic
comando è obsoleto, esegui il comandoseguente. PowerShell Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = '
ggc_user
'" | Set-CimInstance -Property @{PasswordExpires="False"}
-
-
Scarica e installa l'PsExecutilità
di Microsoft sul dispositivo. -
Utilizzate l' PsExec utilità per memorizzare il nome utente e la password per l'utente predefinito nell'istanza di Credential Manager per l' LocalSystem account. Sostituiscila
password
con la password dell'utente che hai impostato in precedenza.psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:
password
Se l'icona PsExec License Agreementapre, scegli Acceptper accettare la licenza ed eseguire il comando.
Nota
Sui dispositivi Windows, l' LocalSystem account esegue il Greengrass nucleus ed è necessario utilizzare l' PsExec utilità per memorizzare le informazioni utente predefinite nell'account. LocalSystem L'utilizzo dell'applicazione Credential Manager archivia queste informazioni nell'account Windows dell'utente attualmente connesso, anziché nell'account. LocalSystem
Fornisci AWS le credenziali al dispositivo
Fornisci AWS le tue credenziali al dispositivo in modo che l'installatore possa fornire le risorse necessarie. AWS Per ulteriori informazioni sulle autorizzazioni richieste, consulta Policy IAM minima per l'installatore per il provisioning delle risorse.
Per fornire AWS le credenziali al dispositivo
-
Fornisci AWS le tue credenziali al dispositivo in modo che l'installatore possa fornire le risorse AWS IoT e IAM per il tuo dispositivo principale. Per aumentare la sicurezza, ti consigliamo di ottenere credenziali temporanee per un ruolo IAM che consenta solo le autorizzazioni minime necessarie per il provisioning. Per ulteriori informazioni, consulta Policy IAM minima per l'installatore per il provisioning delle risorse.
Nota
Il programma di installazione non salva né archivia le tue credenziali.
Sul dispositivo, esegui una delle seguenti operazioni per recuperare le credenziali e renderle disponibili al programma di installazione del AWS IoT Greengrass software Core:
-
(Consigliato) Utilizza credenziali temporanee da AWS IAM Identity Center
-
Fornisci l'ID della chiave di accesso, la chiave di accesso segreta e il token di sessione dall'IAM Identity Center. Per ulteriori informazioni, consulta Aggiornamento manuale delle credenziali in Acquisizione e aggiornamento delle credenziali temporanee nella guida per l'utente di IAM Identity Center.
-
Esegui i seguenti comandi per fornire le credenziali al software Core. AWS IoT Greengrass
export AWS_ACCESS_KEY_ID=
AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
-
-
Utilizza credenziali di sicurezza temporanee da un ruolo IAM:
-
Fornisci l'ID della chiave di accesso, la chiave di accesso segreta e il token di sessione da un ruolo IAM che assumi. Per ulteriori informazioni su come recuperare queste credenziali, consulta la sezione Richiesta di credenziali di sicurezza temporanee nella Guida per l'utente IAM.
-
Esegui i seguenti comandi per fornire le credenziali al software Core. AWS IoT Greengrass
export AWS_ACCESS_KEY_ID=
AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
-
-
Utilizza le credenziali a lungo termine di un utente IAM:
-
Fornisci l'ID della chiave di accesso e la chiave di accesso segreta per il tuo utente IAM. Puoi creare un utente IAM per il provisioning da eliminare successivamente. Per la policy IAM da fornire all'utente, consultaPolicy IAM minima per l'installatore per il provisioning delle risorse. Per ulteriori informazioni su come recuperare le credenziali a lungo termine, consulta Managing access keys for IAM users nella IAM User Guide.
-
Esegui i seguenti comandi per fornire le credenziali al AWS IoT Greengrass software Core.
export AWS_ACCESS_KEY_ID=
AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
-
(Facoltativo) Se hai creato un utente IAM per il provisioning del tuo dispositivo Greengrass, elimina l'utente.
-
(Facoltativo) Se hai utilizzato l'ID della chiave di accesso e la chiave di accesso segreta di un utente IAM esistente, aggiorna le chiavi dell'utente in modo che non siano più valide. Per ulteriori informazioni, consulta Aggiornamento delle chiavi di accesso nella guida AWS Identity and Access Management per l'utente.
-
-
Scaricate il software AWS IoT Greengrass Core
È possibile scaricare la versione più recente del software AWS IoT Greengrass Core dal seguente indirizzo:
-
https://d2s8p88vqu9w66.cloudfront. net/releases/greengrass
-nucleus-latest.zip
Nota
È possibile scaricare una versione specifica del software AWS IoT Greengrass Core dal seguente percorso. Sostituiscila version
con la versione da scaricare.
https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-
version
.zip
Per scaricare il software AWS IoT Greengrass Core
-
Sul dispositivo principale, scaricate il software AWS IoT Greengrass Core in un file denominato
greengrass-nucleus-latest.zip
.curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
Scaricando questo software accetti l'Accordo di licenza del software Greengrass Core
. -
(Facoltativo) Per verificare la firma del software Greengrass nucleus
Nota
Questa funzionalità è disponibile con Greengrass nucleus versione 2.9.5 e successive.
-
Usa il seguente comando per verificare la firma del tuo artefatto Greengrass nucleus:
jarsigner -verify -certs -verbose
greengrass-nucleus-latest.zip
-
L'
jarsigner
invocazione produce un output che indica i risultati della verifica.-
Se il file zip Greengrass nucleus è firmato, l'output contiene la seguente dichiarazione:
jar verified.
-
Se il file zip Greengrass nucleus non è firmato, l'output contiene la seguente dichiarazione:
jar is unsigned.
-
-
Se hai fornito l'
-certs
opzione Jarsigner insieme alle-verbose
opzioni-verify
e, l'output include anche informazioni dettagliate sul certificato del firmatario.
-
-
Decomprimi il software AWS IoT Greengrass Core in una cartella sul tuo dispositivo. Sostituiscilo
GreengrassInstaller
con la cartella che desideri utilizzare.unzip greengrass-nucleus-latest.zip -d
GreengrassInstaller
&& rm greengrass-nucleus-latest.zip -
(Facoltativo) Eseguite il comando seguente per visualizzare la versione del software AWS IoT Greengrass Core.
java -jar ./
GreengrassInstaller
/lib/Greengrass.jar --version
Importante
Se installi una versione del nucleo Greengrass precedente alla v2.4.0, non rimuovere questa cartella dopo aver installato il software Core. AWS IoT Greengrass Il software AWS IoT Greengrass Core utilizza i file in questa cartella per l'esecuzione.
Se hai scaricato la versione più recente del software, installi la versione 2.4.0 o successiva e puoi rimuovere questa cartella dopo aver installato il software AWS IoT Greengrass Core.
Installa il software Core AWS IoT Greengrass
Eseguite il programma di installazione con argomenti che specificano di eseguire le seguenti operazioni:
-
AWS Create le risorse necessarie al funzionamento del dispositivo principale.
-
Specificare di utilizzare l'utente
ggc_user
del sistema per eseguire i componenti software sul dispositivo principale. Sui dispositivi Linux, questo comando specifica anche di utilizzare il gruppo diggc_group
sistema e il programma di installazione crea automaticamente l'utente e il gruppo di sistema. -
Configura il software AWS IoT Greengrass Core come servizio di sistema che viene eseguito all'avvio. Sui dispositivi Linux, ciò richiede il sistema di inizializzazione Systemd
. Importante
Sui dispositivi Windows core, è necessario configurare il software AWS IoT Greengrass Core come servizio di sistema.
Per configurare un dispositivo di sviluppo con strumenti di sviluppo locali, specificate l'--deploy-dev-tools true
argomento. L'implementazione degli strumenti di sviluppo locale può richiedere fino a un minuto dopo il completamento dell'installazione.
Per ulteriori informazioni sugli argomenti che è possibile specificare, vedere. Argomenti dell'installatore
Nota
Se utilizzi AWS IoT Greengrass un dispositivo con memoria limitata, puoi controllare la quantità di memoria utilizzata dal software AWS IoT Greengrass Core. Per controllare l'allocazione della memoria, è possibile impostare le opzioni relative alla dimensione dell'heap JVM nel parametro di jvmOptions
configurazione del componente nucleus. Per ulteriori informazioni, consulta Controlla l'allocazione della memoria con le opzioni JVM.
Per installare il software Core AWS IoT Greengrass
-
Utilizzate un editor di testo per creare un file di configurazione denominato
config.yaml
da fornire all'installatore.Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
nano
GreengrassInstaller
/config.yamlCopiate il seguente contenuto YAML nel file. Questo file di configurazione parziale specifica i parametri di sistema e i parametri del nucleo di Greengrass.
--- services: aws.greengrass.Nucleus: configuration: fipsMode: "true" iotDataEndpoint: "
data.iot-fips.us-west-2.amazonaws.com
" iotCredEndpoint: "data.credentials.iot-fips.us-west-2.amazonaws.com
" greengrassDataPlaneEndpoint: "iotData"-
us-west-2
Sostituiscilo con il Regione AWS punto in cui hai creato le risorse. -
Sostituiscilo
iotDataEndpoint
con il tuo endpoint di AWS IoT dati. -
Sostituisci l'
iotCredEndpoint
endpoint con AWS IoT le tue credenziali.
-
-
Esegui il programma di installazione AWS IoT Greengrass Core. Sostituisci i valori degli argomenti nel tuo comando come segue.
Nota
In Windows esiste un limite di lunghezza del percorso di 260 caratteri. Se usi Windows, usa una cartella principale come
C:\greengrass\v2
oD:\greengrass\v2
per mantenere i percorsi dei componenti Greengrass al di sotto del limite di 260 caratteri.-
oppure/greengrass/v2
C:\greengrass\v2
: il percorso della cartella principale da utilizzare per installare il software AWS IoT Greengrass Core. -
GreengrassInstaller
. Il percorso della cartella in cui è stato decompresso il programma di installazione del software AWS IoT Greengrass Core. -
region
. Il Regione AWS luogo in cui trovare o creare risorse. -
MyGreengrassCore
. Il nome del AWS IoT dispositivo principale Greengrass. Se l'oggetto non esiste, l'installatore lo crea. Il programma di installazione scarica i certificati per autenticarsi come oggetto. AWS IoT Per ulteriori informazioni, consulta Autenticazione e autorizzazione del dispositivo per AWS IoT Greengrass.Nota
Il nome dell'oggetto non può contenere i due punti (
:
). -
MyGreengrassCoreGroup
. Il nome del AWS IoT gruppo di oggetti per il tuo dispositivo principale Greengrass. Se il gruppo di oggetti non esiste, il programma di installazione lo crea e vi aggiunge l'oggetto. Se il gruppo di oggetti esiste e dispone di una distribuzione attiva, il dispositivo principale scarica ed esegue il software specificato dalla distribuzione.Nota
Il nome del gruppo di cose non può contenere i due punti (
:
). -
GreengrassV2IoTThingPolicy
. Il nome della AWS IoT policy che consente ai dispositivi core Greengrass di comunicare con AWS IoT e. AWS IoT Greengrass Se la AWS IoT politica non esiste, il programma di installazione crea una AWS IoT politica permissiva con questo nome. Puoi limitare le autorizzazioni di questa politica in base al tuo caso d'uso. Per ulteriori informazioni, consulta AWS IoT Politica minima per i dispositivi AWS IoT Greengrass V2 principali. -
GreengrassV2TokenExchangeRole
. Il nome del ruolo IAM che consente al dispositivo principale Greengrass di ottenere credenziali temporanee AWS . Se il ruolo non esiste, l'installatore lo crea e crea e allega una policy denominata.
Per ulteriori informazioni, consulta Autorizza i dispositivi principali a interagire con i servizi AWS.GreengrassV2TokenExchangeRole
Access -
GreengrassCoreTokenExchangeRoleAlias
. L'alias del ruolo IAM che consente al dispositivo principale Greengrass di ottenere credenziali temporanee in un secondo momento. Se l'alias del ruolo non esiste, il programma di installazione lo crea e lo indirizza al ruolo IAM specificato. Per ulteriori informazioni, consulta Autorizza i dispositivi principali a interagire con i servizi AWS.
sudo -E java -Droot="
" -Dlog.store=FILE \ -jar .//greengrass/v2
GreengrassInstaller
/lib/Greengrass.jar \ --aws-regionregion
\ --thing-nameMyGreengrassCore
\ --thing-group-nameMyGreengrassCoreGroup
\ --thing-policy-nameGreengrassV2IoTThingPolicy
\ --tes-role-nameGreengrassV2TokenExchangeRole
\ --tes-role-alias-nameGreengrassCoreTokenExchangeRoleAlias
\ --component-default-user ggc_user:ggc_group \ --provision true \ --init-config ./GreengrassInstaller/config.yaml \ --setup-system-service trueImportante
Nei dispositivi Windows core, è necessario specificare
--setup-system-service true
di configurare il software AWS IoT Greengrass Core come servizio di sistema.Il programma di installazione stampa i seguenti messaggi se riesce:
-
Se si specifica
--provision
, il programma di installazione stampaSuccessfully configured Nucleus with provisioned resource details
se ha configurato correttamente le risorse. -
Se si specifica
--deploy-dev-tools
, il programma di installazione stampaConfigured Nucleus to deploy aws.greengrass.Cli component
se ha creato la distribuzione con successo. -
Se si specifica
--setup-system-service true
, il programma di installazione stampaSuccessfully set up Nucleus as a system service
se ha configurato ed eseguito il software as a service. -
Se non viene specificato
--setup-system-service true
, il programma di installazione stampaLaunched Nucleus successfully
se l'operazione è riuscita ed ha eseguito il software.
-
-
Salta questo passaggio se hai installato Nucleo Greengrass la versione 2.0.4 o successiva. Se hai scaricato la versione più recente del software, hai installato la versione 2.0.4 o successiva.
Esegui il comando seguente per impostare le autorizzazioni di file richieste per la cartella AWS IoT Greengrass principale del software Core. Sostituitela
con la cartella principale specificata nel comando di installazione e/greengrass/v2
/greengrass
sostituitela con la cartella principale della cartella principale.sudo chmod 755
&& sudo chmod 755/greengrass/v2
/greengrass
Se avete installato il software AWS IoT Greengrass Core come servizio di sistema, il programma di installazione esegue il software al posto vostro. In caso contrario, è necessario eseguire il software manualmente. Per ulteriori informazioni, consulta Esegui il software AWS IoT Greengrass Core.
Nota
Per impostazione predefinita, il ruolo IAM creato dal programma di installazione non consente l'accesso agli artefatti dei componenti nei bucket S3. Per distribuire componenti personalizzati che definiscono gli artefatti in Amazon S3, devi aggiungere autorizzazioni al ruolo per consentire al dispositivo principale di recuperare gli artefatti dei componenti. Per ulteriori informazioni, consulta Consenti l'accesso ai bucket S3 per gli artefatti dei componenti.
Se non disponi ancora di un bucket S3 per gli artefatti dei componenti, puoi aggiungere queste autorizzazioni in un secondo momento dopo aver creato un bucket.
Per ulteriori informazioni su come configurare e utilizzare il software e, consulta quanto segue: AWS IoT Greengrass
Componenti di prima parte conformi alla normativa FIPS
aws.greengrass.Nucleus |
data.iot-fips. |
greengrass-fips. |
|
data.credentials.iot-fips. |
|
aws.greengrass.TokenExchangeService |
data.credentials.iot-fips. |
aws.greengrass.Cli |
|
aws.greengrass.StreamManager |
NotaStream manager non supporta gli endpoint AWS IoT Analytics FIPS |
aws.greengrass.LogManager |
log-fips. us-east-1 .amazonaws.com |
aws.greengrass.crypto.Pkcs11Provider |
|
aws.greengrass.ShadowManager |
|
aws.greengrass.DockerApplicationManager |
pantofole ecr-fips. us-east-1 .amazonaws.com |
aws.greengrass.SecretManager |
secretmanager-fips. us-east-1 .amazonaws.com |
aws.greengrass.telemetry.NucleusEmitter |
|
aws.greengrass.clientdevices.IPDetector |
|
aws.greengrass.DiskSpooler |