View a markdown version of this page

VPC-Konnektivität für eine Datenquelle konfigurieren - Amazon Bedrock

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.

VPC-Konnektivität für eine Datenquelle konfigurieren

Einige Datenquellen werden auf privaten Ressourcen ausgeführt, die über das öffentliche Internet nicht erreichbar sind, wie z. B. eine lokale Confluence Data Center-Instance, der Sie in Ihrer VPC einen internen Load Balancer hinzufügen. Um diese Datenquellen zu crawlen, erstellen Sie eine VPC-Konfiguration. Amazon Bedrock verwendet die Konfiguration, um einen privaten Netzwerkpfad zu Ihrer VPC bereitzustellen und die Ressource zu erreichen.

Eine VPC-Konfiguration ist eine wiederverwendbare Ressource in Ihrer Wissensdatenbank. Sie erstellen sie einmal und verweisen dann anhand einer ID aus einer oder mehreren Datenquellen darauf. Wenn Sie eine Datenquelle erstellen, die private Konnektivität benötigt, wählen Sie eine vorhandene VPC-Konfiguration aus oder erstellen eine neue.

Anmerkung

Wenn Amazon Bedrock eine VPC-Konfiguration bereitstellt, übernimmt es eine AWS Identity and Access Management (IAM-) Rolle, die Ihrer Wissensdatenbank zugeordnet ist, um eine kleine Gruppe von Netzwerkressourcen in Ihrem Konto zu erstellen. Jede Ressource, die Amazon Bedrock erstellt, ist mit einem Tag versehenManagedBy=VPCProxyService, und die Rolle kann nur auf Ressourcen angewendet werden, die dieses Tag tragen. Siehe Wissensdatenbank: IAM-Rollenberechtigungen.

Was Sie zur Verfügung stellen

Um eine VPC-Konfiguration zu erstellen, geben Sie Folgendes an:

Eingaben für die VPC-Konfiguration
Input Warum wird es benötigt
Eine VPC und ein oder mehrere Subnetze Wo Amazon Bedrock den Netzwerkeintrittspunkt (ein privates Gateway) in Ihre VPC einfügt. Sie stellen 1—6 Subnetze von der ausgewählten VPC aus bereit.
Ein Ressourcenziel und ein Port Die private IP-Adresse oder der DNS-Name (und der Port) der Ressource, die Sie erreichen möchten.
Eine IAM-Rolle in der Wissensdatenbank Amazon Bedrock übernimmt diese Rolle, um die Netzwerkressourcen in Ihrem Konto bereitzustellen. Siehe Wissensdatenbank: IAM-Rollenberechtigungen.

Sie stellen keine Sicherheitsgruppen zur Verfügung. Amazon Bedrock verwendet die Standardsicherheitsgruppe Ihrer VPC für das Gateway. Stellen Sie sicher, dass die Regeln für ausgehenden Datenverkehr (Ausgang) der Standardsicherheitsgruppe es ermöglichen, Ihr Ziel auf dem angeforderten Port zu erreichen. Siehe Ausgang aus der Standardsicherheitsgruppe.

Netzwerkanforderungen

Amazon Bedrock erreicht Ihre Ressource über ein privates Gateway, das nur mit privaten Netzwerkschnittstellen (keine öffentliche IP-Adresse) erstellt wurde. Das Gateway erreicht Ihr Ziel über das private (lokale) Netzwerk Ihrer VPC und kann keine öffentlichen IP-Adressen erreichen. Ihr Ressourcenziel muss von Ihrer VPC aus privat erreichbar sein:

  • Ein interner Load Balancer (scheme: internal), dessen DNS-Name in private Adressen aufgelöst wird (z. B., 10.x172.x, oder). 192.168.x

  • Eine private IP-Adresse oder ein privater DNS-Name, der in eine private In-VPC-Adresse aufgelöst wird.

