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.
Verwenden des Lambda-Metadaten-Endpunkts
Mit dem Lambda-Metadaten-Endpunkt können Ihre Funktionen ermitteln, in welcher Availability Zone (AZ) sie ausgeführt werden. Sie können dies verwenden, um die Latenz zu optimieren, indem Sie sie an Same-AZ-Ressourcen wie Amazon ElastiCache - und Amazon RDS-Endpunkte weiterleiten, und um Resilienzmuster zu implementieren. AZ-aware
Der Endpunkt gibt Metadaten in einem einfachen JSON-Format über eine Localhost-HTTP-API innerhalb der Ausführungsumgebung zurück und ist sowohl für Laufzeiten als auch für Erweiterungen zugänglich.
Erste Schritte
Powertools for AWS Lambda bietet ein Hilfsprogramm für den Zugriff auf den Lambda-Metadaten-Endpunkt in Python TypeScript, Java und.NET. Das Hilfsprogramm speichert die Antwort nach dem ersten Aufruf im Cache und verarbeitet SnapStart die Cache-Invalidierung automatisch.
Verwenden Sie das Metadaten-Hilfsprogramm Powertools for AWS Lambda oder rufen Sie den Metadaten-Endpunkt direkt auf
Grundlegendes zu Verfügbarkeitszone-IDs
AZ-IDs (z. B.use1-az1) beziehen sich in allen AWS Konten immer auf denselben physischen Standort, während AZ-Namen (z. B.us-east-1a) in bestimmten Regionen in jedem AWS
Konto einer anderen physischen Infrastruktur zugeordnet werden können. Weitere Informationen finden Sie unter AZ-IDs für kontoübergreifende Konsistenz.
Konvertierung der AZ-ID in den AZ-Namen:
Verwenden Sie die Amazon DescribeAvailabilityZones EC2-API, um eine AZ-ID in einen AZ-Namen zu konvertieren. Um diese API zu verwenden, fügen Sie die ec2:DescribeAvailabilityZones Berechtigung der Ausführungsrolle Ihrer Funktion hinzu.
API-Referenz
Umgebungsvariablen
Lambda legt in jeder Ausführungsumgebung automatisch die folgenden Umgebungsvariablen fest:
-
AWS_LAMBDA_METADATA_API— Die Metadaten-Serveradresse im Format{ipv4_address}:{port}(z. B.169.254.100.1:9001). -
AWS_LAMBDA_METADATA_TOKEN— Ein eindeutiges Authentifizierungstoken für die aktuelle Ausführungsumgebung. Lambda generiert dieses Token automatisch bei der Initialisierung. Nehmen Sie es in alle Metadaten-API-Anfragen auf.
Endpoint
GET http://${AWS_LAMBDA_METADATA_API}/2026-01-15/metadata/execution-environment
Anforderung
Erforderliche Header:
-
Authorization— Der Token-Wert aus derAWS_LAMBDA_METADATA_TOKENUmgebungsvariablen mit dem Bearer-Schema:.Bearer <token>Diese tokenbasierte Authentifizierung bietet umfassenden Schutz vor Sicherheitslücken im Bereich Server-Side Request Forgery (SSRF). Jede Ausführungsumgebung erhält bei der Initialisierung ein einzigartiges, zufällig generiertes Token.
Antwort
Status: 200 OK
Content-Type: application/json
Cache-Control: private, max-age=43200, immutable
Die Antwort ist innerhalb einer Ausführungsumgebung unveränderlich. Clients sollten die Antwort zwischenspeichern und die Cache-Control TTL respektieren. Bei SnapStart Funktionen wird die TTL während der Initialisierung reduziert, sodass die Clients die Metadaten nach der Wiederherstellung aktualisieren, wenn sich die Ausführungsumgebung möglicherweise in einer anderen AZ befindet. Wenn Sie Powertools verwenden, werden Caching und SnapStart Invalidierung automatisch durchgeführt.
Fließtext:
{ "AvailabilityZoneID": "use1-az1" }
Das AvailabilityZoneID Feld enthält den eindeutigen Bezeichner für die Availability Zone, in der die Ausführungsumgebung ausgeführt wird.
Anmerkung
In zukünftigen Updates werden der Antwort möglicherweise weitere Felder hinzugefügt. Kunden sollten unbekannte Felder ignorieren und nicht scheitern, wenn neue Felder erscheinen.
Fehlermeldungen
-
401 Unauthorized — Der
AuthorizationHeader fehlt oder enthält ein ungültiges Token. Vergewissern Sie sich, dass Sie die Prüfung bestehenBearer ${AWS_LAMBDA_METADATA_TOKEN}. -
405-Methode nicht zulässig — Die Anforderungsmethode ist nicht zulässig
GET. -
500 Interner Serverfehler — Server-side Verarbeitungsfehler.