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à.
Creare distribuzioni secondarie
Nota
La funzionalità di distribuzione secondaria è disponibile su Greengrass nucleus versione 2.9.0 e successive. Non è possibile implementare una configurazione in una sottodistribuzione con versioni precedenti dei componenti di Greengrass nucleus.
Una distribuzione secondaria è una distribuzione destinata a un sottoinsieme più piccolo di dispositivi all'interno di una distribuzione principale. È possibile utilizzare le distribuzioni secondarie per distribuire una configurazione in un sottoinsieme più piccolo di dispositivi. È inoltre possibile creare distribuzioni secondarie per riprovare una distribuzione principale non riuscita in caso di guasto di uno o più dispositivi in quella distribuzione principale. Con questa funzionalità, è possibile selezionare i dispositivi che hanno avuto un errore nella distribuzione principale e creare una sottodistribuzione per testare le configurazioni fino al successo della sottodistribuzione. Una volta completata la sottodistribuzione, è possibile ridistribuire tale configurazione nella distribuzione principale.
Segui i passaggi in questa sezione per creare una sottodistribuzione e verificarne lo stato. Per ulteriori informazioni su come creare distribuzioni, consulta Creare distribuzioni.
Per creare una sottodistribuzione () AWS CLI
-
Esegui il comando seguente per recuperare le distribuzioni più recenti per un gruppo di oggetti. Sostituire l'ARN nel comando con l'ARN del gruppo di cose da interrogare. Imposta
--history-filter
LATEST_ONLY
per visualizzare l'ultima implementazione di quel gruppo di cose.aws greengrassv2 list-deployments
--target-arn
arn:aws:iot:region
:account-id
:thinggroup/thingGroupName
--history-filter
LATEST_ONLY
-
Copia il file
deploymentId
dalla risposta al list-deployments comando da utilizzare nel passaggio successivo. -
Esegui il comando seguente per recuperare lo stato di una distribuzione. Sostituisci
con l'ID della distribuzione da interrogare.deploymentId
aws greengrassv2 get-deployment
--deployment-id
deploymentId
-
Copia il codice
iotJobId
dalla risposta al get-deployment comando da utilizzare nel passaggio successivo. -
Esegui il comando seguente per recuperare l'elenco delle esecuzioni di job per il job specificato. Sostituisci
JobID
con quello deliotJobId
passaggio precedente. Sostituiscilo stato
con lo stato per cui desideri filtrare. Puoi filtrare i risultati con i seguenti stati:-
QUEUED
-
IN_PROGRESS
-
SUCCEEDED
-
FAILED
-
TIMED_OUT
-
REJECTED
-
REMOVED
-
CANCELED
aws iot list-job-executions-for-job
--job-id
jobID
--status
status
-
-
Crea un nuovo gruppo di AWS IoT cose o utilizza un gruppo di cose esistente per la tua distribuzione secondaria. Quindi, aggiungi AWS IoT qualcosa a questo gruppo di oggetti. 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 oggetti con una distribuzione Greengrass attiva. Una volta aggiunto, è possibile distribuire i componenti software di quel gruppo di oggetti su quel dispositivo.
Per creare un nuovo gruppo di oggetti e aggiungervi i dispositivi, effettuate le seguenti operazioni:
-
Crea un gruppo AWS IoT di oggetti. Sostituire
MyGreengrassCoreGroup
con il nome del nuovo gruppo di oggetti. Non è possibile utilizzare i due punti (:)) nel nome di un gruppo di oggetti.Nota
Se un gruppo di oggetti per una distribuzione secondaria viene utilizzato con uno
parentTargetArn
, non può essere riutilizzato con un parco dati principale diverso. Se un gruppo di oggetti è già stato utilizzato per creare una sottodistribuzione per un'altra flotta, l'API restituirà un errore.aws iot create-thing-group
--thing-group-name
MyGreengrassCoreGroup
Se la richiesta ha esito positivo, la risposta è simile all'esempio seguente:
{ "thingGroupName": "MyGreengrassCoreGroup", "thingGroupArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/
MyGreengrassCoreGroup
", "thingGroupId": "4df721e1-ff9f-4f97-92dd-02db4e3f03aa" } -
Aggiungi un core Greengrass fornito al tuo gruppo di cose. Esegui il comando seguente con questi parametri:
-
Sostituiscilo
MyGreengrassCore
con il nome del core Greengrass fornito. -
MyGreengrassCoreGroup
Sostituiscilo con il nome del tuo gruppo di oggetti.
aws iot add-thing-to-thing-group
--thing-name
MyGreengrassCore
--thing-group-name
MyGreengrassCoreGroup
Il comando non ha alcun output se la richiesta ha esito positivo.
-
-
-
Crea un file chiamato
deployment.json
, quindi copia il seguente oggetto JSON nel file. SostituiscitargetARN
con l'ARN del gruppo di oggetti da utilizzare come target per la AWS IoT distribuzione secondaria. Un obiettivo di sottodistribuzione può essere solo un gruppo di oggetti. Gli ARN dei gruppi di cose hanno il seguente formato:-
Gruppo di cose:
arn:aws:iot:
region
:account-id
:thinggroup/thingGroupName
{ "targetArn": "
targetArn
" } -
-
Esegui nuovamente il comando seguente per ottenere i dettagli della distribuzione originale. Questi dettagli includono metadati, componenti e configurazione del processo. Sostituisci
DeploymentID
con l'ID di. Passo 1 È possibile utilizzare questa configurazione di distribuzione per configurare la sottodistribuzione e apportare le modifiche necessarie.aws greengrassv2 get-deployment
--deployment-id
deploymentId
La risposta contiene i dettagli della distribuzione. Copia una delle seguenti coppie chiave-valore dalla risposta del get-deployment comando in.
deployment.json
È possibile modificare questi valori per la distribuzione secondaria. Per ulteriori informazioni sui dettagli di questo comando, vedere GetDeployment.-
components
— I componenti della distribuzione. Per disinstallare un componente, rimuovilo da questo oggetto. -
deploymentName
— Il nome della distribuzione. -
deploymentPolicies
— Le politiche della distribuzione. -
iotJobConfiguration
— La configurazione del lavoro della distribuzione. -
parentTargetArn
— L'obiettivo della distribuzione principale. -
tags
— I tag della distribuzione.
-
-
Esegui il comando seguente per creare la sottodistribuzione da
deployment.json
. SostituiscisubDeploymentName con un nome
per la sottodistribuzione.aws greengrassv2 create-deployment
--deployment-name
subdeploymentName
--cli-input-json
file://deployment.jsonLa risposta include un
deploymentId
messaggio che identifica questa sottodistribuzione. È possibile utilizzare l'ID di distribuzione per verificare lo stato della distribuzione. Per ulteriori informazioni, consulta Verifica dello stato della distribuzione. -
Se la distribuzione secondaria ha esito positivo, è possibile utilizzare la relativa configurazione per rivedere la distribuzione principale. Copia quello
deployment.json
che hai usato nel passaggio precedente. Sostituisci iltargetArn
file JSON con l'ARN della distribuzione principale ed esegui il comando seguente per creare la distribuzione principale utilizzando questa nuova configurazione.Nota
Se crei una nuova revisione di distribuzione della flotta principale, sostituisce tutte le revisioni e le distribuzioni secondarie di quella distribuzione principale. Per ulteriori informazioni, consulta Revisionare le distribuzioni.
aws greengrassv2 create-deployment
--cli-input-json
file://deployment.jsonLa risposta include un messaggio
deploymentId
che identifica questa distribuzione. È possibile utilizzare l'ID di distribuzione per verificare lo stato della distribuzione. Per ulteriori informazioni, consulta Controllo dello stato di implementazione.