

Dies ist der AWS CDK v2-Entwicklerhandbuch. Das ältere CDK v1 wurde am 1. Juni 2022 gewartet und der Support wurde am 1. Juni 2023 eingestellt.

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.

# Was ist das AWS CDK?
<a name="home"></a>

Das AWS Cloud Development Kit (AWS CDK) ist ein Open-Source-Framework für die Softwareentwicklung, mit dem Cloud-Infrastruktur im Code definiert und bereitgestellt werden kann. AWS CloudFormation

Das AWS CDK besteht aus zwei Hauptteilen:
+  **[AWS CDK Construct Library](constructs.md)** — Eine Sammlung von vorgefertigten modularen und wiederverwendbaren Codeteilen, sogenannten Konstrukten, die Sie verwenden, ändern und integrieren können, um Ihre Infrastruktur schnell zu entwickeln. Das Ziel der AWS CDK Construct Library besteht darin, die Komplexität zu reduzieren, die für die gemeinsame Definition und Integration von AWS Diensten bei der Erstellung von Anwendungen erforderlich ist. AWS
+  AWS CDK Toolkit — Tools, mit denen Sie Ihre CDK-Apps verwalten und mit ihnen interagieren können, z. B. zur Synthese oder Bereitstellung. Das CDK Toolkit besteht aus einem Befehlszeilentool ([CDK CLI](ref-cli-cmd.md)) und einer programmatischen Bibliothek ([CDK](toolkit-library.md) Toolkit Library).

Das AWS CDK unterstützt TypeScript,, Python JavaScript, Java, C\$1/.Net und. Go [Sie können jede dieser unterstützten Programmiersprachen verwenden, um wiederverwendbare Cloud-Komponenten, sogenannte Konstrukte, zu definieren.](constructs.md) [Sie stellen diese zusammen zu [Stacks und Apps](stacks.md) zusammen.](apps.md) Anschließend stellen Sie Ihre CDK-Anwendungen bereit, AWS CloudFormation um Ihre Ressourcen bereitzustellen oder zu aktualisieren.

