

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.

# Stellen Sie Ihre serverlose Infrastructure Composer-Anwendung in der AWS Cloud bereit
<a name="other-services-cfn"></a>

Wird verwendet AWS Infrastructure Composer , um einsatzbereite serverlose Anwendungen zu entwerfen. Verwenden Sie zur Bereitstellung einen beliebigen AWS CloudFormation kompatiblen Dienst. Wir empfehlen die Verwendung von [AWS Serverless Application Model (AWS SAM)](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/what-is-sam.html).

AWS SAM ist ein Open-Source-Framework, das Entwicklertools zum Erstellen und Ausführen serverloser Anwendungen bereitstellt. AWS Mit AWS SAM der Kurzsyntax deklarieren Entwickler CloudFormation Ressourcen und spezialisierte serverlose Ressourcen, die während der Bereitstellung in Infrastruktur umgewandelt werden.

## Wichtige Konzepte AWS SAM
<a name="w2aac23b7"></a>

Vor der Verwendung ist es wichtig AWS SAM, dass Sie sich mit einigen der grundlegenden Konzepte vertraut machen.
+ **[AWS SAM Funktionsweise](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/what-is-sam-overview)**: Dieses Thema, das sich im *AWS Serverless Application Model Entwicklerhandbuch* befindet, enthält wichtige Informationen zu den Hauptkomponenten, mit denen Sie Ihre Serverless-Anwendung erstellen: Das AWS SAMCLI, das AWS SAM Projekt und die Vorlage. AWS SAM 
+ **[Verwendung von AWS Serverless Application Model (AWS SAM)](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/chapter-using-sam.html)**: Dieses Thema, das sich im *AWS Serverless Application Model Entwicklerhandbuch* befindet, bietet einen allgemeinen Überblick über die Schritte, die Sie ausführen müssen, um Ihre Anwendung in der AWS Cloud bereitzustellen. AWS SAM 

Beim Entwerfen Ihrer Anwendung in Infrastructure Composer können Sie den **sam sync** Befehl verwenden, um lokale Änderungen AWS SAMCLI automatisch zu erkennen und diese Änderungen für bereitzustellen CloudFormation. Weitere Informationen finden Sie unter [Verwenden von Sam Sync](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/using-sam-cli-sync.html) im *AWS Serverless Application Model Entwicklerhandbuch*.

## Nächste Schritte
<a name="w2aac23b9"></a>

Informationen [Für die Bereitstellung mit dem AWS SAMCLI und Infrastructure Composer einrichten](other-services-cfn-sam-using.md) zur Vorbereitung der Bereitstellung Ihrer Anwendung finden Sie unter.

# Für die Bereitstellung mit dem AWS SAMCLI und Infrastructure Composer einrichten
<a name="other-services-cfn-sam-using"></a>

Um Ihre Anwendung mit bereitzustellen AWS SAM, müssen Sie zuerst die und die installieren AWSCLI und darauf zugreifen AWS SAMCLI. Die Themen in diesem Abschnitt enthalten Einzelheiten dazu.

## Installieren Sie das AWSCLI
<a name="other-services-cfn-sam-prerequisites-aws"></a>

