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-filterLATEST_ONLYper visualizzare l'ultima implementazione di quel gruppo di cose.aws greengrassv2 list-deployments--target-arnarn:aws:iot:region:account-id:thinggroup/thingGroupName--history-filterLATEST_ONLY -
Copia il file
deploymentIddalla 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.deploymentIdaws greengrassv2 get-deployment--deployment-iddeploymentId -
Copia il codice
iotJobIddalla 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. Sostituire
jobIDcon iliotJobIdpassaggio precedente. Sostituiscistatuscon 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-idjobID--statusstatus -
-
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
MyGreengrassCoreGroupcon 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-nameMyGreengrassCoreGroupSe 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
MyGreengrassCorecon il nome del core Greengrass fornito. -
MyGreengrassCoreGroupSostituiscilo con il nome del tuo gruppo di oggetti.
aws iot add-thing-to-thing-group--thing-nameMyGreengrassCore--thing-group-nameMyGreengrassCoreGroupIl comando non ha alcun output se la richiesta ha esito positivo.
-
-
-
Create un file chiamato
deployment.json, quindi copiate il seguente oggetto JSON nel file. SostituiretargetArncon l'ARN del gruppo di oggetti AWS IoT da utilizzare come target per la sottodistribuzione. Un obiettivo di sottodistribuzione può essere solo un gruppo di oggetti. Il gruppo di cose ARNs ha 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
deploymentIdcon l'ID diPasso 1. È possibile utilizzare questa configurazione di distribuzione per configurare la sottodistribuzione e apportare le modifiche necessarie.aws greengrassv2 get-deployment--deployment-iddeploymentIdLa 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. SostituiresubdeploymentNamecon un nome per la sottodistribuzione.aws greengrassv2 create-deployment--deployment-namesubdeploymentName--cli-input-jsonfile://deployment.jsonLa risposta include un messaggio
deploymentIdche 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.jsonche hai usato nel passaggio precedente. Sostituisci iltargetArnfile 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-jsonfile://deployment.jsonLa risposta include un messaggio
deploymentIdche identifica questa distribuzione. È possibile utilizzare l'ID di distribuzione per verificare lo stato della distribuzione. Per ulteriori informazioni, consulta Verifica lo stato della distribuzione.