Verwenden von Lambda mit Infrastructure as Code (IaC) - AWS Lambda

Verwenden von Lambda mit Infrastructure as Code (IaC)

Lambda-Funktionen werden selten isoliert ausgeführt. Stattdessen sind sie often Teil einer Serverless-Anwendung, zu der auch andere Ressourcen wie Datenbanken, Warteschlangen und Speicher gehören. Mit infrastructure as code (IaC) können Sie Ihre Bereitstellungsprozesse automatisieren, um ganze Serverless-Anwendungen mit vielen separaten AWS-Ressourcen schnell und wiederholbar bereitzustellen und zu aktualisieren. Dieser Ansatz beschleunigt Ihren Entwicklungszyklus, erleichtert die Konfigurationsverwaltung und stellt sicher, dass Ihre Ressourcen jedes Mal auf die gleiche Weise bereitgestellt werden.

IaC-Tools für Lambda

CloudFormation

CloudFormation ist der grundlegende IaC-Dienst von AWS. Sie können YAML- oder JSON-Vorlagen verwenden, um Ihre gesamte AWS-Infrastruktur, einschließlich Lambda-Funktionen, zu modellieren und bereitzustellen. CloudFormation bewältigt die Komplexität beim Erstellen, Aktualisieren und Löschen Ihrer AWS-Ressourcen.

AWS Serverless Application Model (AWS SAM)

AWS SAM ist ein Open-Source-Framework, das auf CloudFormation aufbaut. Es bietet eine vereinfachte Syntax für die Definition Serverless-Anwendungen. Verwenden Sie AWS SAM-Vorlagen, um Lambda-Funktionen, APIs, Datenbanken und Ereignisquellen schnell mit nur wenigen YAML-Zeilen bereitzustellen.

AWS Cloud Development Kit (AWS CDK)

Das CDK ist ein IaC-Ansatz, bei dem der Code an erster Stelle steht. Sie können Ihre Lambda-basierte Architektur mit TypeScript, JavaScript, Python, Java, C#/.Net oder Go definieren. 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. Das CDK generiert dann die zugrunde liegenden CloudFormation-Vorlagen für die Bereitstellung. Ein Beispiel für die Verwendung von Lambda mit CDK finden Sie unter Bereitstellen von Lambda-Funktionen mit AWS CDK.

Diagramm, das zeigt, wie AWS SAM und AWS CDK AWS-Ressourcen und Code mit CloudFormation einsetzen

AWS bietet außerdem einen Service namens AWS-Infrastruktur-Composer zur Entwicklung von IaC-Vorlagen mithilfe einer einfachen grafischen Oberfläche. Mit Infrastructure Composer entwerfen Sie eine Anwendungsarchitektur, indem Sie AWS-Services auf einer visuellen Zeichenfläche ziehen, gruppieren und verbinden. Infrastructure Composer erstellt dann eine AWS SAM-Vorlage oder eine CloudFormation-Vorlage aus Ihrem Entwurf, die Sie zur Bereitstellung Ihrer Anwendung verwenden können.

Im folgenden Abschnitt Verwenden von Lambda-Funktionen in AWS SAM und Infrastructure Composer verwenden Sie Infrastructure Composer, um eine Vorlage für eine Serverless-Anwendung zu entwickeln, die auf einer vorhandenen Lambda-Funktion basiert.