Wir empfehlen die Installation und Einrichtung von AWSCLI vor der Installation von AWS SAMCLI. Anweisungen finden [Sie im *AWS Command Line Interface Benutzerhandbuch* unter Installation oder Aktualisierung AWS CLI auf die neueste Version von](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

**Anmerkung**  
Nach der AWSCLI Installation von müssen Sie die AWS Anmeldeinformationen konfigurieren. Weitere Informationen finden Sie unter [Schnellinstallation](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-quickstart.html) im *AWS Command Line Interface Benutzerhandbuch*.

## Installieren Sie den AWS SAMCLI
<a name="other-services-cfn-sam-prerequisites-sam"></a>

Informationen zur AWS SAMCLI Installation [von finden Sie unter Installation von AWS SAMCLI im AWS Serverless Application Model](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-sam-cli.html) *Entwicklerhandbuch*.

## Greifen Sie auf AWS SAMCLI
<a name="w2aac23c13c13"></a>

Wenn Sie Infrastructure Composer von aus verwenden AWS-Managementkonsole, haben Sie die folgenden Optionen, um den zu verwenden AWS SAMCLI.

**Aktivieren Sie den lokalen Synchronisierungsmodus**  
Im lokalen Synchronisierungsmodus wird Ihr Projektordner, einschließlich der AWS SAM Vorlage, automatisch auf Ihrem lokalen Computer gespeichert. Infrastructure Composer strukturiert Ihr Projektverzeichnis so, dass es AWS SAM erkannt wird. Sie können das AWS SAMCLI vom Stammverzeichnis Ihres Projekts aus ausführen.  
Weitere Hinweise zum **lokalen Synchronisierungsmodus** finden Sie unter[Synchronisieren und speichern Sie Ihr Projekt lokal in der Infrastructure Composer-Konsole](using-composer-project-local-sync.md).

**Exportieren Sie Ihre Vorlage**  
Sie können Ihre Vorlage auf Ihren lokalen Computer exportieren. Führen Sie dann die AWS SAMCLI aus dem übergeordneten Ordner aus, der die Vorlage enthält. Sie können die `--template-file` Option auch mit einem beliebigen AWS SAMCLI Befehl verwenden und den Pfad zu Ihrer Vorlage angeben.

**Verwenden Sie Infrastructure Composer aus dem AWS Toolkit for Visual Studio Code**  
Sie können Infrastructure Composer aus dem Toolkit for VS Code verwenden, um Infrastructure Composer auf Ihren lokalen Computer zu bringen. Verwenden Sie dann Infrastructure Composer und den AWS SAMCLI von VS Code.

## Nächste Schritte
<a name="w2aac23c13c15"></a>

Informationen zur Bereitstellung Ihrer Anwendung finden Sie unter[Verwenden Sie Infrastructure Composer mit AWS SAM , um sie zu erstellen und bereitzustellen](other-services-cfn-sam-examples-example1.md).

# Verwenden Sie Infrastructure Composer mit AWS SAM , um sie zu erstellen und bereitzustellen
<a name="other-services-cfn-sam-examples-example1"></a>

Nachdem Sie den Vorgang abgeschlossen haben[Für die Bereitstellung mit dem AWS SAMCLI und Infrastructure Composer einrichten](other-services-cfn-sam-using.md), können Sie Ihre Anwendung mit einem AWS SAM Infrastructure Composer bereitstellen. Dieser Abschnitt enthält ein Beispiel, in dem detailliert beschrieben wird, wie Sie dies tun können. Anweisungen zur [Bereitstellung Ihrer Anwendung mit finden Sie auch unter Deploy your application and resources](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-deploying.html) with AWS SAM AWS SAM im *AWS Serverless Application Model Developer Guide*.

Dieses Beispiel zeigt Ihnen, wie Sie die Infrastructure Composer-Demoanwendung erstellen und bereitstellen. Die Demo-Anwendung verfügt über die folgenden Ressourcen:

![\[Die Infrastructure Composer-Demo zeigt eine grundlegende serverlose CRUD-Anwendung.\]](http://docs.aws.amazon.com/de_de/infrastructure-composer/latest/dg/images/aac_t1_04.png)


**Anmerkung**  
Weitere Informationen zur Demo-Anwendung finden Sie unter. [Laden und ändern Sie das Infrastructure Composer-Demoprojekt](getting-started-demo.md)
In diesem Beispiel verwenden wir Infrastructure Composer mit aktivierter **lokaler Synchronisierung**.

1. Verwenden Sie den **sam build** Befehl, um die Anwendung zu erstellen.

   ```
   $ sam build
   ...
   Build Succeeded
   
   Built Artifacts  : .aws-sam/build
   Built Template   : .aws-sam/build/template.yaml
   
   Commands you can use next
   =========================
   [*] Validate SAM template: sam validate
   [*] Invoke Function: sam local invoke
   [*] Test Function in the Cloud: sam sync --stack-name {{stack-name}} --watch
   [*] Deploy: sam deploy --guided
   ```

   Das AWS SAMCLI erstellt das `./aws-sam` Verzeichnis im Projektordner. Dieses Verzeichnis enthält Build-Artefakte für die Lambda-Funktionen der Anwendung. Hier ist eine Ausgabe des Projektverzeichnisses:

   ```
   .
   ├── README.md
   ├── samconfig.toml
   ├── src
   │   ├── CreateItem
   │   │   ├── index.js
   │   │   └── package.json
   │   ├── DeleteItem
   │   │   ├── index.js
   │   │   └── package.json
   │   ├── GetItem
   │   │   ├── index.js
   │   │   └── package.json
   │   ├── ListItems
   │   │   ├── index.js
   │   │   └── package.json
   │   └── UpdateItem
   │       ├── index.js
   │       └── package.json
   └── template.yaml
   ```

1. Jetzt ist die Anwendung bereit, bereitgestellt zu werden. Wir werden verwenden**sam deploy --guided**. Dadurch wird Ihre Anwendung anhand einer Reihe von Eingabeaufforderungen für die Bereitstellung vorbereitet.

   ```
   $ sam deploy --guided
   ...
   Configuring SAM deploy
   ======================
   
       Looking for config file [samconfig.toml] :  Found
       Reading default arguments  :  Success
   
       Setting default arguments for 'sam deploy'
       =========================================
       Stack Name [aws-app-composer-basic-api]: AWS Region [us-west-2]:
       #Shows you resources changes to be deployed and require a 'Y' to initiate deploy
       Confirm changes before deploy [y/N]:
       #SAM needs permission to be able to create roles to connect to the resources in your template
       Allow SAM CLI IAM role creation [Y/n]:
       #Preserves the state of previously provisioned resources when an operation fails
       Disable rollback [y/N]:
       ListItems may not have authorization defined, Is this okay? [y/N]: y
       CreateItem may not have authorization defined, Is this okay? [y/N]: y
       GetItem may not have authorization defined, Is this okay? [y/N]: y
       UpdateItem may not have authorization defined, Is this okay? [y/N]: y
       DeleteItem may not have authorization defined, Is this okay? [y/N]: y
       Save arguments to configuration file [Y/n]:
       SAM configuration file [samconfig.toml]:
       SAM configuration environment [default]:
   ```

   Es AWS SAMCLI wird eine Zusammenfassung dessen angezeigt, was bereitgestellt wird:

   ```
   Deploying with following values
       ===============================
       Stack name                   : aws-app-composer-basic-api
       Region                       : us-west-2
       Confirm changeset            : False
       Disable rollback             : False
       Deployment s3 bucket         : aws-sam-cli-managed-default-samclisam-s3-demo-1b3x26zbcdkqr
       Capabilities                 : ["CAPABILITY_IAM"]
       Parameter overrides          : {}
       Signing Profiles             : {}
   ```

   Der AWS SAMCLI stellt die Anwendung bereit, indem zunächst ein CloudFormation Changeset erstellt wird:

   ```
   Initiating deployment
   =====================
   Uploading to aws-app-composer-basic-api/4181c909ee2440a728a7a129dafb83d4.template  7087 / 7087  (100.00%)
   
   Waiting for changeset to be created..
   CloudFormation stack changeset
   ---------------------------------------------------------------------------------------------------------------------------------------------
   Operation                           LogicalResourceId                   ResourceType                        Replacement
   ---------------------------------------------------------------------------------------------------------------------------------------------
   + Add                               ApiDeploymentcc153d135b             AWS::ApiGateway::Deployment         N/A
   + Add                               ApiProdStage                        AWS::ApiGateway::Stage              N/A
   + Add                               Api                                 AWS::ApiGateway::RestApi            N/A
   + Add                               CreateItemApiPOSTitemsPermissionP   AWS::Lambda::Permission             N/A
                                       rod
   + Add                               CreateItemRole                      AWS::IAM::Role                      N/A
   + Add                               CreateItem                          AWS::Lambda::Function               N/A
   + Add                               DeleteItemApiDELETEitemsidPermiss   AWS::Lambda::Permission             N/A
                                       ionProd
   + Add                               DeleteItemRole                      AWS::IAM::Role                      N/A
   + Add                               DeleteItem                          AWS::Lambda::Function               N/A
   + Add                               GetItemApiGETitemsidPermissionPro   AWS::Lambda::Permission             N/A
                                       d
   + Add                               GetItemRole                         AWS::IAM::Role                      N/A
   + Add                               GetItem                             AWS::Lambda::Function               N/A
   + Add                               Items                               AWS::DynamoDB::Table                N/A
   + Add                               ListItemsApiGETitemsPermissionPro   AWS::Lambda::Permission             N/A
                                       d
   + Add                               ListItemsRole                       AWS::IAM::Role                      N/A
   + Add                               ListItems                           AWS::Lambda::Function               N/A
   + Add                               UpdateItemApiPUTitemsidPermission   AWS::Lambda::Permission             N/A
                                       Prod
   + Add                               UpdateItemRole                      AWS::IAM::Role                      N/A
   + Add                               UpdateItem                          AWS::Lambda::Function               N/A
   ---------------------------------------------------------------------------------------------------------------------------------------------
   
   Changeset created successfully. arn:aws:cloudformation:us-west-2:513423067560:changeSet/samcli-deploy1677472539/967ab543-f916-4170-b97d-c11a6f9308ea
   ```

   Dann AWS SAMCLI stellt der die Anwendung bereit:

   ```
   CloudFormation events from stack operations (refresh every 0.5 seconds)
   ---------------------------------------------------------------------------------------------------------------------------------------------
   ResourceStatus                      ResourceType                        LogicalResourceId                   ResourceStatusReason
   ---------------------------------------------------------------------------------------------------------------------------------------------
   CREATE_IN_PROGRESS                  AWS::DynamoDB::Table                Items                               -
   CREATE_IN_PROGRESS                  AWS::DynamoDB::Table                Items                               Resource creation Initiated
   CREATE_COMPLETE                     AWS::DynamoDB::Table                Items                               -
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      DeleteItemRole                      -
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      ListItemsRole                       -
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      UpdateItemRole                      -
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      GetItemRole                         -
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      CreateItemRole                      -
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      DeleteItemRole                      Resource creation Initiated
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      ListItemsRole                       Resource creation Initiated
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      GetItemRole                         Resource creation Initiated
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      UpdateItemRole                      Resource creation Initiated
   CREATE_IN_PROGRESS                  AWS::IAM::Role                      CreateItemRole                      Resource creation Initiated
   CREATE_COMPLETE                     AWS::IAM::Role                      DeleteItemRole                      -
   CREATE_COMPLETE                     AWS::IAM::Role                      ListItemsRole                       -
   CREATE_COMPLETE                     AWS::IAM::Role                      GetItemRole                         -
   CREATE_COMPLETE                     AWS::IAM::Role                      UpdateItemRole                      -
   CREATE_COMPLETE                     AWS::IAM::Role                      CreateItemRole                      -
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               DeleteItem                          -
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               CreateItem                          -
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               ListItems                           -
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               UpdateItem                          -
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               DeleteItem                          Resource creation Initiated
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               GetItem                             -
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               ListItems                           Resource creation Initiated
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               CreateItem                          Resource creation Initiated
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               UpdateItem                          Resource creation Initiated
   CREATE_IN_PROGRESS                  AWS::Lambda::Function               GetItem                             Resource creation Initiated
   CREATE_COMPLETE                     AWS::Lambda::Function               DeleteItem                          -
   CREATE_COMPLETE                     AWS::Lambda::Function               ListItems                           -
   CREATE_COMPLETE                     AWS::Lambda::Function               CreateItem                          -
   CREATE_COMPLETE                     AWS::Lambda::Function               UpdateItem                          -
   CREATE_COMPLETE                     AWS::Lambda::Function               GetItem                             -
   CREATE_IN_PROGRESS                  AWS::ApiGateway::RestApi            Api                                 -
   CREATE_IN_PROGRESS                  AWS::ApiGateway::RestApi            Api                                 Resource creation Initiated
   CREATE_COMPLETE                     AWS::ApiGateway::RestApi            Api                                 -
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             GetItemApiGETitemsidPermissionPro   -
                                                                           d
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             ListItemsApiGETitemsPermissionPro   -
                                                                           d
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             DeleteItemApiDELETEitemsidPermiss   -
                                                                           ionProd
   CREATE_IN_PROGRESS                  AWS::ApiGateway::Deployment         ApiDeploymentcc153d135b             -
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             UpdateItemApiPUTitemsidPermission   -
                                                                           Prod
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             CreateItemApiPOSTitemsPermissionP   -
                                                                           rod
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             GetItemApiGETitemsidPermissionPro   Resource creation Initiated
                                                                           d
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             UpdateItemApiPUTitemsidPermission   Resource creation Initiated
                                                                           Prod
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             CreateItemApiPOSTitemsPermissionP   Resource creation Initiated
                                                                           rod
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             ListItemsApiGETitemsPermissionPro   Resource creation Initiated
                                                                           d
   CREATE_IN_PROGRESS                  AWS::Lambda::Permission             DeleteItemApiDELETEitemsidPermiss   Resource creation Initiated
                                                                           ionProd
   CREATE_IN_PROGRESS                  AWS::ApiGateway::Deployment         ApiDeploymentcc153d135b             Resource creation Initiated
   CREATE_COMPLETE                     AWS::ApiGateway::Deployment         ApiDeploymentcc153d135b             -
   CREATE_IN_PROGRESS                  AWS::ApiGateway::Stage              ApiProdStage                        -
   CREATE_IN_PROGRESS                  AWS::ApiGateway::Stage              ApiProdStage                        Resource creation Initiated
   CREATE_COMPLETE                     AWS::ApiGateway::Stage              ApiProdStage                        -
   CREATE_COMPLETE                     AWS::Lambda::Permission             CreateItemApiPOSTitemsPermissionP   -
                                                                           rod
   CREATE_COMPLETE                     AWS::Lambda::Permission             UpdateItemApiPUTitemsidPermission   -
                                                                           Prod
   CREATE_COMPLETE                     AWS::Lambda::Permission             ListItemsApiGETitemsPermissionPro   -
                                                                           d
   CREATE_COMPLETE                     AWS::Lambda::Permission             DeleteItemApiDELETEitemsidPermiss   -
                                                                           ionProd
   CREATE_COMPLETE                     AWS::Lambda::Permission             GetItemApiGETitemsidPermissionPro   -
                                                                           d
   CREATE_COMPLETE                     AWS::CloudFormation::Stack          aws-app-composer-basic-api          -
   ---------------------------------------------------------------------------------------------------------------------------------------------
   ```

   Schließlich wird eine Meldung angezeigt, die Sie darüber informiert, dass die Bereitstellung erfolgreich war:

   ```
   Successfully created/updated stack - aws-app-composer-basic-api in us-west-2
   ```

# Verwenden Sie Infrastructure Composer mit AWS SAM , um einen Stack zu löschen
<a name="other-services-cfn-sam-examples-example2"></a>

Dieses Beispiel zeigt Ihnen, wie Sie einen CloudFormation Stack mit dem **sam delete** Befehl löschen.

Geben Sie den Befehl **sam delete** in den ein AWS SAMCLI und bestätigen Sie, ob Sie den Stack und die Vorlage löschen möchten:

```
$ sam delete
	Are you sure you want to delete the stack aws-app-composer-basic-api in the region us-west-2 ? [y/N]: y
	Do you want to delete the template file 30439348c0be6e1b85043b7a935b34ab.template in S3? [y/N]: y
	- Deleting S3 object with key eb226ca86d1bc4e9914ad85eb485fed8
	- Deleting S3 object with key 875e4bcf4b10a6a1144ad83158d84b6d
	- Deleting S3 object with key 20b869d98d61746dedd9aa33aa08a6fb
	- Deleting S3 object with key c513cedc4db6bc184ce30e94602741d6
	- Deleting S3 object with key c7a15d7d8d1c24b77a1eddf8caebc665
	- Deleting S3 object with key e8b8984f881c3732bfb34257cdd58f1e
	- Deleting S3 object with key 3185c59b550594ee7fca7f8c36686119.template
	- Deleting S3 object with key 30439348c0be6e1b85043b7a935b34ab.template
	- Deleting Cloudformation stack aws-app-composer-basic-api

Deleted successfully
```