Prüfen des Bereitstellungsstatus - AWS IoT Greengrass

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Prüfen des Bereitstellungsstatus

Sie können den Status einer Bereitstellung überprüfen, die Sie erstellt habenAWS IoT Greengrass. Sie können auch den Status derAWS IoT Jobs überprüfen, die die Bereitstellung auf jedem Kerngerät bereitstellen. Während ein Deployment aktiv ist, lautet der Status desAWS IoT JobsIN_PROGRESS. Nachdem Sie eine neue Version eines Deployments erstellt haben, ändert sich der Status desAWS IoT Jobs der vorherigen Version inCANCELLED.

Prüfen des Bereitstellungsstatus

Sie können den Status einer Bereitstellung überprüfen, die Sie anhand ihres Ziels oder ihrer ID identifizieren.

Um den Bereitstellungsstatus nach Ziel zu überprüfen (AWS CLI)
  • Führen Sie den folgenden Befehl aus, um den Status der letzten Bereitstellung für ein Ziel abzurufen. Ersetzen targetArn durch den Amazon-Ressourcennamen (ARN) des Dings oderAWS IoT der Dinggruppe, auf die die Bereitstellung abzielt.

    aws greengrassv2 list-deployments --target-arn targetArn

    Die Antwort enthält eine Liste mit dem letzten Deployment für das Ziel. Dieses Bereitstellungsobjekt enthält den Status der Bereitstellung.

Um den Bereitstellungsstatus anhand der ID (AWS CLI) zu überprüfen
  • Führen Sie den folgenden Befehl aus, um den Status einer Bereitstellung abzurufen. Ersetzen Sie deploymentId durch die ID des abzufragenden Deployments.

    aws greengrassv2 get-deployment --deployment-id deploymentId

    Die Antwort enthält den Status der Bereitstellung.

Überprüfen Sie den Status der Gerätebereitstellung

Sie können den Status eines Bereitstellungsauftrag überprüfen, die für ein einzelnes Kerngerät gilt. Sie können auch den Status eines Bereitstellungsauftrags für eine Dinggruppenbereitstellung überprüfen.

Um den Status von Bereitstellungsaufträgen für ein Kerngerät zu überprüfen (AWS CLI)
  • Führen Sie den folgenden Befehl aus, um den Status aller Bereitstellungsaufträge für ein Kerngerät abzurufen. Ersetzen Sie coreDeviceNamedurch den Namen des abzufragenden Kerngeräts.

    aws greengrassv2 list-effective-deployments --core-device-thing-name coreDeviceName

    Die Antwort enthält die Liste der Bereitstellungsaufträge für das Kerngerät. Sie können den Job für einen Einsatz anhand des JobsdeploymentId oder identifizierentargetArn. Jeder Bereitstellungsauftrag enthält den Status des Jobs auf dem Kerngerät.

Um den Bereitstellungsstatus für eine Dinggruppe zu überprüfen (AWS CLI)
  1. Führen Sie den folgenden Befehl aus, um die ID einer vorhandenen Bereitstellung abzurufen. Ersetzen targetArn durch ARN der ARN der ARN der Zielgruppe.

    aws greengrassv2 list-deployments --target-arn targetArn

    Die Antwort enthält eine Liste mit dem letzten Deployment für das Ziel. Kopieren Sie diedeploymentId aus der Antwort, um sie im nächsten Schritt zu verwenden.

    Anmerkung

    Sie können auch ein anderes Deployment als das letzte Deployment für das Ziel auflisten. Geben Sie das--history-filter ALL Argument an, um alle Deployments für das Ziel aufzulisten. Kopieren Sie dann die ID der Bereitstellung, deren Status Sie überprüfen möchten.

  2. Führen Sie den folgenden Befehl aus, um die Bereitstellungsdetails abzurufen. Ersetzen Sie DeploymentID durch die ID aus dem vorherigen Schritt.

    aws greengrassv2 get-deployment --deployment-id deploymentId

    Die Antwort enthält Informationen zur Bereitstellung. Kopieren Sie dasiotJobId aus der Antwort, um es im folgenden Schritt zu verwenden.

  3. Führen Sie den folgenden Befehl aus, um die Jobausführung eines Kerngeräts für die Bereitstellung zu beschreiben. Ersetzen Sie iotJobIdund coreDeviceThingName durch die Job-ID aus dem vorherigen Schritt und das Kerngerät, für das Sie den Status überprüfen möchten.

    aws iot describe-job-execution --job-id iotJobId --thing-name coreDeviceThingName

    Die Antwort enthält den Status der Ausführung des Bereitstellungsauftrags des Kerngeräts sowie Details zum Status. DasdetailsMap enthält die folgenden Informationen:

    • detailed-deployment-status— Der Bereitstellungsstatus. Es gibt zwei der folgenden Werte:

      • SUCCESSFUL— Der Einsatz war erfolgreich.

      • FAILED_NO_STATE_CHANGE— Die Bereitstellung ist fehlgeschlagen, während sich das Kerngerät auf die Implementierung vorbereitet hat.

      • FAILED_ROLLBACK_NOT_REQUESTED— Die Bereitstellung ist fehlgeschlagen, und in der Bereitstellung wurde nicht angegeben, zu einer vorherigen funktionierenden Konfiguration zurückzukehren, sodass das Kerngerät möglicherweise nicht richtig funktioniert.

      • FAILED_ROLLBACK_COMPLETE— Die Bereitstellung ist fehlgeschlagen, und das Kerngerät wurde erfolgreich auf eine vorherige funktionierende Konfiguration zurückgesetzt.

      • FAILED_UNABLE_TO_ROLLBACK— Die Bereitstellung ist fehlgeschlagen, und das Kerngerät konnte nicht auf eine vorherige funktionierende Konfiguration zurückgesetzt werden, sodass das Kerngerät möglicherweise nicht richtig funktioniert.

      Wenn die Bereitstellung fehlgeschlagen ist, überprüfen Sie dendeployment-failure-cause Wert und die Protokolldateien des Kerngeräts, um das Problem zu identifizieren. Weitere Informationen zum Zugriff auf die Protokolldateien des Kerngeräts finden Sie unterÜberwachen von AWS IoT Greengrass Protokollen.

    • deployment-failure-cause— Eine Fehlermeldung, die zusätzliche Informationen darüber enthält, warum die Auftragsausführung fehlgeschlagen ist.

    Die Antwort sieht in etwa so aus:

    { "execution": { "jobId": "2cc2698a-5175-48bb-adf2-1dd345606ebd", "status": "FAILED", "statusDetails": { "detailsMap": { "deployment-failure-cause": "No local or cloud component version satisfies the requirements. Check whether the version constraints conflict and that the component exists in your AWS-Konto with a version that matches the version constraints. If the version constraints conflict, revise deployments to resolve the conflict. Component com.example.HelloWorld version constraints: LOCAL_DEPLOYMENT requires =1.0.0, thinggroup/MyGreengrassCoreGroup requires =1.0.1.", "detailed-deployment-status": "FAILED_NO_STATE_CHANGE" } }, "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "queuedAt": "2022-02-15T14:45:53.098000-08:00", "startedAt": "2022-02-15T14:46:05.670000-08:00", "lastUpdatedAt": "2022-02-15T14:46:20.892000-08:00", "executionNumber": 1, "versionNumber": 3 } }