Installieren des AWS Systems Manager-Agenten - 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.

Installieren des AWS Systems Manager-Agenten

Der AWS Systems Manager -Agent (Systems Manager Agent) ist eine Amazon-Software, die Sie installieren, damit Systems Manager Greengrass-Core-Geräte, Amazon EC2-Instances und andere -Ressourcen aktualisieren, verwalten und konfigurieren kann. Der Agent verarbeitet und führt Anfragen vom Systems Manager-Service in der ausAWS Cloud. Anschließend sendet der Agent Status- und Laufzeitinformationen zurück an den Systems Manager-Service. Weitere Informationen finden Sie unter Informationen zu Systems Manager Agent im AWS Systems Manager -Benutzerhandbuch.

AWS stellt den Systems Manager Agent als Greengrass-Komponente bereit, die Sie auf Ihren Greengrass-Core-Geräten bereitstellen können, um sie mit Systems Manager zu verwalten. Die Systems Manager Agent-Komponente installiert die Systems Manager Agent-Software und registriert das Core-Gerät als verwalteten Knoten in Systems Manager. Führen Sie die Schritte auf dieser Seite aus, um die Voraussetzungen zu erfüllen und die Systems Manager Agent-Komponente auf einem Core-Gerät oder einer Gruppe von Core-Geräten bereitzustellen.

Schritt 1: Ausführen allgemeiner Systems Manager-Einrichtungsschritte

Wenn Sie dies noch nicht getan haben, führen Sie die allgemeinen Einrichtungsschritte für ausAWS Systems Manager. Weitere Informationen finden Sie unter Ausführen allgemeiner Systems Manager-Einrichtungsschritte im AWS Systems Manager -Benutzerhandbuch.

Schritt 2: Erstellen einer IAM-Servicerolle für Systems Manager

Der Systems Manager Agent verwendet eine AWS Identity and Access Management (IAM)-Servicerolle, um mit zu kommunizierenAWS Systems Manager. Systems Manager übernimmt diese Rolle, um Systems Manager-Funktionen auf jedem Core-Gerät zu aktivieren. Die Systems Manager Agent-Komponente verwendet diese Rolle auch, um das Core-Gerät als von Systems Manager verwalteten Knoten zu registrieren, wenn Sie die Komponente bereitstellen. Falls noch nicht geschehen, erstellen Sie eine Systems Manager-Servicerolle für die zu verwendende Systems Manager Agent-Komponente. Weitere Informationen finden Sie unter Erstellen einer IAM-Servicerolle für Edge-Geräte im AWS Systems Manager -Benutzerhandbuch.

Schritt 3: Hinzufügen von Berechtigungen zur Token-Exchange-Rolle

Greengrass-Core-Geräte verwenden eine IAM-Servicerolle, die als Token-Exchange-Rolle bezeichnet wird, um mit -AWSServices zu interagieren. Jedes Core-Gerät verfügt über eine Token-Austauschrolle, die Sie bei der Installation der AWS IoT Greengrass Core-Software erstellen. Viele Greengrass-Komponenten, wie z. B. der Systems Manager Agent, erfordern zusätzliche Berechtigungen für diese Rolle. Die Systems Manager-Agentenkomponente erfordert die folgenden Berechtigungen, die die Berechtigung zur Verwendung der Rolle enthalten, die Sie in erstellt habenSchritt 2: Erstellen einer IAM-Servicerolle für Systems Manager.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": [ "arn:aws:iam::account-id:role/SSMServiceRole" ] }, { "Action": [ "ssm:AddTagsToResource", "ssm:RegisterManagedInstance" ], "Effect": "Allow", "Resource": "*" } ] }

