Kapazitätsanbieter - AWS Lambda

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.

Kapazitätsanbieter

Ein Kapazitätsanbieter ist die Grundlage für den Betrieb von Lambda Managed Instances. Es dient als Sicherheitsgrenze für Ihre Funktionen und definiert die Rechenressourcen, die Lambda in Ihrem Namen bereitstellt und verwaltet.

Wenn Sie einen Kapazitätsanbieter erstellen, geben Sie Folgendes an:

  • VPC-Konfiguration — Die Subnetze und Sicherheitsgruppen, in denen Instances ausgeführt werden

  • Berechtigungen — IAM-Rollen für Lambda zur Verwaltung von Ressourcen EC2

  • Instanzanforderungen (optional) — Einstellungen für Architektur und Instanztyp

  • Skalierungskonfiguration (optional) — So skaliert Lambda Ihre Instances

Kapazitätsanbieter als Sicherheitsgrenze verstehen

Kapazitätsanbieter dienen als Sicherheitsgrenze für Lambda-Funktionen innerhalb Ihrer VPC und ersetzen die Firecracker-basierte Isolierung. Funktionen werden in Containern innerhalb von Instances ausgeführt, aber Container bieten im Gegensatz zu Firecracker Micro keine starke Sicherheitsisolierung zwischen Funktionen. VMs

Wichtige Sicherheitskonzepte:

  • Kapazitätsanbieter: Die Sicherheitsgrenze, die Vertrauensstufen für Lambda-Funktionen definiert

  • Container-Isolierung: Container sind KEIN Sicherheitsanbieter — verlassen Sie sich nicht auf sie, wenn es um die Sicherheit zwischen nicht vertrauenswürdigen Workloads geht

  • Vertrauenstrennung: Trennen Sie Workloads, denen nicht gegenseitig vertraut wird, indem Sie unterschiedliche Kapazitätsanbieter verwenden

Erstellen eines Kapazitätsanbieters

Sie können einen Kapazitätsanbieter mithilfe der AWS CLI, der AWS Management Console oder erstellen AWS SDKs.

Verwenden von AWS CLI:

aws lambda create-capacity-provider \ --capacity-provider-name my-capacity-provider \ --vpc-config SubnetIds=subnet-12345,subnet-67890,subnet-11111,SecurityGroupIds=sg-12345 \ --permissions-config CapacityProviderOperatorRoleArn=arn:aws:iam::123456789012:role/MyOperatorRole \ --instance-requirements Architectures=x86_64 \ --capacity-provider-scaling-config ScalingMode=Auto

Erforderliche Parameter

CapacityProviderName

  • Ein eindeutiger Name für Ihren Kapazitätsanbieter

  • Muss innerhalb Ihres AWS Kontos eindeutig sein

VpcConfig

  • SubnetIds(erforderlich): Mindestens ein Subnetz, maximal 16. Verwenden Sie aus Gründen der Ausfallsicherheit Subnetze in mehreren Availability Zones

  • SecurityGroupIds(optional): Sicherheitsgruppen für Ihre Instances. Standardmäßig wird die VPC-Standardsicherheitsgruppe verwendet, falls nicht angegeben

PermissionsConfig

  • CapacityProviderOperatorRoleArn(erforderlich): IAM-Rolle, die es Lambda ermöglicht, EC2 Ressourcen in Ihrem Kapazitätsanbieter zu verwalten

Optionale Parameter

InstanceRequirements

Geben Sie die Architektur und die Instanztypen für Ihren Kapazitätsanbieter an:

  • Architekturen: Wählen Sie x86_64 oderarm64. Die Standardeinstellung ist x86_64

  • AllowedInstanceTypes: Geben Sie die zulässigen Instanztypen an. Beispiel: m5.8xlarge

  • ExcludedInstanceTypes: Geben Sie ausgeschlossene Instanztypen mithilfe von Platzhaltern an. Sie können nur einen von AllowedInstanceTypes oder angeben ExcludedInstanceTypes

