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.
Infrastruktur als Code (IaC)
Mit Infrastructure as Code (IaC) können Sie die Bereitstellung und Verwaltung Ihrer AWS Ressourcen, einschließlich serverloser Anwendungen, automatisieren. Mit IaC können Sie Ihre Infrastruktur mithilfe von Code definieren, wodurch es einfacher wird, Ihre Bereitstellungen zu versionieren, gemeinsam zu nutzen und zu replizieren. Dieser Ansatz hilft Ihnen:
-
Beschleunigen Sie Ihren Entwicklungszyklus
-
Vereinfachen Sie das Konfigurationsmanagement
-
Verbessern Sie die Zuverlässigkeit und Konsistenz Ihrer Bereitstellungen
IaC-Tools für serverlose Anwendungen AWS
AWS bietet mehrere IaC-Tools, mit denen Sie Ihre Cloud-Ressourcen erstellen, bereitstellen und verwalten können. In diesem Abschnitt wird erklärt, wie es in dieses Ökosystem AWS SAM passt und mit anderen AWS IaC-Tools zusammenarbeitet.
- AWS CloudFormation
-
Mithilfe von AWS CloudFormation
YAML- oder JSON-Vorlagen können Sie Ihre gesamte AWS Infrastruktur modellieren und bereitstellen. AWS CloudFormation erledigt das Erstellen, Aktualisieren und Löschen von Ressourcen automatisch. Wenn Sie AWS SAM Anwendungen bereitstellen, AWS CloudFormation verarbeitet es die transformierten Vorlagen, um Ihre Ressourcen zu erstellen und zu verwalten. - AWS Serverless Application Model (AWS SAM)
-
AWS SAM hilft Ihnen bei der Erstellung serverloser Anwendungen mit vereinfachter Syntax zur Definition serverloser Ressourcen. Sie können AWS SAM Vorlagen verwenden, um Lambda-Funktionen APIs, Datenbanken und Ereignisquellen mithilfe einer präzisen YAML-Syntax bereitzustellen. AWS SAM wandelt diese Vorlagen während der Bereitstellung in AWS CloudFormation Vorlagen um.
Anmerkung
Das AWS SAM Unternehmen ist zwar auf serverlose Anwendungen spezialisiert, Sie können jedoch beliebige AWS CloudFormation Ressourcentypen in Ihren AWS SAM Vorlagen verwenden. Dies gibt Ihnen die Flexibilität, Ressourcen, die nicht serverlos sind, bei Bedarf einzubeziehen.
- AWS Cloud Development Kit (AWS CDK)
-
Mit AWS CDK
können Sie Ihre serverlose Infrastruktur mit vertrauten Programmiersprachen wie Python TypeScript, Java, C#/.Net oder Go definieren. Sie können Programmierkonstrukte wie Schleifen und Bedingungen verwenden, um Ihre Infrastruktur zu definieren und Vorlagen für die Bereitstellung zu generieren. AWS CDK AWS CloudFormation Sie können das verwenden AWS SAMCLI, um Anwendungen, die mit erstellt wurden, lokal zu testen und zu debuggen. AWS CDK Weitere Informationen finden Sie unter Lokales Testen von CDK-Anwendungen.
Vergleich der IaC-Tools für serverlose Anwendungen
Bei der Auswahl eines IaC-Tools für Ihre serverlosen Anwendungen sollten Sie die Präferenzen Ihres Teams, die Projektanforderungen und die bestehenden Workflows berücksichtigen. In der folgenden Tabelle werden die wichtigsten Merkmale von AWS IaC-Tools für die serverlose Entwicklung verglichen:
Tool |
Primäre Verwendung |
Am besten für |
Funktioniert mit AWS SAM |
Wann soll ich wählen |
---|---|---|---|---|
AWS CloudFormation |
Verwaltung einer komplexen AWS Infrastruktur |
Anwendungen, die eine detaillierte Kontrolle der AWS Ressourcen erfordern |
AWS SAM Vorlagen werden während der Bereitstellung in AWS CloudFormation Vorlagen umgewandelt |
Für eine detaillierte Kontrolle über Ressourcen, die nicht serverlos sind |
AWS SAM |
Serverlose Anwendungsentwicklung |
Teams, die serverlose Anwendungen mit Lambda erstellen |
Native Funktionalität |
Wenn Sie sich hauptsächlich auf serverlose Architekturen mit Lambda-Funktionen, API Gateway und anderen serverlosen APIs Ressourcen konzentrieren |
AWS CDK |
Definition der Infrastruktur mithilfe von Programmiersprachen |
Teams, die typisierte Sprachen und einen Code-First-Ansatz bevorzugen |
Generieren Sie AWS SAM Vorlagen und verwenden Sie sie zum Testen AWS SAMCLI |
Wenn Sie eine programmatische Infrastrukturdefinition oder eine komplexe Ressourcenkonfigurationslogik benötigen |
Anmerkung
Dieser Leitfaden konzentriert sich zwar auf AWS native IaC-Tools, Terraform ist jedoch eine weitere beliebte IaC-Lösung, mit der serverlose Anwendungen definiert werden können. Das AWS SAMCLI unterstützt das lokale Testen von Lambda-Funktionen, die in Terraform definiert sind. Weitere Informationen finden Sie unter AWS SAMCLITerraformUnterstützung.
Weitere Informationen
-
Weitere Informationen zu den DevOps Methoden finden Sie AWS unter Einführung in DevOps AWS
-
Informationen zur Verwendung von Lambda mit verschiedenen IaC-Tools finden Sie unter Verwenden von Lambda mit Infrastruktur als Code (IaC)