Ein mit dem Internet verbundener Load Balancer wird nicht unterstützt. Ein mit dem Internet verbundener Load Balancer gibt seine öffentlichen IP-Adressen sogar bei VPN-internen DNS-Abfragen zurück, und das private Gateway kann diese Adressen nicht erreichen. Wenn Ihre Ressource derzeit nur über einen mit dem Internet verbundenen Load Balancer verfügbar ist, erstellen Sie einen internen Load Balancer in derselben VPC (oder zeigen Sie darauf) und verwenden Sie seinen DNS-Namen als Ressourcenziel.

Erstellen Sie eine VPC-Konfiguration

Console
Um eine VPC-Konfiguration hinzuzufügen
  1. Wählen Sie in der Datenquellenkonfiguration unter VPC-Konfiguration die Option VPC-Konfiguration hinzufügen aus. Wenn bereits eine geeignete Konfiguration vorhanden ist, wählen Sie sie stattdessen aus, um sie in allen Datenquellen wiederzuverwenden.

  2. (Optional) Geben Sie einen Namen und eine Beschreibung für die Konfiguration ein.

  3. Wählen Sie für die VPC-ID die VPC aus, die für die Konnektivität verwendet werden soll.

  4. Wählen Sie für Subnetz-IDs ein oder mehrere Subnetze aus der ausgewählten VPC aus.

  5. Geben Sie für Resource target den Hostnamen oder die IP-Adresse Ihrer Ressource ein (z. B. oder). 10.0.1.50 confluence.internal.example.com

  6. Geben Sie für Port die Portnummer ein, über die eine Verbindung hergestellt werden soll (z. B. 443 oder8090).

  7. Wählen Sie für Protokoll HTTPS oder HTTP aus.

  8. Wählen Sie für den Auflösungsmodus aus, wie die Ressourcenzieladresse aufgelöst wird:

    • Öffentlich — Das Ressourcenziel ist ein öffentlich auflösbarer Hostname oder eine öffentlich auflösbare IP-Adresse.

    • In VPC — Das Ressourcenziel kann nur innerhalb Ihrer VPC aufgelöst werden. Dies ist der übliche Fall bei internen Ressourcen.

  9. (Optional) Geben Sie für Host-Header den Host Header-Wert ein, der mit Anfragen gesendet werden soll. Stellen Sie dies nur ein, wenn Ihre Ressource (oder ein Upstream-Router) über den Host HTTP-Header weitergeleitet wird.

  10. (Erforderlich für HTTPS) Geben Sie für den TLS-Servernamen die erwartete TLS-Zertifikatsidentität (Subject Alternative Name) für die Ressource ein. Ein einzelner Platzhalter ganz links ist zulässig (z. B.). *.example.com

  11. Wählen Sie Erstellen aus.

API

Um eine VPC-Konfiguration zu erstellen, senden Sie eine Anfrage. CreateVpcConfiguration Alle Operationen sind über den knowledgeBaseId Pfadparameter auf eine Wissensdatenbank beschränkt. Der Anforderungstext enthält keine Konto-ID oder Rollen-ARN, da Amazon Bedrock die aus der Wissensdatenbank stammenden Vorgänge löst.

POST /knowledgebases/knowledgeBaseId/vpcconfigurations/

Der Anforderungstext verwendet die folgenden Felder.

CreateVpcConfiguration Felder
Feld Erforderlich Beschreibung
vpcId Ja Die ID des VPC. Treffer^vpc-[a-zA-Z0-9]+$, bis zu 64 Zeichen.
subnetIds Ja 1—6 Subnetz-IDs aus der angegebenen VPC. Jeder passt. ^subnet-[a-zA-Z0-9]+$
resourceTarget Ja Die IPv4-Adresse oder der DNS-Name der Ressource (1—255 Zeichen). Siehe Einschränkungen für Ressourcen und Ziele.
port Ja Der Port, über den eine Verbindung hergestellt werden soll (1—65535).
protocol Ja HTTP oder HTTPS.
resolutionMode Ja PUBLIC oder IN_VPC. IN_VPCWird verwendet, wenn das Ziel nur innerhalb Ihrer VPC aufgelöst wird.
tlsServerName Bedingt Erforderlich, wenn es protocol ist. HTTPS Der Hostname stimmte mit dem TLS-Zertifikat der Ressource überein (bis zu 253 Zeichen). Ein einzelner Platzhalter ganz links ist zulässig. Darf keinen Port enthalten.
hostHeader Nein Der zu Host sendende HTTP-Header-Wert (bis zu 255 Zeichen). Nur festlegen, wenn Ihre Ressource über den Host Header weitergeleitet wird.
name Nein Ein für Menschen lesbarer Name (1—128 Zeichen).
description Nein Eine Beschreibung (bis zu 512 Zeichen).
clientToken Nein Ein Idempotenz-Token.