Standardmäßig wählt Lambda die besten Instance-Typen für Ihren Workload aus. Wir empfehlen, Lambda Managed Instances die Instanztypen für Sie auswählen zu lassen, da eine Einschränkung der Anzahl möglicher Instanztypen zu einer geringeren Verfügbarkeit führen kann.

CapacityProviderScalingConfig

Konfigurieren Sie, wie Lambda Ihre Instances skaliert:

  • ScalingMode: Auf Auto für automatische Skalierung oder Manual manuelle Steuerung einstellen. Die Standardeinstellung ist Auto

  • Max. VCpu Anzahl: Maximale Anzahl von v CPUs für den Kapazitätsanbieter. Die Standardeinstellung ist 400.

  • ScalingPolicies: Definieren Sie Skalierungsrichtlinien für die Zielverfolgung für die CPU- und Speicherauslastung

KmsKeyArn

Geben Sie einen AWS KMS Schlüssel für die EBS-Verschlüsselung an. Standardmäßig wird der AWS verwaltete Schlüssel verwendet, falls nicht angegeben.

Tags

Fügen Sie Tags hinzu, um Ihre Kapazitätsanbieter zu organisieren und zu verwalten.

Verwaltung von Kapazitätsanbietern

Aktualisieren eines Kapazitätsanbieters

Sie können bestimmte Eigenschaften eines Kapazitätsanbieters mithilfe der UpdateCapacityProvider API aktualisieren.

aws lambda update-capacity-provider \ --capacity-provider-name my-capacity-provider \ --capacity-provider-scaling-config ScalingMode=Auto

Löschen eines Kapazitätsanbieters

Mithilfe der DeleteCapacityProvider API können Sie einen Kapazitätsanbieter löschen, wenn er nicht mehr benötigt wird.

aws lambda delete-capacity-provider \ --capacity-provider-name my-capacity-provider

Hinweis: Sie können keinen Kapazitätsanbieter löschen, an den Funktionsversionen angehängt sind.

Details zum Kapazitätsanbieter anzeigen

Rufen Sie mithilfe der GetCapacityProvider API Informationen über einen Kapazitätsanbieter ab.

aws lambda get-capacity-provider \ --capacity-provider-name my-capacity-provider

Staaten des Kapazitätsanbieters

Ein Kapazitätsanbieter kann sich in einem der folgenden Staaten befinden:

  • Ausstehend: Der Kapazitätsanbieter wird gerade erstellt

  • Aktiv: Der Kapazitätsanbieter ist einsatzbereit

  • Fehlgeschlagen: Die Erstellung des Kapazitätsanbieters ist fehlgeschlagen

  • Löschen: Der Kapazitätsanbieter wird gelöscht

Kontingente

  • Maximale Kapazitätsanbieter pro Konto: 1.000

  • Maximale Funktionsversionen pro Kapazitätsanbieter: 100 (kann nicht erhöht werden)

Best Practices

  1. Nach Vertrauensstufe trennen: Erstellen Sie verschiedene Kapazitätsanbieter für Workloads mit unterschiedlichen Sicherheitsanforderungen

  2. Verwenden Sie aussagekräftige Namen: Benennen Sie Kapazitätsanbieter, um deren Verwendungszweck und Vertrauensstufe eindeutig anzugeben (z. B.,,production-trusted) dev-sandbox

  3. Verwenden Sie mehrere Availability Zones: Geben Sie Subnetze über mehrere an, um eine hohe Verfügbarkeit AZs zu gewährleisten

  4. Lassen Sie Lambda Instance-Typen wählen: Sofern Sie keine spezifischen Hardwareanforderungen haben, lassen Sie Lambda die besten Instance-Typen für optimale Verfügbarkeit auswählen

  5. Nutzung überwachen: Wird verwendet AWS CloudTrail , um die Zuweisungen und Zugriffsmuster von Kapazitätsanbietern zu überwachen

Nächste Schritte