

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.

# Bereitstellung von Modellpaketen und Edge Manager-Agenten mit AWS IoT Greengrass
<a name="edge-greengrass"></a>

SageMaker Edge Manager integriert AWS IoT Greengrass Version 2, um den Zugriff, die Wartung und die Bereitstellung des Edge Manager-Agenten und des Modells auf Ihren Geräten zu vereinfachen. Ohne AWS IoT Greengrass V2 müssen Sie bei der Einrichtung Ihrer Geräte und Flotten für die Verwendung von SageMaker Edge Manager den Edge Manager-Agenten manuell aus einem Amazon S3 S3-Release-Bucket kopieren. Sie verwenden den Agenten, um Vorhersagen anhand von Modellen zu treffen, die auf Ihre Edge-Geräte geladen werden. Mit der AWS IoT Greengrass V2- und SageMaker Edge Manager-Integration können Sie AWS IoT Greengrass V2-Komponenten verwenden. Komponenten sind vorgefertigte Softwaremodule, über AWS IoT Greengrass die Sie Ihre Edge-Geräte mit AWS Diensten oder Diensten von Drittanbietern verbinden können.

Sie müssen die AWS IoT Greengrass Core-Software auf Ihren Geräten installieren, wenn Sie AWS IoT Greengrass V2 zur Bereitstellung des Edge Manager-Agenten und Ihres Modells verwenden möchten. Weitere Informationen zu den Geräteanforderungen und zur Einrichtung Ihrer Geräte finden Sie in der AWS IoT Greengrass Dokumentation unter [Einrichten von AWS IoT Greengrass Kerngeräten](https://docs.aws.amazon.com/greengrass/v2/developerguide/setting-up.html).

Den Edge Manager-Agenten stellen Sie mit Hilfe der folgenden drei Komponenten bereit:
+ *Eine vorgefertigte öffentliche Komponente*: SageMaker KI verwaltet die öffentliche Edge Manager-Komponente.
+ *Einer automatisch generierten privaten Komponente*: Die private Komponente wird automatisch generiert, wenn Sie für Ihr Machine-Learning-Modell mit der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEdgePackagingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEdgePackagingJob.html)API ein Paket erstellen und `GreengrassV2Component` für das Edge Manager-API-Feld `PresetDeploymentType` angeben.
+ *Einer benutzerdefinierten Komponente*: Dies ist die Inference-Anwendung, die für die Vorverarbeitung auf Ihrem Gerät und für die Erstellung von Inferences zuständig ist. Diese Komponente müssen Sie erstellen. Weitere Informationen zum [Erstellen benutzerdefinierter AWS IoT Greengrass Komponenten](https://docs.aws.amazon.com/greengrass/v2/developerguide/create-components.html) finden Sie entweder [Erstellen Sie eine benutzerdefinierte Komponente zur Begrüßung](edge-greengrass-custom-component.md#edge-greengrass-create-custom-component-how) in der SageMaker Edge AWS IoT Greengrass Manager-Dokumentation oder unter Benutzerdefinierte Komponenten erstellen in der Dokumentation.

# Erfüllen der Voraussetzungen für die Bereitstellung des Edge-Manager-Agenten
<a name="edge-greengrass-prerequisites"></a>

SageMaker Edge Manager verwendet AWS IoT Greengrass V2, um die Bereitstellung des Edge Manager-Agenten, Ihrer Modelle für maschinelles Lernen und Ihrer Inferenzanwendung auf Ihren Geräten mithilfe von Komponenten zu vereinfachen. Um die Verwaltung Ihrer AWS IAM-Rollen zu vereinfachen, ermöglicht Ihnen Edge Manager die Wiederverwendung Ihres vorhandenen AWS IoT Rollenalias. Falls Sie noch keinen Rollen-Alias haben, erzeugt Edge Manager im Rahmen des Edge Manager-Paketerstellungsauftrags einen für Sie. Sie müssen Ihrer AWS IoT Rolle keinen Rollenalias mehr zuordnen, der aus dem SageMaker Edge Manager-Paketierungsauftrag generiert wurde. 

Bevor Sie beginnen, müssen die folgenden Voraussetzungen erfüllt sein:

1. Installieren Sie die AWS IoT Greengrass Core-Software. Ausführliche Informationen finden [Sie unter Installieren der AWS IoT Greengrass Core-Software](https://docs.aws.amazon.com/greengrass/v2/developerguide/getting-started.html#install-greengrass-v2).

1. Richten Sie AWS IoT Greengrass V2 ein. Weitere Informationen finden [Sie unter Installieren der AWS IoT Greengrass Core-Software mit manueller Ressourcenbereitstellung](https://docs.aws.amazon.com/greengrass/v2/developerguide/manual-installation.html).
**Anmerkung**  
Stellen Sie sicher, dass AWS IoT der Name des Objekts ausschließlich aus Kleinbuchstaben besteht und keine anderen Zeichen als (optional) Bindestriche () enthält. `‐`
Der Rollenname muss mit `SageMaker*` anfangen

1. Fügen Sie der IAM-Rolle, die während AWS IoT Greengrass des V2-Setups erstellt wurde, die folgende Berechtigung und die folgende Inline-Richtlinie hinzu.
   + Navigieren Sie zur IAM-Konsole. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)
   + Suchen Sie nach der Rolle, die Sie erstellt haben, indem Sie den Namen der Rollen in das **Suchfeld** eingeben.
   + Wählen Sie Ihre Rolle aus.
   + Wählen Sie dann **Richtlinien anhängen**.
   + Suchen Sie nach **AmazonSageMakerEdgeDeviceFleetPolicy**.
   + Wählen Sie **AmazonSageMakerFullAccess**(Dies ist ein optionaler Schritt, der es Ihnen erleichtert, diese IAM-Rolle bei der Modellkompilierung und Paketierung wiederzuverwenden).
   + Fügen Sie zur Berechtigungsrichtlinie einer Rolle die erforderlichen Berechtigungen hinzu. Fügen Sie zu IAM-Benutzern jedoch keine Inline-Richtlinien hinzu.

------
#### [ JSON ]

****  

     ```
     {
         "Version":"2012-10-17",		 	 	 
         "Statement":[
           {
             "Sid":"GreengrassComponentAccess",
             "Effect":"Allow",
             "Action":[
                 "greengrass:CreateComponentVersion",
                 "greengrass:DescribeComponent"
             ],
             "Resource":"*"
            }
         ]
     }
     ```

------
   + Wählen Sie **Richtlinie anfügen** aus.
   + Wählen Sie **Vertrauensstellung** aus.
   + Wählen Sie **Vertrauensstellung bearbeiten** aus.
   + Ersetzen Sie den Inhalt durch den folgenden Text.

------
#### [ JSON ]

****  

     ```
     {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
           "Effect": "Allow",
           "Principal": {
             "Service": "credentials.iot.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
         },
         {
           "Effect": "Allow",
           "Principal": {
             "Service": "sagemaker.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
         }
       ]
     }
     ```

------

1. Erstellen Sie eine Edge Manager-Geräteflotte. Informationen dazu, wie Sie eine Flotte erstellen können, finden Sie unter [Einrichtung für Geräte und Flotten in Edge Manager SageMaker](edge-device-fleet.md).

1. Registrieren Sie Ihr Gerät mit demselben Namen wie Ihren AWS IoT Dingnamen, den Sie bei der AWS IoT Greengrass V2-Setup erstellt haben.

1. Erstellen Sie mindestens eine benutzerdefinierte private AWS IoT Greengrass Komponente. Diese Komponente ist die Anwendung, die auf dem Gerät Inference ausführt. Weitere Informationen finden Sie unter [Erstellen Sie eine benutzerdefinierte Komponente zur Begrüßung](edge-greengrass-custom-component.md#edge-greengrass-create-custom-component-how).

**Anmerkung**  
Der SageMaker Edge Manager und die AWS IoT Greengrass Integration funktionieren nur für AWS IoT Greengrass Version 2.
Sowohl Ihr AWS IoT Dingname als auch der Edge Manager-Gerätename müssen identisch sein.
SageMaker Edge Manager lädt keine lokalen AWS IoT Zertifikate und ruft den Endpunkt des AWS IoT Anmeldeinformationsanbieters direkt auf. Stattdessen verwendet SageMaker Edge Manager AWS IoT Greengrass v2 TokenExchangeService und ruft temporäre Anmeldeinformationen von einem TES-Endpunkt ab.

# Erstellen Sie die V2-Komponenten AWS IoT Greengrass
<a name="edge-greengrass-custom-component"></a>

AWS IoT Greengrass verwendet *Components*, ein Softwaremodul, das auf einem AWS IoT Greengrass Kerngerät bereitgestellt wird und auf diesem ausgeführt wird. Sie brauchen (mindestens) drei Komponenten:

1. *Eine öffentliche Edge Manager AWS IoT Greengrass Agent-Komponente*, die die Edge Manager-Agent-Binärdatei bereitstellt.

1. *Eine Modellkomponente*, die automatisch generiert wird, wenn Sie Ihr Modell für maschinelles Lernen entweder mit der AWS SDK für Python (Boto3) API oder mit der SageMaker KI-Konsole paketieren. Weitere Informationen finden Sie unter [Eine automatisch generierte Komponente erstellen](#edge-greengrass-autogenerate-component-how).

1. *Eine private, benutzerdefinierte Komponente* zur Implementierung der Edge Manager-Agenten-Client-Anwendung und zur Vor- und Nachverarbeitung der Inference-Ergebnisse. Weitere Informationen zum Erstellen einer benutzerdefinierten Komponente finden Sie unter [Eine automatisch generierte Komponente erstellen](#edge-greengrass-autogenerate-component-how) oder [Benutzerdefinierte AWS IoT Greengrass Komponenten erstellen](https://docs.aws.amazon.com/greengrass/v2/developerguide/create-components.html).

## Eine automatisch generierte Komponente erstellen
<a name="edge-greengrass-autogenerate-component-how"></a>

Generieren Sie die Modellkomponente mit der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEdgePackagingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEdgePackagingJob.html)API und geben Sie sie `GreengrassV2Component` für das API-Feld für den SageMaker Edge-Manager-Paketauftrag an`PresetDeploymentType`. Wenn Sie die `CreateEdgePackagingJob` API aufrufen, verwendet Edge Manager Ihr mit SageMaker AI Neo kompiliertes Modell in Amazon S3 und erstellt eine Modellkomponente. Die Modellkomponente wird automatisch in Ihrem Konto gespeichert. Sie können sich jede Ihrer Komponenten ansehen, indem Sie zur Konsole navigieren. AWS IoT [https://console.aws.amazon.com/iot/](https://console.aws.amazon.com/greengrass/) Wählen Sie **Greengrass** und dann **Core-Geräte** aus. Die Seite enthält eine Liste der AWS IoT Greengrass wichtigsten Geräte, die mit Ihrem Konto verknüpft sind. Wenn in `PresetDeploymentConfig` kein Name einer Modellkomponente angegeben ist, besteht der erzeugte Standardname aus `"SagemakerEdgeManager"` und dem Namen des Paketerstellungsauftrags für Ihren Edge Manager-Agenten. Das folgende Beispiel zeigt, wie Sie Edge Manager angeben, eine AWS IoT Greengrass V2-Komponente mit der `CreateEdgePackagingJob` API zu erstellen.

```
import sagemaker
import boto3

# Create a SageMaker client object to make it easier to interact with other AWS services.
sagemaker_client = boto3.client('sagemaker', region=<YOUR_REGION>)

# Replace with your IAM Role ARN
sagemaker_role_arn = "arn:aws:iam::<account>:role/*"

# Replace string with the name of your already created S3 bucket.
bucket = 'amzn-s3-demo-bucket-edge-manager'

# Specify a name for your edge packaging job.
edge_packaging_name = "edge_packag_job_demo" 

# Replace the following string with the name you used for the SageMaker Neo compilation job.
compilation_job_name = "getting-started-demo" 

# The name of the model and the model version.
model_name = "sample-model" 
model_version = "1.1"

# Output directory in S3 where you want to store the packaged model.
packaging_output_dir = 'packaged_models' 
packaging_s3_output = 's3://{}/{}'.format(bucket, packaging_output_dir)

# The name you want your Greengrass component to have.
component_name = "SagemakerEdgeManager" + edge_packaging_name

sagemaker_client.create_edge_packaging_job(
                    EdgePackagingJobName=edge_packaging_name,
                    CompilationJobName=compilation_job_name,
                    RoleArn=sagemaker_role_arn,
                    ModelName=model_name,
                    ModelVersion=model_version,
                    OutputConfig={
                        "S3OutputLocation": packaging_s3_output,
                        "PresetDeploymentType":"GreengrassV2Component",
                        "PresetDeploymentConfig":"{\"ComponentName\":\"sample-component-name\", \"ComponentVersion\":\"1.0.2\"}"
                        }
                    )
```

Sie können die automatisch generierte Komponente auch mit der SageMaker AI-Konsole erstellen. Folgen Sie den Schritten 1-6 in [Ein Modell verpacken (Amazon SageMaker AI Console)](edge-packaging-job-console.md)

Geben Sie den Amazon-S3-Bucket URI ein, wo Sie die Ausgabe des Paketerstellungsauftrags speichern möchten, und geben Sie den optionalen Verschlüsselungsschlüssel ein.

Gehen Sie wie folgt vor, um die Modellkomponente zu erstellen:

1. Wählen Sie **Voreingestellte Bereitstellung** aus.

1. Geben Sie den Namen der Komponente in das Feld **Name der Komponente** ein.

1. Geben Sie optional eine Beschreibung der Komponente, eine Komponentenversion, das Plattform-Betriebssystem oder die Plattformarchitektur für die **Beschreibung der Komponente**, die **Komponentenversion**, das **Plattform-Betriebssystem** bzw. die **Plattformarchitektur** ein.

1. Wählen Sie **Absenden** aus.

## Erstellen Sie eine benutzerdefinierte Komponente zur Begrüßung
<a name="edge-greengrass-create-custom-component-how"></a>

Die benutzerdefinierte Anwendungskomponente wird für Inferences auf dem Edge-Gerät verwendet. Die Komponente ist dafür verantwortlich, Modelle in SageMaker Edge Manager zu laden, den Edge Manager-Agenten zur Inferenz aufzurufen und das Modell zu entladen, wenn die Komponente heruntergefahren wird. Bevor Sie Ihre Komponente erstellen, stellen Sie sicher, dass der Agent und die Anwendung mit Edge Manager kommunizieren können. Konfigurieren Sie dazu [gRPC](https://grpc.io/). Der Edge Manager-Agent verwendet Methoden, die in Protobuf Buffers und auf dem gRPC-Server definiert sind, um die Kommunikation mit der Client-Anwendung auf dem Edge-Gerät und in der Cloud herzustellen.

Um gRPC zu verwenden, müssen Sie:

1. Mit Hilfe der .proto-Datei, die beim Herunterladen des Edge Manager-Agenten aus dem Amazon S3-Release-Bucket bereitgestellt wurde, einen gRPC-Stub erstellen.

1. Schreiben Sie den Client-Code in Ihrer bevorzugten Sprache.

Sie müssen den Dienst nicht in einer .proto-Datei definieren. Die .proto-Dateien des Service sind in der komprimierten TAR-Datei enthalten, wenn Sie die Binärdatei mit der Version des Edge Manager-Agents aus dem Amazon S3-Release-Bucket herunterladen.

Installieren Sie gRPC und sonstige notwendige Tools auf Ihrem Host-Computer und erstellen Sie die gRPC-Stubs `agent_pb2_grpc.py` und `agent_pb2.py` in Python. Vergewissern Sie sich, dass Sie `agent.proto` in Ihrem lokalen Verzeichnis haben.

```
%%bash
pip install grpcio
pip install grpcio-tools
python3 -m grpc_tools.protoc --proto_path=. --python_out=. --grpc_python_out=. agent.proto
```

Der obige Code erzeugt die gRPC-Client- und Serverschnittstellen anhand Ihrer .proto-Servicedefinition. Mit anderen Worten, er erstellt das gRPC-Modell in Python. Das API-Verzeichnis enthält die Protobuf-Spezifikation für die Kommunikation mit dem Agenten.

Schreiben Sie als Nächstes mit Hilfe der gRPC-API einen Client und einen Server für Ihren Service (2). Das folgende Beispielskript, `edge_manager_python_example.py`, verwendet Python zum Laden, Auflisten und Entladen eines `yolov3` Modells auf dem Edge-Gerät.

```
import grpc
from PIL import Image
import agent_pb2
import agent_pb2_grpc
import os


model_path = '<PATH-TO-SagemakerEdgeManager-COMPONENT>' 
                    
agent_socket = 'unix:///tmp/aws.greengrass.SageMakerEdgeManager.sock'

agent_channel = grpc.insecure_channel(agent_socket, options=(('grpc.enable_http_proxy', 0),))

agent_client = agent_pb2_grpc.AgentStub(agent_channel)


def list_models():
    return agent_client.ListModels(agent_pb2.ListModelsRequest())


def list_model_tensors(models):
    return {
        model.name: {
            'inputs': model.input_tensor_metadatas,
            'outputs': model.output_tensor_metadatas
        }
        for model in list_models().models
    }


def load_model(model_name, model_path):
    load_request = agent_pb2.LoadModelRequest()
    load_request.url = model_path
    load_request.name = model_name
    return agent_client.LoadModel(load_request)


def unload_model(name):
    unload_request = agent_pb2.UnLoadModelRequest()
    unload_request.name = name
    return agent_client.UnLoadModel(unload_request)


def predict_image(model_name, image_path):
    image_tensor = agent_pb2.Tensor()
    image_tensor.byte_data = Image.open(image_path).tobytes()
    image_tensor_metadata = list_model_tensors(list_models())[model_name]['inputs'][0]
    image_tensor.tensor_metadata.name = image_tensor_metadata.name
    image_tensor.tensor_metadata.data_type = image_tensor_metadata.data_type
    for shape in image_tensor_metadata.shape:
        image_tensor.tensor_metadata.shape.append(shape)
    predict_request = agent_pb2.PredictRequest()
    predict_request.name = model_name
    predict_request.tensors.append(image_tensor)
    predict_response = agent_client.Predict(predict_request)
    return predict_response

def main():
    try:
        unload_model('your-model')
    except:
        pass
  
    print('LoadModel...', end='')
    try:
        load_model('your-model', model_path)
        print('done.')
    except Exception as e:
        print()
        print(e)
        print('Model already loaded!')
        
    print('ListModels...', end='')
    try:
        print(list_models())
        print('done.')
        
    except Exception as e:
        print()
        print(e)
        print('List model failed!')
       
    print('Unload model...', end='')
    try:
        unload_model('your-model')
        print('done.')
    except Exception as e:
        print()
        print(e)
        print('unload model failed!')

if __name__ == '__main__':
    main()
```

`model_path`Stellen Sie sicher, dass auf den Namen der AWS IoT Greengrass Komponente verweist, die das Modell enthält, wenn Sie dasselbe Client-Codebeispiel verwenden.

Sie können Ihre AWS IoT Greengrass V2 Hello World-Komponente erstellen, sobald Sie Ihre gRPC-Stubs generiert haben und Ihren Hello World-Code bereit haben. Gehen Sie hierzu wie folgt vor:
+ Laden Sie Ihr `edge_manager_python_example.py`, `agent_pb2_grpc.py` und `agent_pb2.py` auf Ihren Amazon-S3-Bucket hoch und notieren Sie sich deren Amazon S3-Pfad.
+ Erstellen Sie eine private Komponente in der AWS IoT Greengrass V2-Konsole und definieren Sie das Rezept für Ihre Komponente. Geben Sie im folgenden Rezept den Amazon-S3-URI für Ihre Begrüßungsanwendung und den gRPC-Stub an.

  ```
  ---
  RecipeFormatVersion: 2020-01-25
  ComponentName: com.sagemaker.edgePythonExample
  ComponentVersion: 1.0.0
  ComponentDescription: Sagemaker Edge Manager Python example
  ComponentPublisher: Amazon Web Services, Inc.
  ComponentDependencies:
    aws.greengrass.SageMakerEdgeManager:
      VersionRequirement: '>=1.0.0'
      DependencyType: HARD
  Manifests:
    - Platform:
        os: linux
        architecture: "/amd64|x86/"
      Lifecycle:
        install: |-
          apt-get install python3-pip
          pip3 install grpcio
          pip3 install grpcio-tools
          pip3 install protobuf
          pip3 install Pillow
        run:
          script: |- 
            python3 {artifacts:path}/edge_manager_python_example.py
      Artifacts:
        - URI: <code-s3-path>
        - URI: <pb2-s3-path>
        - URI: <pb2-grpc-s3-path>
  ```

Ausführliche Informationen zum Erstellen eines Hello-World-Rezepts finden [Sie in der AWS IoT Greengrass Dokumentation unter Erstellen Sie Ihre erste Komponente](https://docs.aws.amazon.com/greengrass/v2/developerguide/getting-started.html#create-first-component).

# So setzen Sie die Komponenten auf Ihrem Gerät ein
<a name="edge-greengrass-deploy-components"></a>

Stellen Sie Ihre Komponenten mit der AWS IoT Konsole oder mit dem bereit AWS CLI.

## Für den Einsatz Ihrer Komponenten (Konsole)
<a name="collapsible-section-gg-deploy-console"></a>

Stellen Sie Ihre AWS IoT Greengrass Komponenten mit der AWS IoT Konsole bereit.

1. Wählen Sie in der AWS IoT Greengrass Konsole im [https://console.aws.amazon.com/iot/](https://console.aws.amazon.com/greengrass/)Navigationsmenü die Option **Deployments** aus.

1. Wählen Sie auf der Seite **Komponenten** auf der Registerkarte **Öffentliche Komponenten** die Option `aws.greengrass.SageMakerEdgeManager` aus.

1. Wählen Sie auf der `aws.greengrass.SageMakerEdgeManager` Seite **Bereitstellen** aus.

1. Wählen Sie aus `Add to deployment` eine der folgenden Optionen aus:

   1. Um diese Komponente mit einer auf Ihrem Zielgerät vorhandenen Bereitstellung zusammenzuführen, wählen Sie **Zu vorhandener Bereitstellung hinzufügen** und wählen Sie dann die Bereitstellung aus, die Sie überarbeiten möchten.

   1. Um auf Ihrem Zielgerät eine neue Bereitstellung zu erstellen, wählen Sie **Neue Bereitstellung erstellen** aus. Wenn auf Ihrem Gerät bereits eine Bereitstellung vorhanden ist, ersetzt die Auswahl in diesem Schritt die vorhandene Bereitstellung.

1. Gehen Sie auf der Seite **Ziel angeben** wie folgt vor:

   1. Geben Sie unter **Bereitstellungsinformationen** den Anzeigenamen für Ihre Bereitstellung ein oder ändern Sie ihn.

   1. Wählen Sie unter **Bereitstellungsziele** ein Ziel für Ihre Bereitstellung aus und klicken Sie auf **Weiter**. Wenn Sie eine vorhandene Bereitstellung überarbeiten, können Sie das Bereitstellungsziel nicht ändern.

1. Treffen Sie auf der Seite **Komponenten auswählen** unter **Meine Komponenten** die folgende Auswahl:
   + com. *<CUSTOM-COMPONENT-NAME>*
   + `aws.greengrass.SageMakerEdgeManager`
   + SagemakerEdgeManager.*<YOUR-PACKAGING-JOB>*

1. Wählen Sie auf der Seite **Komponenten konfigurieren** die Option **com.greengrass aus. SageMakerEdgeManager**, und gehen Sie wie folgt vor.

   1. Wählen Sie **Komponente konfigurieren** aus.

   1. Geben Sie unter **Konfigurationsupdate** unter **Zusammenzuführende Konfiguration** die folgende Konfiguration ein.

      ```
      {
          "DeviceFleetName": "device-fleet-name",
          "BucketName": "bucket-name"
      }
      ```

      Ersetzen Sie *`device-fleet-name`* durch den Namen der Edge-Geräteflotte, die Sie erstellt haben, und ersetzen Sie *`bucket-name`* durch den Namen des Amazon-S3-Buckets, der Ihrer Geräteflotte zugeordnet ist.

   1. Wählen Sie **Bestätigen** aus, und wählen Sie dann **Weiter**.

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

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

## Zur Bereitstellung Ihrer Komponenten (AWS CLI)
<a name="collapsible-section-gg-deploy-cli"></a>

1. Erstellen Sie eine ` deployment.json` Datei, um die Bereitstellungskonfiguration für Ihre SageMaker Edge Manager-Komponenten zu definieren. Diese Datei sollte wie im folgenden Beispiel aussehen.

   ```
   {
     "targetArn":"targetArn",
     "components": {
       "aws.greengrass.SageMakerEdgeManager": {
         "componentVersion": 1.0.0,
         "configurationUpdate": {
           "merge": {
             "DeviceFleetName": "device-fleet-name",
             "BucketName": "bucket-name"
           }
         }
       },
       "com.greengrass.SageMakerEdgeManager.ImageClassification": {
         "componentVersion": 1.0.0,
         "configurationUpdate": {
         }
       }, 
       "com.greengrass.SageMakerEdgeManager.ImageClassification.Model": {
         "componentVersion": 1.0.0,
         "configurationUpdate": {
         }
       }, 
     }
   }
   ```
   + Ersetzen Sie im `targetArn` Feld *`targetArn`* durch den Amazon-Ressourcennamen (ARN) des Objekts oder der Objektgruppe, auf die die Bereitstellung ausgerichtet werden soll, und zwar im folgenden Format:
     + Objekt: `arn:aws:iot:region:account-id:thing/thingName`
     + Objektgruppe: `arn:aws:iot:region:account-id:thinggroup/thingGroupName`
   + Ersetzen Sie im `merge` Feld *`device-fleet-name`* durch den Namen der Edge-Geräteflotte, die Sie erstellt haben, und ersetzen Sie *`bucket-name`* durch den Namen des Amazon-S3-Buckets, der Ihrer Geräteflotte zugeordnet ist.
   + Ersetzen Sie die Versionen aller Komponenten durch die neueste verfügbare Version.

1. Führen Sie den folgenden Befehl aus, um die Komponenten auf dem Gerät bereitzustellen:

   ```
   aws greengrassv2 create-deployment \
       --cli-input-json file://path/to/deployment.json
   ```

Es kann einige Minuten dauern, bis die Bereitstellung abgeschlossen ist. Überprüfen Sie im nächsten Schritt im Komponentenprotokoll, ob die Bereitstellung erfolgreich abgeschlossen wurde, und schauen Sie sich die Inference-Ergebnisse an.

Weitere Informationen zur Bereitstellung von Komponenten auf einzelnen Geräten oder Gerätegruppen finden Sie unter [Bereitstellen von AWS IoT Greengrass Komponenten auf Geräten](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-deployments.html).