Die Erstellung erfolgt asynchron. CreateVpcConfigurationgibt eine 202 Antwort mit einem vpcConfigurationId und einem Status von zurück. CREATING Abfrage, GetVpcConfiguration bis der Status erreicht ist CREATED (oderCREATE_FAILED, in welchem Fall statusMessage die Ursache genannt wird). Wird verwendetListVpcConfigurations, um Konfigurationen aufzulisten und eine DeleteVpcConfiguration zu entfernen.

Anmerkung

Wenn Sie mehrere Konfigurationen in derselben VPC mit derselben Gruppe von Subnetzen erstellen, teilen sie sich ein Gateway. Ein anderer Satz von Subnetzen stellt ein separates Gateway bereit.

Protokoll, TLS-Servername und Host-Header

Diese drei Einstellungen sind am häufigsten falsch konfiguriert. Verwenden Sie die folgenden Hinweise, um die richtigen Werte auszuwählen.

protocol

Wählen HTTP Sie, ob Sie die Ressource über Klartext-HTTP oder über HTTPS TLS aufrufen möchten.

tlsServerName

Erforderlich, wenn es ist. protocol HTTPS Dies ist der Servername, der beim Aufruf mit den alternativen Betreffnamen des TLS-Zertifikats Ihrer Ressource abgeglichen wurde. Setzen Sie ihn auf den Hostnamen, für den Ihr Zertifikat ausgestellt wurde (z. B.app.internal.example.com). Ein einzelner Platzhalter ganz links ist zulässig (z. B.). *.example.com Wenn die Ressource über eine IP-Adresse erreicht wird, aber ein Zertifikat für einen Namen vorlegt, geben Sie tlsServerName diesen Namen ein. Wenn das Zertifikat nicht übereinstimmt, schlägt der Aufruf die TLS-Identitätsprüfung fehl. Dieser Wert muss ein Hostname ohne Port sein.

hostHeader

Optional und ein Problem, das unabhängig von der Anwendungsebene ist. tlsServerName Stellen Sie es nur ein, wenn Ihre Ressource oder ein Upstream-Router oder Ingress über den Host HTTP-Header weitergeleitet wird und dieser Host sich von dem unterscheidet, was Sie sonst senden würden. Wenn Ihre Ressource eine einzelne Site bedient und nicht an ihr vorbeileitetHost, lassen Sie sie leer.

resolutionMode

Wählen SiePUBLIC, ob das Ressourcenziel ein öffentlich auflösbarer Name oder eine öffentliche IP-Adresse ist. Wählen SieIN_VPC, wann das Ressourcenziel nur innerhalb Ihrer VPC (private DNS oder private IP-Adresse) aufgelöst werden soll, was bei internen Ressourcen häufig der Fall ist. Ein wörtliches privates IP-Ziel (z. B.10.0.5.20) funktioniert in beiden Modi, da kein DNS-Name aufgelöst werden muss.

Einschränkungen für Ressourcen und Ziele