Wenn Sie dies noch nicht getan haben, fügen Sie diese Berechtigungen der Token-Austauschrolle des Core-Geräts hinzu, damit der Systems Manager Agent ausgeführt werden kann. Sie können der Token-Exchange-Rolle eine neue Richtlinie hinzufügen, um diese Berechtigung zu erteilen.

  1. Wählen Sie im Navigationsmenü der IAM-Konsole Rollen aus.

  2. Wählen Sie die IAM-Rolle aus, die Sie als Token-Austauschrolle bei der Installation der AWS IoT Greengrass Core-Software eingerichtet haben. Wenn Sie bei der Installation der AWS IoT Greengrass Core-Software keinen Namen für die Token-Exchange-Rolle angegeben haben, wurde eine Rolle mit dem Namen erstelltGreengrassV2TokenExchangeRole.

  3. Wählen Sie unter Berechtigungen die Option Berechtigungen hinzufügen und dann Richtlinien anfügen aus.

  4. Wählen Sie Richtlinie erstellen aus. Die Seite Richtlinie erstellen wird in einer neuen Browser-Registerkarte geöffnet.

  5. Führen Sie auf der Seite Create policy (Richtlinie erstellen) die folgenden Schritte aus:

    1. Wählen Sie JSON, um den JSON-Editor zu öffnen.

    2. Fügen Sie die folgende -Richtlinie in den JSON-Editor ein. Ersetzen Sie SSMServiceRole durch den Namen der Servicerolle, die Sie in erstellt habenSchritt 2: Erstellen einer IAM-Servicerolle für Systems Manager.

      { "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": [ "arn:aws:iam::account-id:role/SSMServiceRole" ] }, { "Action": [ "ssm:AddTagsToResource", "ssm:RegisterManagedInstance" ], "Effect": "Allow", "Resource": "*" } ] }
    3. Wählen Sie Next: Tags (Weiter: Tags) aus.

    4. Klicken Sie auf Weiter: Prüfen.

    5. Geben Sie unter Name einen Namen für die Richtlinie ein, z. B. GreengrassSSMAgentComponentPolicy.

    6. Wählen Sie Richtlinie erstellen aus.

    7. Wechseln Sie zur vorherigen Browser-Registerkarte, auf der Sie die Token-Exchange-Rolle geöffnet haben.

  6. Wählen Sie auf der Seite Berechtigungen hinzufügen die Schaltfläche Aktualisieren und dann die Greengrass Systems Manager-Agentenrichtlinie aus, die Sie im vorherigen Schritt erstellt haben.

  7. Wählen Sie Richtlinien anfügen.

    Die Core-Geräte, die diese Token-Exchange-Rolle verwenden, verfügen jetzt über die Berechtigung, mit dem Systems Manager-Service zu interagieren.

So fügen Sie eine Richtlinie hinzu, die die Berechtigung zur Verwendung von Systems Manager gewährt
  1. Erstellen Sie eine Datei mit dem Namen ssm-agent-component-policy.json und kopieren Sie den folgenden JSON-Code in die Datei . Ersetzen Sie SSMServiceRole durch den Namen der Servicerolle, die Sie in erstellt habenSchritt 2: Erstellen einer IAM-Servicerolle für Systems Manager.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": [ "arn:aws:iam::account-id:role/SSMServiceRole" ] }, { "Action": [ "ssm:AddTagsToResource", "ssm:RegisterManagedInstance" ], "Effect": "Allow", "Resource": "*" } ] }
  2. Führen Sie den folgenden Befehl aus, um die Richtlinie aus dem Richtliniendokument in zu erstellenssm-agent-component-policy.json.

    Linux or Unix
    aws iam create-policy \ --policy-name GreengrassSSMAgentComponentPolicy \ --policy-document file://ssm-agent-component-policy.json
    Windows Command Prompt (CMD)
    aws iam create-policy ^ --policy-name GreengrassSSMAgentComponentPolicy ^ --policy-document file://ssm-agent-component-policy.json
    PowerShell
    aws iam create-policy ` --policy-name GreengrassSSMAgentComponentPolicy ` --policy-document file://ssm-agent-component-policy.json

    Kopieren Sie den Amazon-Ressourcennamen (ARN) der Richtlinie aus den Richtlinienmetadaten in der Ausgabe. Sie verwenden diesen ARN, um diese Richtlinie im nächsten Schritt an die Rolle des Core-Geräts anzuhängen.

  3. Führen Sie den folgenden Befehl aus, um die Richtlinie an die Token-Exchange-Rolle anzuhängen.

    • Ersetzen Sie GreengrassV2TokenExchangeRole durch den Namen der Token-Exchange-Rolle, die Sie bei der Installation der AWS IoT Greengrass Core-Software angegeben haben. Wenn Sie bei der Installation der AWS IoT Greengrass Core-Software keinen Namen für die Token-Exchange-Rolle angegeben haben, wurde eine Rolle mit dem Namen erstelltGreengrassV2TokenExchangeRole.

    • Ersetzen Sie den Richtlinien-ARN durch den ARN aus dem vorherigen Schritt.

    Linux or Unix
    aws iam attach-role-policy \ --role-name GreengrassV2TokenExchangeRole \ --policy-arn arn:aws:iam::123456789012:policy/GreengrassSSMAgentComponentPolicy
    Windows Command Prompt (CMD)
    aws iam attach-role-policy ^ --role-name GreengrassV2TokenExchangeRole ^ --policy-arn arn:aws:iam::123456789012:policy/GreengrassSSMAgentComponentPolicy
    PowerShell
    aws iam attach-role-policy ` --role-name GreengrassV2TokenExchangeRole ` --policy-arn arn:aws:iam::123456789012:policy/GreengrassSSMAgentComponentPolicy

    Wenn der Befehl keine Ausgabe hat, war er erfolgreich. Die Core-Geräte, die diese Token-Exchange-Rolle verwenden, verfügen jetzt über die Berechtigung, mit dem Systems Manager-Service zu interagieren.