![\[Überblick über die CDK-App und den Prozess\]](http://docs.aws.amazon.com/de_de/cdk/v2/guide/images/AppStacks.png)


## Vorteile des CDK AWS
<a name="home-benefits"></a>

Verwenden Sie das AWS CDK, um zuverlässige, skalierbare und kostengünstige Anwendungen in der Cloud mit der beachtlichen Ausdruckskraft einer Programmiersprache zu entwickeln. Dieser Ansatz bietet viele Vorteile, darunter:<a name="home-benefits-iac"></a>

 **Entwickeln und verwalten Sie Ihre Infrastruktur als Code (IaC)**   
Üben Sie *Infrastruktur als Code*, um Infrastruktur auf programmatische, beschreibende und deklarative Weise zu erstellen, bereitzustellen und zu verwalten. Mit IaC behandeln Sie Infrastruktur genauso wie Entwickler Code behandeln. Dies führt zu einem skalierbaren und strukturierten Ansatz für die Verwaltung der Infrastruktur. Weitere Informationen zu IaC finden Sie unter [Infrastruktur als Code](https://docs.aws.amazon.com/whitepapers/latest/introduction-devops-aws/infrastructure-as-code.html) im * AWS Whitepaper Einführung DevOps zu*.  
Mit dem AWS CDK können Sie Ihre Infrastruktur, Ihren Anwendungscode und Ihre Konfiguration an einem zentralen Ort speichern und so sicherstellen, dass Sie bei jedem Meilenstein über ein vollständiges, in der Cloud bereitstellbares System verfügen. Nutzen Sie bewährte Methoden der Softwareentwicklung wie Codeüberprüfungen, Komponententests und Quellcodeverwaltung, um Ihre Infrastruktur robuster zu machen.<a name="home-benefits-languages"></a>

 **Definieren Sie Ihre Cloud-Infrastruktur mithilfe von Allzweck-Programmiersprachen**   
Mit dem AWS CDK können Sie jede der folgenden Programmiersprachen verwenden, um Ihre Cloud-Infrastruktur zu definieren: TypeScript,, Python, Java JavaScript, C\$1/.Net und. Go Wählen Sie Ihre bevorzugte Sprache und verwenden Sie Programmierelemente wie Parameter, Konditionale, Schleifen, Komposition und Vererbung, um das gewünschte Ergebnis Ihrer Infrastruktur zu definieren.  
Verwenden Sie dieselbe Programmiersprache, um Ihre Infrastruktur und Ihre Anwendungslogik zu definieren.  
Nutzen Sie die Vorteile der Infrastrukturentwicklung in Ihrer bevorzugten IDE (Integrated Development Environment), z. B. Syntaxhervorhebung und intelligente Codevervollständigung.  

![\[Codeausschnitt, der das CDK-Setup für den ECS-Cluster mit VPC- und Fargate-Dienstkonfiguration zeigt.\]](http://docs.aws.amazon.com/de_de/cdk/v2/guide/images/CodeCompletion.png)
<a name="home-benefits-cfn"></a>

 **Stellen Sie die Infrastruktur bereit über AWS CloudFormation**   
 AWS CDK lässt sich integrieren AWS CloudFormation , um Ihre Infrastruktur bereitzustellen und bereitzustellen. AWS AWS CloudFormation ist ein verwalteter AWS Service, der umfassende Unterstützung von Ressourcen- und Eigenschaftenkonfigurationen für die Bereitstellung von Diensten bietet. AWS Mit AWS CloudFormation können Sie Infrastrukturbereitstellungen vorhersehbar und wiederholt durchführen und bei einem Fehler einen Rollback durchführen. Wenn Sie bereits mit dem CDK vertraut sind AWS CloudFormation, müssen Sie sich nicht erst mit einem neuen IaC-Management-Service vertraut machen. AWS <a name="home-benefits-constructs"></a>

 **Beginnen Sie schnell mit der Entwicklung Ihrer Anwendung mithilfe von Konstrukten**   
Entwickeln Sie schneller, indem Sie wiederverwendbare Komponenten, sogenannte Konstrukte, verwenden und gemeinsam nutzen. Verwenden Sie Konstrukte auf niedriger Ebene, um einzelne AWS CloudFormation Ressourcen und ihre Eigenschaften zu definieren. Verwenden Sie Konstrukte auf hoher Ebene, um schnell größere Komponenten Ihrer Anwendung mit sinnvollen, sicheren Standardeinstellungen für Ihre AWS Ressourcen zu definieren und so mehr Infrastruktur mit weniger Code zu definieren.  
Erstellen Sie Ihre eigenen Konstrukte, die auf Ihre individuellen Anwendungsfälle zugeschnitten sind, und teilen Sie sie in Ihrem Unternehmen oder sogar mit der Öffentlichkeit.

## Beispiel für das CDK AWS
<a name="home-example"></a>

Im Folgenden finden Sie ein Beispiel für die Verwendung der AWS CDK Constructs Library zur Erstellung eines Amazon Elastic Container Service (Amazon ECS) -Service mit dem Starttyp AWS Fargate. Weitere Informationen zu diesem Beispiel finden Sie unter [Beispiel: Einen AWS Fargate-Dienst mithilfe des AWS CDK erstellen](ecs-example.md).

**Example**  

```
export class MyEcsConstructStack extends Stack {
  constructor(scope: App, id: string, props?: StackProps) {
    super(scope, id, props);

    const vpc = new ec2.Vpc(this, "MyVpc", {
      maxAzs: 3 // Default is all AZs in region
    });

    const cluster = new ecs.Cluster(this, "MyCluster", {
      vpc: vpc
    });

    // Create a load-balanced Fargate service and make it public
    new ecs_patterns.ApplicationLoadBalancedFargateService(this, "MyFargateService", {
      cluster: cluster, // Required
      cpu: 512, // Default is 256
      desiredCount: 6, // Default is 1
      taskImageOptions: { image: ecs.ContainerImage.fromRegistry("amazon/amazon-ecs-sample") },
      memoryLimitMiB: 2048, // Default is 512
      publicLoadBalancer: true // Default is false
    });
  }
}
```

```
class MyEcsConstructStack extends Stack {
  constructor(scope, id, props) {
    super(scope, id, props);

    const vpc = new ec2.Vpc(this, "MyVpc", {
      maxAzs: 3 // Default is all AZs in region
    });

    const cluster = new ecs.Cluster(this, "MyCluster", {
      vpc: vpc
    });

    // Create a load-balanced Fargate service and make it public
    new ecs_patterns.ApplicationLoadBalancedFargateService(this, "MyFargateService", {
      cluster: cluster, // Required
      cpu: 512, // Default is 256
      desiredCount: 6, // Default is 1
      taskImageOptions: { image: ecs.ContainerImage.fromRegistry("amazon/amazon-ecs-sample") },
      memoryLimitMiB: 2048, // Default is 512
      publicLoadBalancer: true // Default is false
    });
  }
}

module.exports = { MyEcsConstructStack }
```

```
class MyEcsConstructStack(Stack):

  def __init__(self, scope: Construct, id: str, **kwargs) -> None:
    super().__init__(scope, id, **kwargs)

    vpc = ec2.Vpc(self, "MyVpc", max_azs=3)     # default is all AZs in region

    cluster = ecs.Cluster(self, "MyCluster", vpc=vpc)

    ecs_patterns.ApplicationLoadBalancedFargateService(self, "MyFargateService",
      cluster=cluster,            # Required
      cpu=512,                    # Default is 256
      desired_count=6,            # Default is 1
      task_image_options=ecs_patterns.ApplicationLoadBalancedTaskImageOptions(
          image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")),
      memory_limit_mib=2048,      # Default is 512
      public_load_balancer=True)  # Default is False
```

```
public class MyEcsConstructStack extends Stack {

  public MyEcsConstructStack(final Construct scope, final String id) {
    this(scope, id, null);
  }

  public MyEcsConstructStack(final Construct scope, final String id,
      StackProps props) {
    super(scope, id, props);

    Vpc vpc = Vpc.Builder.create(this, "MyVpc").maxAzs(3).build();

    Cluster cluster = Cluster.Builder.create(this, "MyCluster")
            .vpc(vpc).build();

    ApplicationLoadBalancedFargateService.Builder.create(this, "MyFargateService")
            .cluster(cluster)
            .cpu(512)
            .desiredCount(6)
            .taskImageOptions(
                    ApplicationLoadBalancedTaskImageOptions.builder()
                            .image(ContainerImage
                                    .fromRegistry("amazon/amazon-ecs-sample"))
                            .build()).memoryLimitMiB(2048)
            .publicLoadBalancer(true).build();
  }
}
```

```
public class MyEcsConstructStack : Stack
{
    public MyEcsConstructStack(Construct scope, string id, IStackProps props=null) : base(scope, id, props)
    {
        var vpc = new Vpc(this, "MyVpc", new VpcProps
        {
            MaxAzs = 3
        });

        var cluster = new Cluster(this, "MyCluster", new ClusterProps
        {
            Vpc = vpc
        });

        new ApplicationLoadBalancedFargateService(this, "MyFargateService",
            new ApplicationLoadBalancedFargateServiceProps
        {
            Cluster = cluster,
            Cpu = 512,
            DesiredCount = 6,
            TaskImageOptions = new ApplicationLoadBalancedTaskImageOptions
            {
                Image = ContainerImage.FromRegistry("amazon/amazon-ecs-sample")
            },
            MemoryLimitMiB = 2048,
            PublicLoadBalancer = true,
        });
    }
}
```

```
func NewMyEcsConstructStack(scope constructs.Construct, id string, props *MyEcsConstructStackProps) awscdk.Stack {

	var sprops awscdk.StackProps

	if props != nil {
		sprops = props.StackProps
	}

	stack := awscdk.NewStack(scope, &id, &sprops)

	vpc := awsec2.NewVpc(stack, jsii.String("MyVpc"), &awsec2.VpcProps{
		MaxAzs: jsii.Number(3), // Default is all AZs in region
	})

	cluster := awsecs.NewCluster(stack, jsii.String("MyCluster"), &awsecs.ClusterProps{
		Vpc: vpc,
	})

	awsecspatterns.NewApplicationLoadBalancedFargateService(stack, jsii.String("MyFargateService"),
		&awsecspatterns.ApplicationLoadBalancedFargateServiceProps{
			Cluster:        cluster,           // required
			Cpu:            jsii.Number(512),  // default is 256
			DesiredCount:   jsii.Number(5),    // default is 1
			MemoryLimitMiB: jsii.Number(2048), // Default is 512
			TaskImageOptions: &awsecspatterns.ApplicationLoadBalancedTaskImageOptions{
				Image: awsecs.ContainerImage_FromRegistry(jsii.String("amazon/amazon-ecs-sample"), nil),
			},
			PublicLoadBalancer: jsii.Bool(true), // Default is false
		})

	return stack

}
```

Diese Klasse erzeugt eine AWS CloudFormation Vorlage mit mehr als 500 Zeilen. Durch die Bereitstellung der AWS CDK-App werden mehr als 50 Ressourcen der folgenden Typen erzeugt:
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) 
+  [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html) 

## AWS CDK-Funktionen
<a name="home-features"></a>

### Das AWS CDK-Repository GitHub
<a name="home-features-repo"></a>

[Das offizielle AWSGitHub CDK-Repository finden Sie unter aws-cdk.](https://github.com/aws/aws-cdk) Hier können Sie [Probleme](https://github.com/aws/aws-cdk/issues) einreichen, unsere [Lizenz](https://github.com/aws/aws-cdk/blob/main/LICENSE) einsehen, [Veröffentlichungen](https://github.com/aws/aws-cdk/releases) verfolgen und vieles mehr.

Da das AWS CDK Open Source ist, ermutigt das Team Sie, dazu beizutragen, es zu einem noch besseren Tool zu machen. Einzelheiten finden Sie unter [Beitrag zum AWS Cloud Development Kit (AWS CDK)](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md).

### Die AWS CDK-API-Referenz
<a name="home-features-api"></a>

Die AWS CDK Construct Library bietet die Möglichkeit, Ihre CDK-Anwendung APIs zu definieren und der Anwendung CDK-Konstrukte hinzuzufügen. [Weitere Informationen finden Sie in der AWS CDK-API-Referenz.](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-construct-library.html)

### Das Construct-Programmiermodell
<a name="home-features-cpm"></a>

Das Construct Programming Model (CPM) erweitert die dem AWS CDK zugrunde liegenden Konzepte auf weitere Bereiche. Zu den anderen Tools, die das CPM verwenden, gehören:
+  [CDK für Terraform](https://www.terraform.io/docs/cdktf/index.html) () CDKtf
+  [CDK](https://cdk8s.io/) für Kubernetes () CDK8s
+  Projen, zum [Erstellen von Projektkonfigurationen](https://github.com/projen/projen)

### Der Construct Hub
<a name="home-features-hub"></a>

Der [Construct Hub](https://constructs.dev/) ist eine Online-Registrierung, in der Sie AWS Open-Source-CDK-Bibliotheken finden, veröffentlichen und teilen können.

## Nächste Schritte
<a name="home-next"></a>

Informationen zu den ersten Schritten mit dem AWS CDK finden Sie unter [Erste Schritte mit dem](getting-started.md) CDK. AWS 

## Weitere Informationen
<a name="home-learn"></a>

Weitere Informationen zum AWS CDK finden Sie im Folgenden:
+  **[Lernen Sie die Kernkonzepte des AWS CDK](core-concepts.md)** kennen — Wichtige Konzepte und Begriffe für das AWS CDK.
+  **[AWS CDK-Workshop — Praktischer Workshop](https://cdkworkshop.com/)** zum Erlernen und Verwenden des CDK. AWS 
+  **[AWS CDK Patterns](https://cdkpatterns.com/)** — Open-Source-Sammlung von AWS serverlosen Architekturmustern, die von Experten für das CDK entwickelt wurde. AWS AWS 
+  **[AWS CDK-Codebeispiele](https://github.com/aws-samples/aws-cdk-examples)** — GitHub Sammlung von CDK-Beispielprojekten. AWS 
+  **[cdk.dev](https://cdk.dev/)** — Von der Community betriebener Hub für das AWS CDK, einschließlich eines Community-Workspace. Slack
+  **[Fantastisches CDK](https://github.com/kalaiser/awesome-cdk)** — GitHub Repository mit einer kuratierten Liste von AWS CDK-Open-Source-Projekten, Leitfäden, Blogs und anderen Ressourcen.
+  **[AWS Lösungskonstrukte — Geprüfte](https://aws.amazon.com/solutions/constructs/)** Muster für die Konfiguration der Infrastruktur als Code (IaC), die einfach zu produktionsreifen Anwendungen zusammengefügt werden können.
+  **[AWS Developer Tools Blog — Blogbeiträge](https://aws.amazon.com/blogs/developer/category/developer-tools/aws-cloud-development-kit/)**, die nach dem CDK gefiltert wurden. AWS 
+  **[AWS CDK auf Stack Overflow](https://stackoverflow.com/questions/tagged/aws-cdk)** **— Fragen, die mit aws-cdk on gekennzeichnet sind.** Stack Overflow
+  **[AWS CDK-Tutorial für AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/sample-cdk.html)** — Tutorial zur Verwendung des AWS CDK mit der AWS Cloud9-Entwicklungsumgebung.

Weitere Informationen zu verwandten Themen rund um das AWS CDK finden Sie im Folgenden:
+  **[AWS CloudFormation Konzepte](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-whatis-concepts.html)** — Da das AWS CDK darauf ausgelegt ist, damit zu arbeiten, empfehlen wir Ihnen AWS CloudFormation, sich mit den wichtigsten AWS CloudFormation Konzepten vertraut zu machen und diese zu verstehen.
+  **[AWS Glossar](https://docs.aws.amazon.com/general/latest/gr/glos-chap.html)** — Definitionen der wichtigsten Begriffe, die überall verwendet werden. AWS

Weitere Informationen zu Tools im Zusammenhang mit dem AWS CDK, mit denen die Entwicklung und Bereitstellung serverloser Anwendungen vereinfacht werden kann, finden Sie im Folgenden:
+  **[AWS Serverloses Anwendungsmodell](https://aws.amazon.com/serverless/sam/)** — Ein Open-Source-Entwicklertool, das das Erstellen und Ausführen von serverlosen Anwendungen vereinfacht und verbessert. AWS
+  **[AWS Chalice](https://github.com/aws/chalice)** — Ein Framework zum Schreiben serverloser Apps in Python.