Amazon Bedrock überprüft, resourceTarget wenn Sie die Konfiguration erstellen, um zu verhindern, dass der Service an sich selbst oder an die interne Infrastruktur gerichtet wird. Die folgenden Ziele werden abgelehnt:

  • Loopback-Adressen (127.0.0.0/8,::1) und. localhost

  • Link-local Adressen (169.254.0.0/16,fe80::/10), einschließlich des Endpunkts der Instanz-Metadaten. 169.254.169.254

  • Platzhalter oder beliebige lokale Adressen (0.0.0.0,::) und der Block. 0.0.0.0/8

  • Multicast-Adressen.

  • IPv6-Literale. Das Gateway ist bereitgestellt IPv4-only, daher müssen IP-Ziele eine IPv4-Adresse mit viereckigen Punkten sein.

DNS-Namen sind zulässig. Die Validierung löst sie nicht auf, daher muss das Ziel weiterhin von Ihren Gateway-Subnetzen aus erreichbar sein.

Ausgang aus der Standardsicherheitsgruppe

Da Amazon Bedrock die Standardsicherheitsgruppe Ihrer VPC für das Gateway verwendet, müssen die Ausgangsregeln dieser Sicherheitsgruppe den Zugriff auf zulassen. resourceTarget port Wenn die Standardsicherheitsgruppe gesperrt ist, schlägt die Erstellung schnell fehl und es wird eine klare Meldung angezeigt, anstatt dass das Zeitlimit später überschritten wird. Bevor Sie die Konfiguration erstellen, stellen Sie sicher, dass eine Ausgangsregel den Datenverkehr von den Gateway-Subnetzen zum Ziel und zum Port zulässt.

Wissensdatenbank: IAM-Rollenberechtigungen

Amazon Bedrock übernimmt die Ihrer Wissensdatenbank zugeordnete IAM-Rolle, um die Netzwerkressourcen in Ihrem Konto bereitzustellen und später abzubauen. Die Rolle muss die unten aufgeführten Berechtigungen zum Erstellen und Löschen sowie die Leseberechtigungen gewähren, die wiederholte Löschversuche idempotent machen. Jede Ressource, die Amazon Bedrock erstellt, ist markiertManagedBy=VPCProxyService, und die destruktiven Berechtigungen werden auf dieses Tag angewendet, sodass die Rolle nur auf Ressourcen angewendet werden kann, die mit dieser Funktion erstellt wurden.

  • Erstellen Sie —vpc-lattice:CreateResourceGateway,vpc-lattice:CreateResourceConfiguration,,vpc-lattice:TagResource, vpc-lattice:PutResourcePolicyram:CreateResourceShare, und iam:CreateServiceLinkedRole (einmalig ram:TagResourceram:AssociateResourceShare, für die serviceverknüpfte Rolle von VPC Lattice).

  • Löschen Sie —vpc-lattice:DeleteResourceGateway, undvpc-lattice:DeleteResourceConfiguration. ram:DeleteResourceShare

  • Lesen (Validierung und Idempotenz) —vpc-lattice:GetResourceGateway,vpc-lattice:GetResourceConfiguration, ram:GetResourceShares ec2:DescribeSubnetsec2:DescribeSecurityGroups, und. ec2:DescribeVpcs

Wichtig

Gewähren Sie sowohl als auchvpc-lattice:GetResourceGateway. vpc-lattice:GetResourceConfiguration Da die Löschberechtigungen tagspezifisch sind, wird beim Löschen einer bereits gelöschten Ressource ein Fehler zurückgegeben, der Zugriff verweigert wurde, und nicht der Fehler „Nicht gefunden“. Amazon Bedrock verwendet diese Leseberechtigungen ohne Tags, um eine bereits gelöschte Ressource (die als erfolgreich behandelt wird) von einem echten Berechtigungsproblem zu unterscheiden. Ohne sie kann ein erneuter Löschversuch nach einem teilweisen Ausfall hängen bleiben.