Schritt 4: Bereitstellen der Systems Manager Agent-Komponente

Führen Sie die folgenden Schritte aus, um die Systems Manager Agent-Komponente bereitzustellen und zu konfigurieren. Sie können die Komponente auf einem einzelnen Core-Gerät oder auf einer Gruppe von Core-Geräten bereitstellen.

  1. Wählen Sie im Navigationsmenü der AWS IoT GreengrassKonsole Komponenten aus.

  2. Wählen Sie auf der Seite Komponenten die Registerkarte Öffentliche Komponenten und dann ausaws.greengrass.SystemsManagerAgent.

  3. Wählen Sie auf der aws.greengrass.SystemsManagerAgent Seite Bereitstellen aus.

  4. Wählen Sie unter Zur Bereitstellung hinzufügen eine vorhandene Bereitstellung aus, die Sie überarbeiten möchten, oder wählen Sie aus, eine neue Bereitstellung zu erstellen, und wählen Sie dann Weiter aus.

  5. Wenn Sie eine neue Bereitstellung erstellen möchten, wählen Sie das Ziel-Core-Gerät oder die Objektgruppe für die Bereitstellung aus. Wählen Sie auf der Seite Ziel angeben unter Bereitstellungsziel ein Core-Gerät oder eine Objektgruppe und dann Weiter aus.

  6. Überprüfen Sie auf der Seite Komponenten auswählen, ob die aws.greengrass.SystemsManagerAgent Komponente ausgewählt ist, und wählen Sie Weiter aus.

  7. Wählen Sie auf der Seite Komponenten konfigurieren die Option aus aws.greengrass.SystemsManagerAgentund gehen Sie dann wie folgt vor:

    1. Wählen Sie Komponente konfigurieren aus.

    2. Geben Sie im Modal Konfigurieren aws.greengrass.SystemsManagerAgent unter Konfigurationsaktualisierung unter Konfiguration zum Zusammenführen von das folgende Konfigurationsupdate ein. Ersetzen Sie SSMServiceRole durch den Namen der Servicerolle, die Sie in erstellt habenSchritt 2: Erstellen einer IAM-Servicerolle für Systems Manager.

      { "SSMRegistrationRole": "SSMServiceRole", "SSMOverrideExistingRegistration": false }
      Anmerkung

      Wenn das Core-Gerät bereits den Systems Manager Agent ausführt, der bei einer Hybrid-Aktivierung registriert ist, ändern Sie SSMOverrideExistingRegistration zu true. Dieser Parameter gibt an, ob die Systems Manager Agent-Komponente das Core-Gerät registriert, wenn der Systems Manager Agent bereits mit einer Hybrid-Aktivierung auf dem Gerät ausgeführt wird.

      Sie können auch Tags (SSMResourceTags) angeben, die dem von Systems Manager verwalteten Knoten hinzugefügt werden sollen, den die Systems Manager Agent-Komponente für das Core-Gerät erstellt. Weitere Informationen finden Sie unter Systems Manager Agent-Komponentenkonfiguration.

    3. Wählen Sie Bestätigen, um das Modal zu schließen, und wählen Sie dann Weiter aus.

  8. Behalten Sie auf der Seite Erweiterte Einstellungen konfigurieren die Standardkonfigurationseinstellungen bei und wählen Sie Weiter.

  9. Wählen Sie auf der Seite Review (Prüfen) die Option Deploy (Bereitstellen) aus.

    Die Bereitstellung kann bis zu einer Minute dauern.

Um die Systems Manager Agent-Komponente bereitzustellen, erstellen Sie ein Bereitstellungsdokument, das aws.greengrass.SystemsManagerAgent im -componentsObjekt enthält, und geben Sie das Konfigurationsupdate für die Komponente an. Folgen Sie den Anweisungen unter Erstellen von Bereitstellungen, um eine neue Bereitstellung zu erstellen oder eine vorhandene Bereitstellung zu überarbeiten.

Das folgende Beispiel für ein teilweises Bereitstellungsdokument gibt an, eine Servicerolle mit dem Namen zu verwendenSSMServiceRole. Ersetzen Sie SSMServiceRole durch den Namen der Servicerolle, die Sie in erstellt habenSchritt 2: Erstellen einer IAM-Servicerolle für Systems Manager.

{ ..., "components": { ..., "aws.greengrass.SystemsManagerAgent": { "componentVersion": "1.0.0", "configurationUpdate": { "merge": "{\"SSMRegistrationRole\":\"SSMServiceRole\",\"SSMOverrideExistingRegistration\":false}" } } } }
Anmerkung

Wenn das Core-Gerät bereits den Systems Manager Agent ausführt, der bei einer Hybrid-Aktivierung registriert ist, ändern Sie SSMOverrideExistingRegistration zu true. Dieser Parameter gibt an, ob die Systems Manager Agent-Komponente das Core-Gerät registriert, wenn der Systems Manager Agent bereits mit einer Hybrid-Aktivierung auf dem Gerät ausgeführt wird.

