Wie kann ich Probleme mit VPC-Endpunkten in der Netzwerkkonfiguration meiner privaten Elastic Beanstalk-Umgebung beheben?
Ich möchte Netzwerkprobleme in meiner vollständig privaten AWS Elastic Beanstalk-Umgebung beheben.
Kurzbeschreibung
Vollständig private Umgebungen haben die folgenden Einstellungen und ermöglichen den Zugriff auf deine Webanwendung nur von derselben Amazon Virtual Private Cloud (Amazon VPC) aus.
- Sichtbarkeit des Load Balancers: Privat
- Load Balancer-Subnetze: Beide private Subnetze
- Öffentliche IP der Instance: Deaktiviert
- Instance-Subnetze: Beide private Subnetze
Die gesamte Kommunikation innerhalb der VPC erfolgt über konfigurierte VPC-Endpunkte. Außerdem erfolgt die gesamte Kommunikation innerhalb der VPC über die lokale Route in der Routing-Tabelle. Im Folgenden findest du häufig auftretende Fehler, die aufgrund von Netzwerkkonfigurationen in der Umgebung auftreten können:
- Die Amazon Elastic Compute Cloud (Amazon EC2)-Instances konnten nicht mit Elastic Beanstalk kommunizieren. Ein Kommunikationsfehler ist auf Konfigurationsprobleme mit der VPC oder auf eine ausgefallene EC2-Instance zurückzuführen. Überprüfe deine VPC-Konfiguration und versuche erneut, die Umgebung zu starten.
- Die Instances haben nicht innerhalb der zulässigen Befehls-Timeout-Zeit geantwortet.
Lösung
Wenn du eine vollständig private Elastic Beanstalk-Umgebung erstellst, stelle sicher, dass du die folgenden Konfigurationen eingerichtet hast:
- Du benötigst eine VPC mit mindestens zwei privaten Subnetzen in verschiedenen Availability Zones.
- Für die VPC müssen DNS-Hostnamen und DNS-Auflösungen aktiviert sein. Wenn diese aktiviert sind, wird in deiner VPC ein DNS-Eintrag hinzugefügt, der den Endpunkt des öffentlichen Services dem VPC-Endpunkt der Schnittstelle zuordnet.
- Du musst VPC-Endpunkte erstellen, damit AWS-Services außerhalb der VPC und die Instance innerhalb der VPC über diese Endpunkte kommunizieren können.
VPC-Endpunkte überprüfen
Eine standardmäßige Elastic Beanstalk-Umgebung muss für eine erfolgreiche Erstellung über die folgenden VPC-Endpunkte verfügen:
- com.amazonaws.your-region.elasticbeanstalk (Endpunkt der Elastic Beanstalk-Schnittstelle)
- com.amazonaws.your-region.elasticbeanstalk-health (Endpunkt der Elastic Beanstalk-Zustandsschnittstelle)
- ccom.amazonaws.your-region.cloudformation (Endpunkt der AWS CloudFormation-Schnittstelle)
- com.amazonaws.your-region.logs (Endpunkt der Protokoll-Schnittstelle)
- com.amazonaws.your-region.sqs (Endpunkt der Amazon Simple Queue Service (Amazon SQS)-Schnittstelle)
- com.amazonaws.your-region.s3 (Gateway-Endpunkt des Amazon Simple Storage Service (Amazon S3))
Umgebungen, die auf Docker ausgeführt werden (wird auf 64-Bit-Amazon Linux 2 ausgeführt), müssen über die folgenden zusätzlichen VPC-Endpunkte verfügen:
- com.amazonaws.your-region.ecr.dkr
- com.amazonaws.your-region.ecr.api
Umgebungen, die auf Amazon Elastic Container Service (Amazon ECS) ausgeführt werden (wird auf 64-Bit-Amazon Linux 2 ausgeführt), müssen über die folgenden zusätzlichen VPC-Endpunkte verfügen:
- com.amazonaws.your-region.ecs
- com.amazonaws.your-region.ecr.api
- com.amazonaws.your-region.ecr.dkr
Hinweis: Stelle ein privates Docker-Image bereit, um sicherzustellen, dass die Docker- und Multi-Docker-Umgebung ordnungsgemäß funktioniert.
Sicherheitsgruppe überprüfen
Beim Erstellen des Schnittstellen-VPC-Endpunkts musst du die Subnetze und die Sicherheitsgruppe für deinen VPC-Endpunkt auswählen. Stelle sicher, dass du private Subnetze und die Sicherheitsgruppe mit den entsprechenden Regeln für eingehenden Datenverkehr auswählst.
Die ** Sicherheitsgruppe, die an die Schnittstellen-VPC-Endpunkte angehängt ist**, muss eine Regel für eingehenden Datenverkehr für Port 443 (HTTPS) haben:
Regel für eingehenden Datenverkehr:
Typ | Protokoll | Portbereich | Quelle |
HTTPS | TCP | 443 | IP-Adresse des Clients (siehe Hinweis) |
Hinweis: Um eingehenden Datenverkehr über den VPC-Endpunkt zu schützen, solltest du erwägen, nur die IP-Adresse oder das Netzwerk des Clients in der Quelle anzugeben.
Stelle außerdem sicher, dass die Sicherheitsgruppe, die der Instance zugeordnet ist, HTTP-Datenverkehr aus der Sicherheitsgruppe des Load Balancers zulässt:
Regel für eingehenden Datenverkehr:
Typ | Protokoll | Portbereich | Quelle |
HTTP | TCP | 80 | Sicherheitsgruppe des Load Balancers |
Stelle sicher, dass die Sicherheitsgruppe, die dem Load Balancer zugeordnet ist, den gesamten HTTP-Datenverkehr in der Regel für eingehenden Datenverkehr zulässt:
Regel für eingehenden Datenverkehr:
Typ | Protokoll | Portbereich | Quelle |
HTTP | TCP | 80 | 0.0.0.0/0 |
Hinweis: Du musst den ausgehenden Datenverkehr in keiner der vorherigen Sicherheitsgruppen einschränken.
Nach Routing-Tabelleneinträgen suchen
Beim Erstellen von Gateway-Endpunkten hast du die Möglichkeit, eine Routing-Tabelle auszuwählen. Stelle sicher, dass du die Routing-Tabelle auswählst, die dem privaten Subnetz der VPC zugeordnet ist. Die Routing-Tabelle, die dem privaten Subnetz zugeordnet ist, muss eine Route für jeden Gateway-VPC-Endpunkt enthalten. Beispielsweise benötigst du eine Route für jeden Gateway-VPC-Endpunkt, der Amazon Simple Storage Service (Amazon S3) oder Amazon DynamoDB zugeordnet ist.
Einträge in der Routing-Tabelle:
Zielort | Ziel |
172.xx.x.0/16 | lokal |
pl-63a5xxx | vpce-04xxx |
Überprüfung der VPC-Endpunktrichtlinien
Die VPC-Endpunktrichtlinien müssen es der Elastic Beanstalk-Umgebung ermöglichen, privat mit dem Service zu kommunizieren. Wenn du eine Schnittstelle oder einen Gateway-Endpunkt erstellst, kannst du eine Endpunktrichtlinie anhängen. Die Endpunktrichtlinie steuert, welche AWS-Prinzipale den VPC-Endpunkt verwenden können, um auf den Endpunktservice zuzugreifen. Zu den AWS-Prinzipalen gehören AWS-Konten, AWS Identity and Access Management (IAM, Identitäts- und Zugriffsmananagement)-Benutzer und IAM-Rollen. Wenn du beim Erstellen eines Endpunkts keine Endpunktrichtlinie angibst, hat der Endpunkt standardmäßig Vollzugriff.
Im Folgenden findest du ein Beispiel für eine Mindestrichtlinie für S3-Gateway-VPC-Endpunkte, die für einen S3-Endpunkt bei der Arbeit mit Elastic Beanstalk erforderlich ist.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EBBucketAccess", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:PutObjectAcl", "s3:DeleteObject", "s3:PutBucketPolicy", "s3:PutObjectVersionAcl" ], "Resource": [ "arn:aws:s3:::elasticbeanstalk-*", "arn:aws:s3:::elasticbeanstalk-*/*", "arn:aws:s3:::cloudformation*/*" ] } ] }
Ähnliche Informationen
Über einen Schnittstellen-VPC-Endpunkt auf einen AWS-Service zugreifen
- Themen
- Kalkulation
- Sprache
- Deutsch

Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 7 Monaten
- AWS OFFICIALAktualisiert vor einem Jahr