Die folgende Beispielrichtlinie gewährt die erforderlichen Berechtigungen. Ersetzen Sie region und accountId durch Ihre Werte.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VpcProxyCreateTagged", "Effect": "Allow", "Action": [ "vpc-lattice:CreateResourceGateway", "vpc-lattice:CreateResourceConfiguration", "vpc-lattice:TagResource" ], "Resource": [ "arn:aws:vpc-lattice:region:accountId:resourcegateway/*", "arn:aws:vpc-lattice:region:accountId:resourceconfiguration/*" ], "Condition": { "StringEquals": { "aws:RequestTag/ManagedBy": "VPCProxyService", "aws:ResourceTag/ManagedBy": "VPCProxyService" }, "ForAllValues:StringEquals": { "aws:TagKeys": ["ManagedBy"] } } }, { "Sid": "VpcProxyPutResourcePolicy", "Effect": "Allow", "Action": "vpc-lattice:PutResourcePolicy", "Resource": [ "arn:aws:vpc-lattice:region:accountId:resourceconfiguration/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" } } }, { "Sid": "VpcProxyRamCreate", "Effect": "Allow", "Action": "ram:CreateResourceShare", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/ManagedBy": "VPCProxyService" }, "StringEqualsIfExists": { "ram:RequestedResourceType": "vpc-lattice:ResourceConfiguration" } } }, { "Sid": "VpcProxyRamAssociate", "Effect": "Allow", "Action": "ram:AssociateResourceShare", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" } } }, { "Sid": "VpcProxyRamTagOnCreate", "Effect": "Allow", "Action": "ram:TagResource", "Resource": [ "arn:aws:ram:region:accountId:resource-share/*" ], "Condition": { "StringEquals": { "aws:RequestTag/ManagedBy": "VPCProxyService", "aws:ResourceTag/ManagedBy": "VPCProxyService" }, "ForAllValues:StringEquals": { "aws:TagKeys": ["ManagedBy"] } } }, { "Sid": "VpcProxyDeleteTagged", "Effect": "Allow", "Action": [ "vpc-lattice:DeleteResourceConfiguration", "vpc-lattice:DeleteResourceGateway" ], "Resource": [ "arn:aws:vpc-lattice:region:accountId:resourcegateway/*", "arn:aws:vpc-lattice:region:accountId:resourceconfiguration/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" } } }, { "Sid": "VpcProxyRamDeleteTagged", "Effect": "Allow", "Action": "ram:DeleteResourceShare", "Resource": [ "arn:aws:ram:region:accountId:resource-share/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" }, "StringLike": { "ram:ResourceShareName": "vpc-proxy-share-*" } } }, { "Sid": "VpcProxyGetResource", "Effect": "Allow", "Action": [ "vpc-lattice:GetResourceConfiguration", "vpc-lattice:GetResourceGateway" ], "Resource": [ "arn:aws:vpc-lattice:region:accountId:resourcegateway/*", "arn:aws:vpc-lattice:region:accountId:resourceconfiguration/*" ] }, { "Sid": "VpcProxyRamGetResourceShares", "Effect": "Allow", "Action": "ram:GetResourceShares", "Resource": "*" }, { "Sid": "VpcProxyEc2Describe", "Effect": "Allow", "Action": [ "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeVpcs" ], "Resource": "*" }, { "Sid": "VpcProxyLatticeServiceLinkedRole", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": [ "arn:aws:iam::accountId:role/aws-service-role/vpc-lattice.amazonaws.com/*" ], "Condition": { "StringEquals": { "iam:AWSServiceName": "vpc-lattice.amazonaws.com" } } } ] }

Lebenszyklus

  • Eine VPC-Konfiguration geht über CREATING zuCREATED, oder zuCREATE_FAILED. Wenn Sie sie löschen, lautet der StatusDELETING, oderDELETE_FAILED.

  • Erstellung und Löschung erfolgen asynchron. UmfrageGetVpcConfiguration, um den Fortschritt zu verfolgen. statusMessageBenennt im Fehlerfall die umsetzbare Ursache, z. B. eine fehlende Genehmigung.

  • Das Löschen ist idempotent. Ein teilweise abgeschlossenes Löschen konvergiert, wenn Sie es erneut versuchen.