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)
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.
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.