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.
Verwendung von Lambda mit Kubernetes
Sie können Lambda-Funktionen mit der Kubernetes-API mithilfe von AWS-Controllern für Kubernetes (ACK)
AWS-Controller für Kubernetes (ACK)
Sie können ACK zum Bereitstellen und Verwalten von AWS-Ressourcen über die Kubernetes-API verwenden. Über ACK AWS bietet benutzerdefinierte Open-Source-Controller für AWS Services wie Lambda, Amazon Elastic Container Registry (Amazon ECR), Amazon Simple Storage Service (Amazon S3) und Amazon SageMaker. Jeder unterstützte AWS-Service verfügt über einen eigenen benutzerdefinierten Controller. Installieren Sie in Ihrem Kubernetes-Cluster einen Controller für jeden AWS-Service, den Sie verwenden möchten. Erstellen Sie anschließend eine benutzerdefinierte Ressourcendefinition (Custom Resource Definition, CRD)
Wir empfehlen die Verwendung von Helm 3.8 oder höher
Nachdem Sie die benutzerdefinierte ACK-Ressource erstellt haben, können Sie sie wie jedes andere integrierte Kubernetes-Objekt verwenden. Beispielsweise können Sie Lambda-Funktionen mit Ihren bevorzugten Kubernetes-Toolchains, einschließlich kubectl
Hier sind einige Beispielanwendungsfälle für die Bereitstellung von Lambda-Funktionen über ACK:
-
Ihr Unternehmen verwendet rollenbasierte Zugriffssteuerung (RBAC)
und IAM-Rollen für Service-Konten, um Berechtigungsgrenzen zu erstellen. Mit ACK können Sie dieses Sicherheitsmodell für Lambda wiederverwenden, ohne neue Benutzer und Richtlinien erstellen zu müssen. -
Ihre Organisation verfügt über einen DevOps Prozess zur Bereitstellung von Ressourcen in einem Amazon Elastic Kubernetes Service (Amazon EKS)-Cluster mithilfe von Kubernetes-Manifesten. Mit ACK können Sie ein Manifest verwenden, um Lambda-Funktionen bereitzustellen, ohne eine separate Infrastruktur in Form von Code-Vorlagen zu erstellen.
Weitere Informationen zur Verwendung von ACK finden Sie im Lambda-Tutorial in der ACK-Dokumentation
Crossplane
Crossplane
Mit Crossplane können Sie Lambda-Funktionen mit Ihren bevorzugten Kubernetes-Toolchains wie kubectl
-
Ihr Unternehmen möchte Compliance durchsetzen, indem es sicherstellt, dass Lambda-Funktionen über die richtigen Tags verfügen. Plattformteams können Crossplane Compositions
verwenden, um diese Richtlinie durch API-Abstraktionen zu definieren. Entwickler können diese Abstraktionen dann verwenden, um Lambda-Funktionen mit Tags bereitzustellen. -
Ihr Projekt verwendet GitOps mit Kubernetes. In diesem Modell gleicht Kubernetes kontinuierlich das Git-Repository (gewünschter Status) mit den im Cluster ausgeführten Ressourcen (aktueller Status) ab. Wenn es Unterschiede gibt, nimmt der GitOps Prozess automatisch Änderungen am Cluster vor. Sie können GitOps mit Kubernetes verwenden, um Lambda-Funktionen über Crossplane bereitzustellen und zu verwalten, indem Sie vertraute Kubernetes-Tools und -Konzepte wie CRDs
und Controller verwenden. https://kubernetes.io/docs/concepts/architecture/controller/
Weitere Informationen zur Verwendung von Crossplane mit Lambda finden Sie hier:
-
AWS-Blueprints für Crossplane
: Dieses Repository enthält Beispiele für die Verwendung von Crossplane zum Bereitstellen von AWS-Ressourcen, einschließlich Lambda-Funktionen. Anmerkung
AWS-Blueprints für Crossplane befinden sich in der aktiven Entwicklung und sollten nicht in der Produktion verwendet werden.
-
Bereitstellung von Lambda mit Amazon EKS und Crossplane
: Dieses Video demonstriert ein fortgeschrittenes Beispiel für das Bereitstellen einer Serverless AWS-Architektur mit Crossplane, wobei das Design sowohl aus der Entwickler- als auch aus der Plattformperspektive untersucht wird.