Stellen Sie mithilfe von VPC Lattice eine Connect zu privaten Ressourcen in Ihrer VPC her
Amazon Bedrock AgentCore unterstützt private Konnektivität zu Ressourcen, die in Ihrer AWS VPC gehostet werden, oder zu lokalen Umgebungen, die mit Ihrer VPC verbunden sind, wie private MCP-Server, interne REST-APIs oder Datenbanken, ohne diese Dienste dem öffentlichen Internet zugänglich zu machen.
Private Konnektivität wird mithilfe von Amazon VPC Lattice-Ressourcen-Gateways und Ressourcenkonfigurationen hergestellt. Einzelheiten zu den beiden unterstützten Modi (verwaltetes und selbstverwaltetes Lattice) finden Sie unter Unterstützte VPC-Ausgangsmodi.
Themen
Die wichtigsten Konzepte
- Ressourcen-Gateway
-
Ein Amazon VPC Lattice Resource Gateway ist der Zugangspunkt in Ihre VPC. Es ist mit einem oder mehreren Subnetzen und Sicherheitsgruppen in Ihrer VPC verknüpft und dient als Netzwerkeingangspunkt für den Datenverkehr von. AgentCore Wenn Sie Managed Lattice verwenden, AgentCore erstellt und verwaltet diese Ressource in Ihrem Namen.
- Konfiguration der Ressourcen
-
Eine Ressourcenkonfiguration stellt einen bestimmten privaten Endpunkt — eine IP-Adresse oder einen DNS-Namen — innerhalb Ihrer VPC dar. Sie ist an ein Ressourcen-Gateway angeschlossen und definiert, welche Ressource erreicht AgentCore werden kann. Wenn Sie Managed Lattice verwenden, AgentCore erstellt diese Ressource in Ihrem Namen im AgentCore Dienstkonto.
- Zuordnung der Ressourcen im Servicenetzwerk
-
Eine Dienstnetzwerk-Ressourcenzuordnung verbindet eine Ressourcenkonfiguration mit dem AgentCore Dienstnetzwerk, sodass der AgentCore Dienst Ihren privaten Endpunkt aufrufen kann. AgentCore erstellt und verwaltet diese Zuordnung immer in Ihrem Namen, unabhängig davon, ob Sie Managed Lattice oder selbstverwaltetes Lattice verwenden.
- Routing-Domäne
-
Ein optionales Feld, das eine Zwischendomäne angibt, die als Ressourcenkonfigurationsdomäne anstelle der eigentlichen Zieldomäne AgentCore verwendet wird. Dies ist nützlich, wenn Sie den Datenverkehr über eine Zwischenkomponente wie einen VPC-Endpunkt oder einen internen Load Balancer weiterleiten möchten — zum Beispiel, um mehrere private API-Gateways hinter einem einzigen VPC-Endpunkt zu konsolidieren und so die Anzahl der Ressourcenkonfigurationen und die damit verbundenen Kosten zu reduzieren. Der AgentCore Dienst ruft weiterhin die eigentliche Zieldomäne mithilfe von SNI Override auf. Weitere Informationen finden Sie unter Weiterleiten von Datenverkehr über eine Zwischendomäne.
Unterstützte Amazon Bedrock-Services AgentCore
Die folgenden Amazon AgentCore Bedrock-Services unterstützen VPC-Egress mit VPC Lattice:
- AgentCore Gateway
-
AgentCore Gateway unterstützt private Endpunkte für MCP-Server- und OpenAPI-Zieltypen. Einzelheiten zur Konfiguration des VPC-Ausgangs für jeden Zieltyp finden Sie unter Amazon Bedrock AgentCore Gateway VPC-Ausgang für Gateway-Ziele konfigurieren.
- AgentCore Identität
-
AgentCore Identity unterstützt private Endpunkte für die Verbindung zu VPC-gehosteten OAuth 2.0-Identitätsanbietern sowohl für eingehende JWT-Autorisierung als auch für ausgehende OAuth-Anmeldeinformationen. Einzelheiten finden Sie unter Connect zu privaten Identitätsanbietern herstellen.
Unterstützte VPC-Ausgangsmodi
Amazon Bedrock AgentCore unterstützt zwei Modi für die Konfiguration der VPC-Lattice-Konnektivität:
-
Verwaltete VPC-Ressourcen — Amazon Bedrock AgentCore erstellt und verwaltet das VPC Lattice-Ressourcen-Gateway und die Ressourcenkonfiguration in Ihrem Namen. Sie stellen Ihre VPC, Subnetze und optionale Sicherheitsgruppen bereit. Dies ist der einfachere Ansatz für kontointerne VPC-Konnektivität, die sich in bestehende Netzwerkarchitekturen wie Hub-and-Spoke einfügt.
Anmerkung
Sie benötigen keine VPC Lattice IAM-Berechtigungen, SCP-Änderungen oder zusätzliche Genehmigungsprozesse, um diese Option zu verwenden. Amazon Bedrock AgentCore verwaltet alle VPC Lattice-Ressourcen in Ihrem Namen.
-
Self-managed Lattice-Ressourcen — Sie erstellen und verwalten das VPC Lattice-Ressourcen-Gateway und die Ressourcenkonfiguration selbst. Dieser Ansatz bietet verbesserte Steuerung und Transparenz: Sie können genau sehen, welche Dienste mit welchen Domänen verbunden sind, wer Zugriff hat, und Verbindungen auf detaillierter Ebene widerrufen. Es ermöglicht auch direkte kontenübergreifende Konnektivität über AWS RAM, ohne dass VPC-Peering oder Transit-Gateways erforderlich sind.
In der folgenden Tabelle sind die wichtigsten Unterschiede zusammengefasst:
| Dimension | Verwaltete VPC-Ressourcen | Self-managed Lattice-Ressourcen |
|---|---|---|
|
Zusätzliche Abhängigkeit vom Dienst |
Kein VPC Lattice-Onboarding oder Allowlisting erforderlich. VPC Lattice wird intern von Amazon Bedrock AgentCore als Implementierungsdetail verwendet. Sie benötigen keine VPC Lattice IAM-Richtlinien, SCP-Änderungen oder zusätzliche Genehmigungsverfahren. Sie benötigen lediglich standardmäßige Amazon EC2 EC2-Berechtigungen und die Möglichkeit, eine serviceverknüpfte Rolle zu erstellen. |
Ja. Sie erstellen und verwalten VPC Lattice-Ressourcen direkt, wofür VPC Lattice IAM-Berechtigungen erforderlich sind (z. B.,, |
|
Verwaltung und Transparenz |
Die einzige Ressource in Ihrem Konto ist ein Ressourcen-Gateway, das quasi eine Netzwerkschnittstelle (ENI) in Ihrer VPC ist. Dies ist eine schreibgeschützte Ressource, die vollständig von Amazon Bedrock verwaltet wird. Sie AgentCore können sie nicht ändern, konfigurieren oder mit ihr interagieren. |
Vollständiger Einblick in Ressourcen-Gateways, Ressourcenkonfigurationen, Service-Netzwerkzuordnungen und verbundene Domänen. Sie besitzen und verwalten alle Ressourcen und können Verbindungen prüfen und den Zugriff auf detaillierter Ebene widerrufen. |
|
Komplexität |
Einfach — stellen Sie VPC, Subnetze und Sicherheitsgruppen bereit. Amazon Bedrock AgentCore kümmert sich um den Rest. |
Fortgeschritten — Sie erstellen und verwalten VPC Lattice-Ressourcen-Gateways und Ressourcenkonfigurationen selbst. |
|
Cross-account Konnektivität |
Nicht unterstützt Verwendung mit vorhandenen Netzwerkarchitekturen wie Hub-and-Spoke (VPC-Peering oder AWS Transit Gateway) für konto- oder vPC-Szenarien. |
AWS Wird über RAM unterstützt. Ermöglicht direkte kontenübergreifende Konnektivität, ohne dass VPC-Peering oder Transit-Gateways erforderlich sind. |
|
Preise für VPC Lattice |
Nur Datenverarbeitungsgebühren (pro GB, das über das Resource Gateway verarbeitet wird). |
Stundengebühr pro VPC-Ressource, die zu einem Servicenetzwerk hinzugefügt wird, zuzüglich Datenverarbeitungsgebühren (pro GB). |
|
Lebenszyklus einer Ressource |
Amazon Bedrock AgentCore erstellt, verwendet und löscht Ressourcen-Gateways in Ihrem Namen. |
Sie besitzen den gesamten Lebenszyklus der Ressourcen-Gateways und Ressourcenkonfigurationen. |
|
IP-Verbrauch und -Durchsatz |
Jedes verwaltete Ressourcen-Gateway verbraucht 1 IP-Adresse pro Subnetz. Dies ist nicht konfigurierbar. |
Bei Verwendung mit Amazon Bedrock AgentCore wird 1 IP-Adresse pro Subnetz verbraucht. Wenn es auch an andere VPC-Lattice-Dienstnetzwerke angeschlossen ist, verbraucht es zusätzliche IPs basierend auf dem |
Preisinformationen zu VPC Lattice finden Sie unter Amazon VPC
Option 1: Verwaltete VPC-Ressourcen
Mit verwalteten VPC-Ressourcen geben Sie Ihre VPC-, Subnetz- und optionale Sicherheitsgruppeninformationen an. AgentCore kümmert sich in Ihrem Namen um die Erstellung und das Lebenszyklusmanagement des VPC Lattice Resource Gateways und die Ressourcenkonfiguration. Das Managed Resource Gateway ist ein Wrapper für ENIs in Ihrer VPC. Sie können es nicht ändern, konfigurieren oder mit ihm interagieren. AgentCore besitzt seinen gesamten Lebenszyklus, einschließlich Erstellung, Wiederverwendung und Löschung.
Anmerkung
Sie benötigen keine VPC Lattice IAM-Berechtigungen, SCP-Änderungen oder zusätzliche Genehmigungsverfahren, um verwaltete VPC-Ressourcen zu verwenden, da Amazon Bedrock Lattice als interne Abhängigkeit AgentCore verwendet und alle Lattice-Ressourcen-Gateways für den Kunden schreibgeschützt sind.
AgentCore verwendet die AWSServiceRoleForBedrockAgentCoreGatewayNetwork dienstverknüpfte Rolle, um VPC Lattice-Ressourcen-Gateways in Ihrem Konto zu erstellen und zu verwalten. Diese Rolle wird automatisch erstellt, wenn Sie zum ersten Mal ein Gateway-Ziel mit einem verwalteten privaten Endpunkt erstellen. Weitere Informationen zu dieser Rolle finden Sie unter Service-verknüpfte Gateway-Rolle.
Voraussetzungen
Bevor Sie ein Gateway-Ziel mit einem verwalteten privaten Endpunkt erstellen, stellen Sie Folgendes sicher:
-
Ihre private Ressource (MCP-Server oder REST-API) läuft und ist innerhalb Ihrer VPC zugänglich.
-
Sie haben mindestens ein Subnetz in Ihrer VPC, das Netzwerkzugriff auf die private Ressource hat.
-
Ihre Sicherheitsgruppen lassen eingehenden Verkehr auf dem Port zu, der von Ihrer privaten Ressource verwendet wird (normalerweise Port 443 für HTTPS).
-
Ihr IAM-Prinzipal verfügt über die erforderlichen
iam:CreateServiceLinkedRoleBerechtigungenbedrock-agentcore.amazonaws.com, sodass er die dienstbezogene Rolle in Ihrem Namen erstellen AgentCore kann, falls sie noch nicht existiert. Informationen zur erforderlichen IAM-Richtlinie finden Sie unter Service-verknüpfte Gateway-Rolle. -
Ihr IAM-Principal verfügt über die folgenden Amazon EC2 EC2-Berechtigungen, die für AgentCore die Einrichtung des VPC Lattice Resource Gateways in Ihrer VPC erforderlich sind:
-
ec2:CreateNetworkInterface -
ec2:DescribeVpcs -
ec2:DescribeSecurityGroups -
ec2:DescribeSubnets
-
-
Wenn Ihre private Ressource ein TLS-Zertifikat verwendet, das von einer privaten Zertifizierungsstelle ausgestellt wurde, können Sie einen internen Application Load Balancer mit einem öffentlichen ACM-Zertifikat davor platzieren. Weitere Informationen finden Sie unter Problemumgehung für private Zertifikate: ALB.
Erstellen Sie ein Ziel mit einem verwalteten privaten Endpunkt
Um eine Ressource mit einem verwalteten privaten Endpunkt zu erstellen, fügen Sie den privateEndpoint.managedVpcResource Block in Ihre Erstellungsanforderung ein.
{ ... "privateEndpoint": { "managedVpcResource": { "vpcIdentifier": "vpc-0abc123def456", "subnetIds": ["subnet-0abc123", "subnet-0def456"], "endpointIpAddressType": "IPV4", "securityGroupIds": ["sg-0abc123def"] } }, ... }
Der managedVpcResource Block akzeptiert die folgenden Felder:
-
vpcIdentifier(Erforderlich) -
Die ID der VPC, die Ihre private Ressource enthält.
-
subnetIds(Erforderlich) -
Eine Liste von Subnetz-IDs innerhalb der VPC, in der das Ressourcen-Gateway platziert wird.
-
endpointIpAddressType(Erforderlich) -
Der IP-Adresstyp für die Ressourcenkonfiguration. Gültige Werte sind
IPV4undIPV6. -
securityGroupIds(optional) -
Eine Liste von Sicherheitsgruppen-IDs, die dem Ressourcen-Gateway zugeordnet werden sollen. Falls nicht angegeben, wird die Standardsicherheitsgruppe für die VPC verwendet.
-
routingDomain(optional) -
Eine Zwischendomäne, die als Endpunkt für die Ressourcenkonfiguration anstelle der eigentlichen Zieldomäne verwendet werden soll. Verwenden Sie diese Option, wenn Sie den Datenverkehr über eine Zwischenkomponente wie einen VPC-Endpunkt oder einen internen Load Balancer weiterleiten möchten. Weitere Informationen finden Sie unter Weiterleiten von Datenverkehr über eine Zwischendomäne.
-
tags(optional) -
Tags, die auf das verwaltete VPC-Lattice-Ressourcen-Gateway angewendet werden sollen. Der Tag-Schlüssel
BedrockAgentCoreGatewayManagedist reserviert und kann nicht angegeben werden.
Verwaltete Ressourcen anzeigen
Rufen Sie nach der Erstellung der Ressource die entsprechende Get API auf (z. B.GetGatewayTarget), um die verwalteten VPC-Lattice-Ressourcen anzuzeigen, die in Ihrem AgentCore Namen erstellt wurden. Diese werden im privateEndpointManagedResources Feld der Antwort zurückgegeben:
{ ... "status": "READY", "privateEndpoint": { "managedVpcResource": { "vpcIdentifier": "vpc-0abc123def456", "subnetIds": ["subnet-0abc123", "subnet-0def456"], "endpointIpAddressType": "IPV4", "securityGroupIds": ["sg-0abc123def"] } }, "privateEndpointManagedResources": [ { "domain": "my-server.internal.example.com", "resourceGatewayArn": "arn:aws:vpc-lattice:us-east-1:123456789012:resourcegateway/rgw-abc123" } ] }
Das resourceGatewayArn ist der ARN des VPC Lattice Resource Gateways, das in Ihrem AgentCore Konto erstellt wurde. AgentCore verwaltet den gesamten Lebenszyklus dieser Ressource: Es verwendet dasselbe Ressourcen-Gateway für Ziele mit übereinstimmenden VPC- und Subnetzkonfigurationen wieder und löscht es, wenn es von keinem Ziel mehr verwendet wird.
Option 2: Lattice-Ressourcen Self-managed
Mit selbstverwaltetem Lattice erstellen und verwalten Sie das VPC Lattice-Ressourcen-Gateway und die Ressourcenkonfiguration selbst und geben dann die ID für die Ressourcenkonfiguration an. AgentCore Verwenden Sie diese Option, wenn Sie bereits VPC-Lattice-Ressourcen konfiguriert haben, eine Ressourcenkonfiguration für mehrere Dienste gemeinsam nutzen müssen oder Kontrolle über den Lattice-Ressourcenlebenszyklus benötigen.
Voraussetzungen
Führen Sie die folgenden Schritte aus, bevor Sie ein Gateway-Ziel mit einem selbstverwalteten privaten Endpunkt erstellen:
-
Ihre private Ressource (MCP-Server oder REST-API) läuft und ist innerhalb Ihrer VPC zugänglich.
-
Sie haben mindestens ein Subnetz in Ihrer VPC, das Netzwerkzugriff auf die private Ressource hat.
-
Ihre Sicherheitsgruppen lassen eingehenden Verkehr auf dem Port zu, der von Ihrer privaten Ressource verwendet wird (normalerweise Port 443 für HTTPS).
-
Wenn Ihre private Ressource ein TLS-Zertifikat verwendet, das von einer privaten Zertifizierungsstelle ausgestellt wurde, können Sie einen internen Application Load Balancer mit einem öffentlichen ACM-Zertifikat davor platzieren. Weitere Informationen finden Sie unter Problemumgehung für private Zertifikate: ALB.
VPC-Lattice-Ressourcen für selbstverwaltete Konnektivität einrichten
-
Erstellen Sie mithilfe der VPC Lattice-Konsole oder der API ein Resource Gateway in Ihrer VPC.
CreateResourceGatewayOrdnen Sie es den Subnetzen und Sicherheitsgruppen zu, die Zugriff auf Ihre private Ressource haben.aws vpc-lattice create-resource-gateway \ --name my-resource-gateway \ --vpc-identifier vpc-0abc123def456 \ --subnet-ids subnet-0abc123 subnet-0def456 \ --security-group-ids sg-0abc123def \ --ip-address-type IPV4 -
Erstellen Sie eine Ressourcenkonfiguration, die auf Ihren privaten Endpunkt verweist. Verwenden Sie den ARN des Resource Gateways, das Sie im vorherigen Schritt erstellt haben.
aws vpc-lattice create-resource-configuration \ --name my-resource-config \ --type SINGLE \ --resource-gateway-identifier <resource-gateway-arn> \ --resource-configuration-definition '{"dnsResource": {"domain": "my-service.internal.example.com", "ipAddressType": "IPV4"}}' \ --port-ranges 443 -
Wenn sich die Ressource in einem anderen Konto als dem AgentCore Besitzerkonto befindet, teilen Sie die Ressourcenkonfiguration mithilfe von AWS RAM mit dem AgentCore Besitzerkonto:
aws ram create-resource-share \ --name my-resource-config-share \ --resource-arns <resource-configuration-arn> \ --principals <gateway-owner-account-id>Das AgentCore Besitzerkonto muss die gemeinsame Nutzung der Ressource akzeptieren, bevor das Ziel erstellt wird.
-
Notieren Sie sich den ARN oder die ID der Ressourcenkonfiguration. Sie geben dies
resourceConfigurationIdentifierbei der Erstellung des Gateway-Ziels an.
Ihr IAM-Principal benötigt außerdem die folgenden Berechtigungen, AgentCore um die Ressourcenkonfiguration in Ihrem Namen mit dem AgentCore Dienstnetzwerk verknüpfen zu können:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "vpc-lattice:GetResourceConfiguration", "vpc-lattice:CreateServiceNetworkResourceAssociation", "vpc-lattice:GetServiceNetworkResourceAssociation", "vpc-lattice:ListServiceNetworkResourceAssociations", "vpc-lattice:AssociateViaAWSService" ], "Resource": "*" } ] }
Erstellen Sie ein Ziel mit einem selbstverwalteten privaten Endpunkt
Um eine Ressource mit einem selbstverwalteten privaten Endpunkt zu erstellen, fügen Sie den privateEndpoint.selfManagedLatticeResource Block in Ihre Erstellungsanfrage ein:
{ ... "privateEndpoint": { "selfManagedLatticeResource": { "resourceConfigurationIdentifier": "arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-abc123" } }, ... }
Dies resourceConfigurationIdentifier kann entweder der ARN oder die ID der VPC-Lattice-Ressourcenkonfiguration sein. AgentCore verwendet Ihre Anmeldeinformationen (über Forward Access Sessions), um die Ressourcenkonfiguration dem AgentCore Servicenetzwerk zuzuordnen.
Nachdem die Ressource erstellt wurde, enthält die Get API-Antwort das resourceAssociationArn in das privateEndpointManagedResources Feld. Wenn Sie mehrere Ressourcen erstellen, die auf dieselbe Ressourcenkonfiguration verweisen, AgentCore wird automatisch die bestehende Dienstenetzwerk-Ressourcenzuweisung wiederverwendet.
Cross-account private Ressourcen
Sie können eine Verbindung AgentCore zu privaten Ressourcen in einem anderen AWS Konto als dem Konto herstellen, dem das Gateway gehört. Dies ist ein übliches Muster für Plattformteams, die zentrale Gateways verwalten, während die privaten Ressourcen den einzelnen Serviceteams gehören.
Das Ressourcenbesitzerkonto muss die VPC Lattice-Ressourcenkonfiguration mit dem Gateway-Besitzerkonto teilen, das RAM verwendet AWS . Das Gateway-Besitzerkonto gibt dann bei der Erstellung des Gateway-Ziels die Konfigurations-ID für die gemeinsam genutzte Ressource an.
Die folgenden Schritte fassen die kontenübergreifende Einrichtung zusammen:
Richten Sie kontoübergreifende private Konnektivität ein
-
Im Ressourcenbesitzerkonto: Erstellen Sie ein VPC-Lattice-Ressourcengateway und eine Ressourcenkonfiguration, wie unter Voraussetzungen beschrieben.
-
Im Konto des Ressourcenbesitzers: Teilen Sie die Ressourcenkonfiguration mithilfe AWS von RAM mit dem Gateway-Besitzerkonto:
aws ram create-resource-share \ --name my-resource-config-share \ --resource-arns <resource-configuration-arn> \ --principals <gateway-owner-account-id> -
Im Gateway-Besitzerkonto: Akzeptieren Sie die gemeinsame Nutzung der Ressource:
aws ram accept-resource-share-invitation \ --resource-share-invitation-arn <invitation-arn> -
Im Gateway-Besitzerkonto: Erstellen Sie das Gateway-Ziel mithilfe der Konfigurations-ID für gemeinsam genutzte Ressourcen, wie unter Ein Ziel mit einem selbstverwalteten privaten Endpunkt erstellen beschrieben.
Leiten Sie den Verkehr über eine Zwischendomäne weiter
Sie können das routingDomain Feld verwenden, um den Datenverkehr über eine Zwischenkomponente — z. B. einen VPC-Endpunkt, einen internen Application Load Balancer oder Network Load Balancer — statt direkt an Ihre Zieldomäne weiterzuleiten. Dies ist nützlich, wenn Sie mehrere private Ressourcen hinter einem einzigen Einstiegspunkt konsolidieren möchten (z. B. mehrere private API-Gateways über einen einzigen VPC-Endpunkt weiterleiten möchten, um die Anzahl der Ressourcenkonfigurationen und die damit verbundenen Kosten zu reduzieren).
Wenn Sie eine Routing-Domain verwenden, sollte die Domain, die Sie für Ihr Ziel angeben (in der MCP-Endpunkt-URL oder OpenAPI-Server-URL), der tatsächliche DNS-Name Ihrer Ressource sein. Das routingDomain ist eine separate Domäne, die zum Einrichten der VPC-Lattice-Ressourcenkonfiguration AgentCore verwendet wird. Leitet zum Zeitpunkt des Aufrufs den AgentCore Datenverkehr über die Routingdomäne weiter, sendet jedoch Anfragen mit der tatsächlichen Zieldomäne als TLS-SNI-Hostnamen, sodass Ihre Ressource Anfragen empfängt, die an ihre tatsächliche Domäne gerichtet sind.
Bei der Routingdomäne kann es sich um eine beliebige Domain handeln, die zu Ihrer privaten Ressource innerhalb der VPC weiterleitet. Zu den gängigen Optionen gehören:
-
VPC-Endpunktdomäne (VPCE) für ein privates API Gateway — Verwenden Sie beispielsweise den VPCE-DNS-Namen als.
routingDomain<vpce-id>.execute-api---us-east-1---vpce.amazonaws.com.rproxy.goskope.comSetzen Sie die Ziel-URL in Ihrer OpenAPI-Spezifikation beispielsweise auf den privaten API-Gateway-Hostnamen.https://<api-id>.execute-api---us-east-1.amazonaws.com.rproxy.goskope.comAgentCore leitet den Datenverkehr über die VPCE-Domäne weiter, sendet jedoch Anfragen mit dem privaten API-Hostnamen als TLS-SNI, um das korrekte Routing innerhalb Ihrer VPC sicherzustellen. -
Internal Application Load Balancer (ALB) — Verwenden Sie beispielsweise den internen ALB-DNS-Namen als.
routingDomaininternal-<alb-name>-<id>.us-west-2---elb.amazonaws.com.rproxy.goskope.comStellen Sie die Ziel-URL auf den DNS-Namen der Ressource hinter dem ALB ein. -
Interner Network Load Balancer (NLB) — Verwenden Sie beispielsweise den internen NLB-DNS-Namen als.
routingDomaininternal-<nlb-name>-<id>.elb---us-west-2.amazonaws.com.rproxy.goskope.comStellen Sie die Ziel-URL auf den DNS-Namen der Ressource ein, die hinter dem NLB steht.
Die folgenden Schritte beschreiben den Verkehrsfluss, wenn eine Routingdomäne verwendet wird:
-
AgentCore löst den Lattice-generated VPC-DNS-Namen auf, um das Ressourcen-Gateway zu erreichen.
-
Der Datenverkehr gelangt über das Ressourcen-Gateway in Ihre VPC, das an die Routingdomäne adressiert ist.
-
Die Routingdomäne (VPCE oder ALB) leitet die Anfrage an Ihre private Ressource weiter. Der TLS-SNI-Header enthält die eigentliche Zieldomain, sodass Ihre Ressource die Anfrage mit dem richtigen Hostnamen empfängt.
Beispiel: Privates API Gateway mit VPCE-Routingdomäne
Das folgende Beispiel zeigt, wie Sie ein Gateway-Ziel für ein privates API Gateway erstellen, das dessen VPCE-Domäne als Routingdomäne verwendet. Die Ziel-URL ist der private API-Gateway-Hostname und routingDomain der VPCE-DNS-Name:
{ "name": "my-private-apigw-target", "privateEndpoint": { "managedVpcResource": { "vpcIdentifier": "vpc-0123456789abcdef0", "subnetIds": ["subnet-0123456789abcdef0", "subnet-0abcdef1234567890"], "endpointIpAddressType": "IPV4", "routingDomain": "<vpce-id>.execute-api.us-east-1.vpce.amazonaws.com" } }, "targetConfiguration": { "mcp": { "openApiSchema": { "inlinePayload": "<OpenAPI spec JSON with server URL matching the public certificate domain, for example https://<api-id>.execute-api.<region>.amazonaws.com>" } } } }
Anmerkung
Das routingDomain Feld ist nur für die managedVpcResource Option verfügbar. Bei selbstverwaltetem Lattice konfigurieren Sie die Routingdomäne direkt in Ihrer Ressourcenkonfiguration, wenn Sie sie erstellen.
Problemumgehung für private Zertifikate: ALB
Für VPC-Egress muss Ihr Zielendpunkt über ein öffentlich vertrauenswürdiges TLS-Zertifikat verfügen. Wenn Ihre private Ressource ein Zertifikat verwendet, das von einer privaten Zertifizierungsstelle (CA) ausgestellt wurde, besteht die empfohlene Lösung darin, einen internen Application Load Balancer (ALB) vor Ihrer Ressource zu platzieren.
Die folgenden Schritte beschreiben den Verkehrsfluss:
-
Stellen Sie die Ziel-URL auf eine Domain ein, die Ihrem öffentlichen ACM-Zertifikat entspricht (z. B.
https://my-server.my-company.com). -
Stellen Sie
routingDomainden internen ALB-DNS-Namen ein (z. B.internal-my-alb-1234567890.us-west-2.elb.amazonaws.com). -
VPC Lattice leitet den Verkehr über die Routingdomäne an die ALB weiter. Das TLS-SNI ist auf eingestellt
my-server.my-company.com, was dem öffentlichen ACM-Zertifikat der ALB entspricht, sodass der TLS-Handshake erfolgreich ist. -
Das ALB beendet TLS und wendet eine Host-Header-Transformation an, um den Host-Header von
my-server.my-company.comder Domain der privaten Ressource umzuschreiben (z. B.).my-server.my-company.internal -
Die ALB leitet die Anfrage mithilfe des privaten Zertifikats über HTTPS an Ihre Backend-Ressource weiter. Der gesamte Datenverkehr verbleibt in Ihrer VPC.
Schritt 1: Fordern Sie ein öffentliches ACM-Zertifikat an
Fordern Sie von ACM ein öffentliches Zertifikat für eine Domain an, die Sie besitzen. Diese Domain wird als Ziel-URL verwendet. Anweisungen finden Sie im Certificate Manager-Benutzerhandbuch unter Anfordern eines öffentlichen AWS Zertifikats.
Schritt 2: Erstellen Sie ein internes ALB
Erstellen Sie einen internen Application Load Balancer in derselben VPC wie Ihre private Ressource. Anweisungen finden Sie unter Erstellen eines Application Load Balancer im Elastic Load Balancing Balancing-Benutzerhandbuch. Stellen Sie sicher, dass Sie das Schema auf internal einstellen.
Schritt 3: Erstellen Sie eine IP-based Zielgruppe
Erstellen Sie eine Zielgruppe mit einem Zieltypip, der auf die IP-Adresse Ihrer privaten Ressource auf Port 443 (HTTPS) verweist, und registrieren Sie Ihre private Ressource als Ziel. Eine Anleitung finden Sie unter Eine Zielgruppe erstellen im Elastic Load Balancing User Guide.
Schritt 4: Erstellen Sie einen HTTPS-Listener mit Host-Header-Transformation
Erstellen Sie mithilfe des öffentlichen ACM-Zertifikats einen HTTPS-Listener auf Port 443. Fügen Sie eine Listener-Regel hinzu, die den Host-Header vor der Weiterleitung von der öffentlichen Domain in die Domain der privaten Ressource umwandelt.
aws elbv2 create-listener \ --load-balancer-arn <alb-arn> \ --protocol HTTPS \ --port 443 \ --certificates CertificateArn=<acm-certificate-arn> \ --default-actions '[{ "Type": "forward", "TargetGroupArn": "<target-group-arn>", "ForwardConfig": { "TargetGroups": [{"TargetGroupArn": "<target-group-arn>", "Weight": 1}] } }]'
Ändern Sie dann die Listener-Regel, um die Host-Header-Transformation hinzuzufügen:
aws elbv2 modify-rule \ --rule-arn <default-rule-arn> \ --actions '[{ "Type": "forward", "TargetGroupArn": "<target-group-arn>", "ForwardConfig": { "TargetGroups": [{"TargetGroupArn": "<target-group-arn>", "Weight": 1}] } }]' \ --transforms '[{ "Type": "host-header", "HostHeaderConfig": { "Values": ["my-server.my-company.internal"] } }]'
Schritt 5: Konfigurieren Sie den privaten Endpunkt
Verwenden Sie den ALB-DNS-Namen als Ziel-URL routingDomain und die öffentliche Zertifikatsdomäne.
{ ... "privateEndpoint": { "managedVpcResource": { "vpcIdentifier": "<vpc-id>", "subnetIds": ["<subnet-id-1>", "<subnet-id-2>"], "endpointIpAddressType": "IPV4", "routingDomain": "internal-my-alb-1234567890.us-west-2.elb.amazonaws.com" } }, ... }
Die Ziel-URL in Ihrer Zielkonfiguration sollte https://my-server.my-company.com (die öffentliche Zertifikatsdomäne) verwenden, nicht die private Domain.
Service-linked Rolle für VPC-Egress
Wenn Sie ein Gateway-Ziel mit einem verwalteten privaten Endpunkt (managedVpcResource) erstellen, AgentCore verwendet die AWSServiceRoleForBedrockAgentCoreGatewayNetwork dienstverknüpfte Rolle, um VPC Lattice-Ressourcen-Gateways in Ihrem Konto zu erstellen und zu verwalten. Diese Rolle wird automatisch erstellt, wenn Sie zum ersten Mal ein verwaltetes privates Endpunktziel erstellen, sofern Ihr IAM-Prinzipal über die erforderlichen Berechtigungen verfügt. iam:CreateServiceLinkedRole
Die serviceverknüpfte Rolle weist die folgenden Hauptmerkmale auf:
-
Es können nur VPC Lattice-Ressourcen-Gateways erstellt und gelöscht werden, die mit gekennzeichnet sind.
BedrockAgentCoreGatewayManaged: trueEs kann keine Ressourcen-Gateways ändern, die Sie selbst erstellen und verwalten. -
AgentCore verwendet dasselbe verwaltete Ressourcen-Gateway für Ziele, die dieselbe Konfiguration von VPC, Subnetz, Sicherheitsgruppe und IP-Adresstyp verwenden. Das Ressourcen-Gateway wird nur gelöscht, wenn es von keinem Gateway-Ziel verwendet wird.
-
Ressourcenkonfigurationen für Managed Lattice werden im AgentCore Dienstkonto erstellt, nicht in Ihrem Konto. Sie werden sie in Ihrer VPC Lattice-Konsole nicht sehen.
Das vollständige Richtliniendokument und Anweisungen zum Erstellen, Bearbeiten und Löschen dieser Rolle finden Sie unter Service-verknüpfte Gateway-Rolle.
Zielstatus und Problembehandlung
Nachdem Sie eine Ressource mit einem privaten Endpunkt erstellt haben, durchläuft die Ressource einen CREATING Status, während sie AgentCore die VPC-Lattice-Ressourcen einrichtet und die Dienstnetzwerkverbindung herstellt. Sie können den Status überwachen, indem Sie die entsprechende Get-API aufrufen (z. B.GetGatewayTarget) und die status Felder und überprüfen. statusReasons
In der folgenden Tabelle werden allgemeine Statuswerte und ihre Bedeutung beschrieben:
| Status | Description |
|---|---|
|
|
AgentCore richtet VPC-Lattice-Ressourcen ein und richtet die Service-Netzwerk-Assoziation ein. Dies kann bis zu ein paar Minuten dauern. |
|
|
Der private Endpunkt ist konfiguriert und das Ziel ist bereit, Anfragen zu empfangen. |
|
|
Die Erstellung des Ziels ist fehlgeschlagen. Überprüfen Sie das |
In der folgenden Tabelle werden häufig auftretende Probleme und deren Lösungen beschrieben:
| Problem | Lösung |
|---|---|
|
Die Zielerstellung schlägt mit einem IAM-Berechtigungsfehler fehl |
Stellen Sie sicher, dass Ihr IAM-Prinzipal über die |
|
Tool-Aufrufe schlagen mit einem Verbindungsfehler nach der Zielerstellung fehl |
Stellen Sie sicher, dass die Sicherheitsgruppen, die dem Ressourcen-Gateway zugeordnet sind, eingehenden Datenverkehr auf dem Port zulassen, der von Ihrer privaten Ressource verwendet wird. Stellen Sie außerdem sicher, dass die private Ressource läuft und von den angegebenen Subnetzen aus zugänglich ist. |
|
Tool-Aufrufe schlagen mit einem TLS-Fehler fehl |
Wenn Ihre private Ressource ein von einer privaten CA ausgestelltes Zertifikat verwendet, stellen Sie sicher, dass der Subject Alternative Name (SAN) des Zertifikats mit der Domain in Ihrem MCP-Endpunkt oder Ihrer OpenAPI-Server-URL übereinstimmt. Wenn Sie eine Routingdomäne verwenden, stellen Sie sicher, dass die Routingdomäne TLS korrekt an Ihre private Ressource weiterleitet. |
|
Die Ressourcenkonfiguration wurde nicht gefunden (selbst verwaltet) |
Stellen Sie bei kontoübergreifenden Szenarien sicher, dass die AWS RAM-Ressourcenfreigabe im Gateway-Besitzerkonto akzeptiert wurde, bevor Sie das Ziel erstellen. |
Einschränkungen und Überlegungen
Beachten Sie die folgenden Einschränkungen bei der Verwendung von VPC-Egress für: AgentCore
-
Cross-account: Für Cross-account private Konnektivität ist die Option für selbstverwaltete Lattice-Ressourcen erforderlich. Verwaltete VPC-Ressourcen unterstützen keine kontenübergreifenden Szenarien.
-
DNS-TTL-Konfiguration: VPC Lattice verwendet Routing. IP-based Stellen Sie sicher, dass die DNS-TTLs für Ihre Ressourcenkonfigurationsdomäne entsprechend konfiguriert sind, sodass IP-Adressänderungen während fortlaufender Bereitstellungen nicht zu Verbindungsunterbrechungen führen.