Sie können auch Tags (SSMResourceTags) angeben, die dem von Systems Manager verwalteten Knoten hinzugefügt werden sollen, den die Systems Manager Agent-Komponente für das Core-Gerät erstellt. Weitere Informationen finden Sie unter Systems Manager Agent-Komponentenkonfiguration.

Es kann einige Minuten dauern, bis die Bereitstellung abgeschlossen ist. Sie können den AWS IoT Greengrass Service verwenden, um den Status der Bereitstellung zu überprüfen, und Sie können die AWS IoT Greengrass Core-Softwareprotokolle und Systems Manager Agent-Komponentenprotokolle überprüfen, um sicherzustellen, dass der Systems Manager Agent erfolgreich ausgeführt wird. Weitere Informationen finden Sie hier:

Wenn die Bereitstellung fehlschlägt oder der Systems Manager Agent nicht ausgeführt wird, können Sie die Bereitstellung auf jedem Core-Gerät beheben. Weitere Informationen finden Sie hier:

Schritt 5: Überprüfen der Registrierung des Core-Geräts mit Systems Manager

Wenn die Systems Manager Agent-Komponente ausgeführt wird, registriert sie das Core-Gerät als verwalteten Knoten in Systems Manager. Sie können die AWS IoT Greengrass Konsole, die Systems Manager-Konsole und die Systems Manager-API verwenden, um zu überprüfen, ob ein Core-Gerät als verwalteter Knoten registriert ist. Verwaltete Knoten werden auch als Instances in Teilen der AWS Konsole und der API bezeichnet.

  1. Wählen Sie im Navigationsmenü der AWS IoT GreengrassKonsole die Option Core-Geräte aus.

  2. Wählen Sie das zu überprüfende Core-Gerät aus.

  3. Suchen Sie auf der Detailseite des Core-Geräts die AWS Systems Manager Instance-Eigenschaft. Wenn diese Eigenschaft vorhanden ist und einen Link zur Systems Manager-Konsole anzeigt, wird das Core-Gerät als verwalteter Knoten registriert.

    Sie finden auch die Eigenschaft AWS Systems Manager Ping-Status, um den Status des Systems Manager Agent auf dem Core-Gerät zu überprüfen. Wenn der Status Online lautet, können Sie das Core-Gerät mit Systems Manager verwalten.

  1. Wählen Sie im Navigationsmenü der Systems Manager-Konsole Fleet Manager aus.

  2. Gehen Sie unter Verwaltete Knoten wie folgt vor:

    1. Fügen Sie einen Filter hinzu, bei dem der Quelltyp istAWS::IoT::Thing.

    2. Fügen Sie einen Filter hinzu, wobei Source ID der Name des zu überprüfenden Core-Geräts ist.

  3. Suchen Sie das Core-Gerät in der Tabelle Verwaltete Knoten. Wenn sich das Core-Gerät in der Tabelle befindet, wird es als verwalteter Knoten registriert.

    Sie finden auch die Eigenschaft Systems Manager Agent Ping-Status, um den Status des Systems Manager Agent auf dem Core-Gerät zu überprüfen. Wenn der Status Online lautet, können Sie das Core-Gerät mit Systems Manager verwalten.

  • Verwenden Sie die -DescribeInstanceInformationOperation, um die Liste der verwalteten Knoten abzurufen, die mit einem von Ihnen angegebenen Filter übereinstimmen. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob ein Core-Gerät als verwalteter Knoten registriert ist. Ersetzen Sie durch MyGreengrassCore den Namen des zu überprüfenden Core-Geräts.

    aws ssm describe-instance-information --filter Key=SourceIds,Values=MyGreengrassCore Key=SourceTypes,Values=AWS::IoT::Thing

    Die Antwort enthält die Liste der verwalteten Knoten, die dem Filter entsprechen. Wenn die Liste einen verwalteten Knoten enthält, wird das Core-Gerät als verwalteter Knoten registriert. Sie finden in der Antwort auch weitere Informationen über den verwalteten Knoten des Core-Geräts. Wenn die Eigenschaft PingStatus lautetOnline, können Sie das Core-Gerät mit Systems Manager verwalten.

Nachdem Sie überprüft haben, ob ein Core-Gerät als verwalteter Knoten in Systems Manager registriert ist, können Sie die Systems Manager-Konsole und die API verwenden, um dieses Core-Gerät zu verwalten. Weitere Informationen zu den Systems Manager-Funktionen, die Sie zur Verwaltung von Greengrass-Core-Geräten verwenden können, finden Sie unter Systems Manager-Funktionen im AWS Systems Manager -Benutzerhandbuch.