View a markdown version of this page

Amazon Bedrock AgentCore Runtime und Tools für VPC konfigurieren - Amazon Grundgestein AgentCore

Amazon Bedrock AgentCore Runtime und Tools für VPC konfigurieren

Sie können Amazon Bedrock AgentCore Runtime und integrierte Tools (Code Interpreter und Browser Tool) konfigurieren, um eine Verbindung zu Ressourcen in Ihrer Amazon Virtual Private Cloud (VPC) herzustellen. Durch die Konfiguration der VPC-Konnektivität ermöglichen Sie den sicheren Zugriff auf private Ressourcen wie Datenbanken, interne APIs und Dienste innerhalb Ihrer VPC.

VPC-Konnektivität für Amazon Bedrock AgentCore Runtime und Tools

Damit Amazon Bedrock AgentCore Runtime und integrierte Tools sicher auf Ressourcen in Ihrer privaten VPC zugreifen können, AgentCore bietet VPC-Konnektivitätsfunktionen. Diese Funktion ermöglicht Ihrer Runtime und Ihren Tools:

  • Connect zu privaten Ressourcen her, ohne sie dem Internet auszusetzen

  • Sorgen Sie für eine sichere Kommunikation innerhalb der Netzwerkgrenzen Ihres Unternehmens

  • Greifen Sie auf Unternehmensdatenspeicher und interne Dienste zu und wahren Sie gleichzeitig die Sicherheit

Wenn Sie die VPC-Konnektivität für Amazon Bedrock AgentCore Runtime und Tools konfigurieren:

  • Amazon Bedrock erstellt mithilfe der serviceverknüpften Rolle Elastic Network Interfaces (ENIs) in Ihrer VPC AWSServiceRoleForBedrockAgentCoreNetwork

  • Diese ENIs ermöglichen es Ihrer Amazon Bedrock AgentCore Runtime und Ihren Tools, sicher mit Ressourcen in Ihrer VPC zu kommunizieren.

  • Jeder ENI wird eine private IP-Adresse aus den von Ihnen angegebenen Subnetzen zugewiesen

  • Sicherheitsgruppen, die dem ENIs zugeordnet sind, steuern, mit welchen Ressourcen Ihre Runtime und Tools kommunizieren können

Anmerkung

ENIs sind gemeinsam genutzte Ressourcen für Agenten, die dieselbe Subnetz- und Sicherheitsgruppenkonfiguration verwenden. Wenn Sie einen Agenten löschen, kann die zugehörige ENI bis zu 8 Stunden in Ihrer VPC verbleiben, bevor sie automatisch entfernt wird.

Anmerkung

Die VPC-Konnektivität wirkt sich auf den ein- und ausgehenden Netzwerkverkehr von Diensten aus. AgentCore Wenn Sie Ihre Anwendung in einer AWS VPC hosten, können Sie private Konnektivität zu den AgentCore Runtime- und AgentCore Gateway-APIs einrichten, indem Sie den AgentCore VPC-Endpunkt zu Ihrer VPC hinzufügen. Dies ermöglicht sichere API-Aufrufe ohne Internet-Traversal über eingehende VPC-Verbindungen PrivateLink .

Voraussetzungen

Bevor Sie Amazon Bedrock AgentCore Runtime und Tools für den VPC-Zugriff konfigurieren, stellen Sie sicher, dass Sie über Folgendes verfügen:

  • Eine Amazon-VPC mit geeigneten Subnetzen für Ihre Laufzeit- und Tool-Anforderungen. Informationen zur Konfiguration Ihrer Subnetze für den Internetzugang finden Sie beispielsweise unter Überlegungen zum Internetzugang.

  • Subnetze, die sich in unterstützten Availability Zones für Ihre Region befinden. Informationen zu unterstützten Availability Zones finden Sie unter Unterstützte Availability Zones.

  • Entsprechende Sicherheitsgruppen, die in Ihrer VPC für Laufzeit- und Toolzugriffsmuster definiert sind. Informationen zur Konfiguration Ihrer Sicherheitsgruppen für die Verbindung mit Amazon RDS finden Sie beispielsweise unter Beispiel: Verbindung zu einer Amazon RDS-Datenbank herstellen.

  • Erforderliche IAM-Berechtigungen zum Erstellen und Verwalten der serviceverknüpften Rolle (bereits in der AWS verwalteten Richtlinie BedrockAgentCoreFullAccessenthalten). Informationen zu den erforderlichen Berechtigungen finden Sie unter IAM-Berechtigungen.

  • Erforderliche VPC-Endpunkte, wenn Ihre VPC keinen Internetzugang hat. Informationen zur Konfiguration Ihrer VPC-Endpoints finden Sie beispielsweise unter VPC-Endpunktkonfiguration.

  • Verständnis Ihrer Laufzeit- und Tool-Netzwerkanforderungen (Datenbanken, APIs, Webressourcen). Wenn Sie ein Browser-Tool verwenden müssen, für das ein Internetzugang erforderlich ist, sollte Ihre VPC über NAT Gateway Internetzugang haben. Informationen finden Sie beispielsweise unter Überlegungen zu Sicherheitsgruppen.

Wichtig

AgentCore erstellt in Ihrem Konto eine Netzwerkschnittstelle mit einer privaten IP-Adresse. Die Verwendung eines öffentlichen Subnetzes bietet keine Internetverbindung. Um den Internetzugang zu aktivieren, platzieren Sie ihn in privaten Subnetzen mit einer Route zu einem NAT-Gateway.

Unterstützte Availability Zones

AgentCore unterstützt VPC-Konnektivität in bestimmten Availability Zones innerhalb jeder unterstützten Region. Stellen Sie bei der Konfiguration von Subnetzen für Ihre Amazon Bedrock AgentCore Runtime und die integrierten Tools sicher, dass sich Ihre Subnetze in den unterstützten Availability Zones für Ihre Region befinden.

Die folgende Tabelle zeigt die unterstützten Availability Zone-IDs für jede Region:

Region Regionscode Unterstützte Availability Zones

USA Ost (Nord-Virginia)

us-east-1

use1-az1 use1-az2 use1-az4

USA Ost (Ohio)

us-east-2

verwende 2-az1 verwende 2-az2 verwende 2-az3

USA West (Oregon)

us-west-2

usw2-az1 usw2-az2 usw2-az3

Asien-Pazifik (Malaysia)

ap-southeast-5

apse5-az1 apse5-az2 apse5-az3

Asien-Pazifik (Mumbai)

ap-south-1

aps1-az1 aps1-az2 aps1-az3

Asien-Pazifik (Seoul)

ap-northeast-2

Apne2-az1 Apne2-az2 Apne2-az3

Asien-Pazifik (Singapur)

ap-southeast-1

apse1-az1 apse1-az2 apse1-az3

Asien-Pazifik (Sydney)

ap-southeast-2

apse2-az1 apse2-az2 apse2-az3

Asien-Pazifik (Thailand)

ap-southeast-7

apse7-az1 apse7-az2 apse7-az3

Asien-Pazifik (Tokio)

ap-northeast-1

apne1-az1 apne1-az2 apne1-az4

Kanada (Zentral)

ca-central-1

cac1-az1 cac1-az2 cac1-az4

Europa (Frankfurt)

eu-central-1

euc1-az1 euc1-az2 euc1-az3

Europa (Irland)

eu-west-1

euw1-az1 euw1-az2 euw1-az3

Europa (London)

eu-west-2

euw2-az1 euw2-az2 euw2-az3

Europa (Milan)

eu-south-1

eus1-az1 eus1-az2 eus1-az3

Europa (Paris)

eu-west-3

euw3-az1 euw3-az2 euw3-az3

Europa (Spain)

eu-south-2

eus2-az1 eus2-az2 eus2-az3

Europa (Stockholm)

eu-north-1

eun1-az1 eun1-az2 eun1-az3

Südamerika (São Paulo)

sa-east-1

sae1-az1 sae1-az2 sae1-az3

AWS GovCloud (US-West)

us-gov-west-1

usgw1-az1 usgw1-az2 usgw1-az3

Wichtig

Subnetze müssen sich in den oben aufgeführten unterstützten Availability Zones befinden. Wenn Sie Subnetze in nicht unterstützten Availability Zones angeben, schlägt die Konfiguration bei der Ressourcenerstellung fehl.

Um die Availability Zone ID Ihrer Subnetze zu identifizieren, können Sie den folgenden CLI-Befehl verwenden:

aws ec2 describe-subnets --subnet-ids subnet-12345678 --query 'Subnets[0].AvailabilityZoneId'

IAM-Berechtigungen

AgentCore verwendet die serviceverknüpfte RolleAWSServiceRoleForBedrockAgentCoreNetwork, um Netzwerkschnittstellen in Ihrer VPC zu erstellen und zu verwalten. Diese Rolle wird automatisch erstellt, wenn Sie Amazon Bedrock AgentCore Runtime oder AgentCore integrierte Tools zum ersten Mal für die Verwendung von VPC-Konnektivität konfigurieren.

Wenn Sie diese Rolle manuell erstellen müssen, benötigt Ihre IAM-Entität die folgenden Berechtigungen:

{ "Action": "iam:CreateServiceLinkedRole", "Effect": "Allow", "Resource": "arn:aws:iam::*:role/aws-service-role/network.bedrock-agentcore.amazonaws.com/AWSServiceRoleForBedrockAgentCoreNetwork", "Condition": { "StringLike": { "iam:AWSServiceName": "network.bedrock-agentcore.amazonaws.com" } } }

Diese Berechtigung ist bereits in der AWS verwalteten Richtlinie BedrockAgentCoreFullAccessenthalten.

Bewährte Methoden

Für optimale Leistung und Sicherheit mit VPC-connected Amazon Bedrock AgentCore Runtime und integrierten Tools:

  • Hohe Verfügbarkeit:

    • Konfigurieren Sie mindestens zwei private Subnetze in verschiedenen Availability Zones. Eine Liste der unterstützten Availability Zones finden Sie unter Unterstützte Availability Zones.

    • Stellen Sie abhängige Ressourcen (wie Datenbanken oder Caches) mit Multi-AZ-Unterstützung bereit, um einzelne Ausfallpunkte zu vermeiden.

  • Netzwerk-Leistung:

    • Platzieren Sie die Subnetze von Amazon Bedrock AgentCore Runtime oder integrierten Tools in denselben Availability Zones wie die Ressourcen, mit denen sie eine Verbindung herstellen. Dies reduziert die AZ-übergreifende Latenz und die Kosten für die Datenübertragung.

    • Verwenden Sie VPC-Endpunkte für AWS Dienste, wann immer dies möglich ist. Endgeräte bieten eine geringere Latenz und höhere Zuverlässigkeit und vermeiden NAT-Gateway-Gebühren für unterstützte Dienste.

  • Sicherheit:

    • Wenden Sie bei der Erstellung von Sicherheitsgruppenregeln das Prinzip der geringsten Rechte an.

    • Aktivieren Sie VPC Flow Logs für die Prüfung und Überwachung. Überprüfen Sie die Protokolle regelmäßig, um unerwartete Verkehrsmuster zu identifizieren.

  • Internetzugang:

    • Um Internetzugriff über Amazon Bedrock AgentCore Runtime oder integrierte Tools in einer VPC bereitzustellen, konfigurieren Sie ein NAT-Gateway in einem öffentlichen Subnetz. Aktualisieren Sie die Routing-Tabelle für private Subnetze, um ausgehenden Verkehr zu senden (0.0.0. 0/0) zum NAT-Gateway.

    • Wir empfehlen die Verwendung von VPC-Endpunkten für AWS Dienste anstelle von Internet-Routing, um die Sicherheit zu verbessern und die Kosten zu senken.

Konfiguration des VPC-Zugriffs für Runtime und Tools

Sie können den VPC-Zugriff für Amazon Bedrock AgentCore Runtime und integrierte Tools mithilfe der AWS Management Console, AWS CLI oder AWS SDKs konfigurieren.

Laufzeitkonfiguration

Beispiel
AWS Management Console
  1. Öffnen Sie die AgentCore Konsole unter #. https://console.aws.amazon.com/bedrock-agentcore/home

  2. Navigiere zum AgentCore Abschnitt

  3. Wählen oder erstellen Sie eine Amazon Bedrock AgentCore Runtime-Konfiguration

  4. Wählen Sie Ihr ECR-Image

  5. Wählen Sie im Abschnitt Netzwerkkonfiguration die Option VPC

  6. Wählen Sie Ihre VPC aus der Drop-down-Liste aus

  7. Wählen Sie die entsprechenden Subnetze für Ihre Anwendungsanforderungen aus

  8. Wählen Sie eine oder mehrere Sicherheitsgruppen aus, die auf die ENIs angewendet werden sollen

  9. Speichern Sie Ihre Konfiguration

AWS CLI
  1. aws bedrock-agentcore-control create-agent-runtime \ --agent-runtime-name "MyAgentRuntime" \ --network-configuration '{ "networkMode": "VPC", "networkModeConfig": { "subnets": ["subnet-0123456789abcdef0", "subnet-0123456789abcdef1"], "securityGroups": ["sg-0123456789abcdef0"] } }'
AWS SDK (Python)
  1. import boto3 client = boto3.client('bedrock-agentcore') response = client.create_runtime( runtimeName='MyAgentRuntime', networkConfiguration={ 'networkMode': 'VPC', 'networkModeConfig': { 'subnets': ['subnet-0123456789abcdef0', 'subnet-0123456789abcdef1'], 'securityGroups': ['sg-0123456789abcdef0'] } }, lifecycleConfiguration={ 'idleRuntimeSessionTimeout': 300, # 5 min, configurable 'maxLifetime': 1800 # 30 minutes, configurable }, )

Konfiguration des Codeinterpreters

Beispiel
AWS Management Console
  1. Öffnen Sie die AgentCore Konsole unter https://console.aws.amazon.com/bedrock-agentcore/home#.

  2. Navigieren Sie zu AgentCore → Built-in Tools → Code Interpreter

  3. Wählen Sie Code-Interpreter erstellen oder ändern Sie die bestehende Konfiguration

  4. Geben Sie einen Namen für das Tool ein (optional)

  5. Konfigurieren Sie die Ausführungsrolle mit den erforderlichen Berechtigungen

  6. Wählen Sie unter Netzwerkkonfiguration die Option VPC aus

  7. Wählen Sie Ihre VPC aus der Drop-down-Liste aus

  8. Wählen Sie geeignete Subnetze aus (empfehlen Sie private Subnetze über mehrere AZs mit NAT-Gateway)

  9. Wählen Sie Sicherheitsgruppen für die ENI-Zugriffskontrolle

  10. Konfigurieren Sie die Ausführungsrolle mit den erforderlichen Berechtigungen

  11. Speichern Sie Ihre Konfiguration

AWS CLI
  1. aws bedrock-agentcore-control create-code-interpreter \ --region <Region> \ --name "my-code-interpreter" \ --description "My Code Interpreter with VPC mode for data analysis" \ --execution-role-arn "arn:aws:iam::123456789012:role/my-execution-role" \ --network-configuration '{ "networkMode": "VPC", "networkModeConfig": { "subnets": ["subnet-0123456789abcdef0", "subnet-0123456789abcdef1"], "securityGroups": ["sg-0123456789abcdef0"] } }'
AWS SDK (Python)
  1. import boto3 # Initialize the boto3 client cp_client = boto3.client( 'bedrock-agentcore-control', region_name="<Region>", endpoint_url="https://bedrock-agentcore-control.<Region>.amazonaws.com" ) # Create a Code Interpreter response = cp_client.create_code_interpreter( name="myTestVpcCodeInterpreter", description="Test code sandbox for development", executionRoleArn="arn:aws:iam::123456789012:role/my-execution-role", networkConfiguration={ 'networkMode': 'VPC', 'networkModeConfig': { 'subnets': ['subnet-0123456789abcdef0', 'subnet-0123456789abcdef1'], 'securityGroups': ['sg-0123456789abcdef0'] } } ) # Print the Code Interpreter ID code_interpreter_id = response["codeInterpreterId"] print(f"Code Interpreter ID: {code_interpreter_id}")

Konfiguration des Browser-Tools

Beispiel
AWS Management Console
  1. Öffnen Sie die AgentCore Konsole unter https://console.aws.amazon.com/bedrock-agentcore/home#.

  2. Wählen Sie im Navigationsbereich Built-in Tools

  3. Wählen Sie das Tool „Browser erstellen

  4. Geben Sie einen Namen für das Tool (optional) und eine Beschreibung (optional) ein

  5. Legen Sie die Berechtigungen für die Ausführungsrolle fest

  6. Wählen Sie im Abschnitt Netzwerkkonfiguration den VPC-Modus

  7. Wählen Sie Ihre VPC und Subnetze aus

  8. Konfigurieren Sie Sicherheitsgruppen für Webzugriffsanforderungen

  9. Legen Sie Berechtigungen für Ausführungsrollen fest

  10. Speichern Sie Ihre Konfiguration

AWS CLI
  1. aws bedrock-agentcore-control create-browser \ --region <Region> \ --name "my-browser" \ --description "My browser for web interaction" \ --network-configuration '{ "networkMode": "VPC", "networkModeConfig": { "subnets": ["subnet-0123456789abcdef0", "subnet-0123456789abcdef1"], "securityGroups": ["sg-0123456789abcdef0"] } }' \ --recording '{ "enabled": true, "s3Location": { "bucket": "my-bucket-name", "prefix": "sessionreplay" } }' \ --execution-role-arn "arn:aws:iam::123456789012:role/my-execution-role"
AWS SDK (Python)
  1. import boto3 # Initialize the boto3 client cp_client = boto3.client( 'bedrock-agentcore-control', region_name="<Region>", endpoint_url="https://bedrock-agentcore-control.<Region>.amazonaws.com" ) # Create a Browser response = cp_client.create_browser( name="myTestVpcBrowser", description="Test browser with VPC mode for development", networkConfiguration={ 'networkMode': 'VPC', 'networkModeConfig': { 'subnets': ['subnet-0123456789abcdef0', 'subnet-0123456789abcdef1'], 'securityGroups': ['sg-0123456789abcdef0'] } }, executionRoleArn="arn:aws:iam::123456789012:role/Sessionreplay", recording={ "enabled": True, "s3Location": { "bucket": "session-record-123456789012", "prefix": "replay-data" } } )

Überlegungen zu Sicherheitsgruppen

Sicherheitsgruppen fungieren als virtuelle Firewalls für Ihre Amazon Bedrock AgentCore Runtime oder als integriertes Tool, wenn sie mit einer VPC verbunden sind. Sie kontrollieren den eingehenden und ausgehenden Datenverkehr auf Instance-Ebene. So konfigurieren Sie Sicherheitsgruppen für Ihre Laufzeit:

  • Ausgehende Regeln — Definieren Sie Regeln für ausgehenden Datenverkehr, damit Ihre Amazon Bedrock AgentCore Runtime eine Verbindung zu den erforderlichen VPC-Ressourcen herstellen kann.

  • Regeln für eingehenden Datenverkehr — Stellen Sie sicher, dass die Sicherheitsgruppe der Zielressource eingehende Verbindungen von der Sicherheitsgruppe zulässt, die Ihrer Amazon AgentCore Bedrock Runtime zugeordnet ist.

  • Geringste Rechte — Wenden Sie das Prinzip der geringsten Rechte an, indem Sie nur den minimal erforderlichen Datenverkehr zulassen.

Beispiel: Verbindung zu einer Amazon RDS-Datenbank herstellen

Wenn Ihre Amazon Bedrock AgentCore Runtime eine Verbindung zu einer Amazon RDS-Datenbank herstellt, konfigurieren Sie die Sicherheitsgruppen wie folgt:

Amazon Bedrock AgentCore Runtime-Sicherheitsgruppe

  • Ausgehend — Erlaubt TCP-Verkehr zur Sicherheitsgruppe der RDS-Datenbank auf Port 3306 (MySQL).

  • Eingehend — Nicht erforderlich. Die Laufzeit initiiert nur ausgehende Verbindungen.

Amazon RDS-Datenbanksicherheitsgruppe

  • Eingehend — Erlaubt TCP-Verkehr von der Amazon Bedrock AgentCore Runtime-Sicherheitsgruppe auf Port 3306.

  • Ausgehend — Nicht erforderlich. Rückverkehr ist automatisch zulässig, da Sicherheitsgruppen statusbehaftet sind.

Beispiel: Verbindung zu Amazon EFS- oder Amazon S3 S3-Dateien herstellen

Wenn Sie Bring-Your-Own-Dateisysteme (Amazon EFS- oder Amazon S3 Files-Zugriffspunkte) auf Ihrer Agenten-Runtime konfigurieren, mountet Runtime das AgentCore Dateisystem über NFS. Dies erfordert TCP-Konnektivität auf Port 2049 zwischen den Agent-Runtime-ENIs und den Dateisystem-Mount-Zielen.

AgentCore verarbeitet TLS-Verschlüsselung und IAM-Authentifizierung automatisch. Der amazon-efs-utils Mount Helper ist in der MicroVM Runtime vorinstalliert — Sie müssen keine Mount-Software in Ihrem Container-Image konfigurieren oder installieren.

Sicherheitsgruppenkonfiguration

Konfigurieren Sie Ihre Sicherheitsgruppen so, dass NFS-Verkehr zwischen der Agent-Runtime und den Mount-Zielen Ihres Dateisystems zugelassen wird.

Agenten-Runtime-Sicherheitsgruppe — Regel für ausgehenden Datenverkehr:

Typ Protocol (Protokoll) Port-Bereich Ziel Description

NFS

TCP

2049

sg-mounttarget

Erlaubt NFS, Ziele im Dateisystem zu mounten

Zielsicherheitsgruppe zum Einhängen des Dateisystems — Regel für eingehenden Datenverkehr:

Typ Protocol (Protokoll) Port-Bereich Quelle Description

NFS

TCP

2049

sg-agentruntime

NFS von Runtime aus zulassen AgentCore

sg-mounttargetErsetzen Sie durch die Sicherheitsgruppen-ID Ihrer EFS- oder S3 Files-Mount-Ziele und sg-agentruntime durch die Sicherheitsgruppen-ID, die von Ihrer Agent-Laufzeit verwendet wird.

AWS CLI — Regel für ausgehenden Datenverkehr zur Runtime-Sicherheitsgruppe des Agenten hinzufügen:

aws ec2 authorize-security-group-egress \ --group-id sg-0123456789abcdef0 \ --protocol tcp \ --port 2049 \ --source-group sg-0987654321fedcba0

AWS CLI — Regel für eingehenden Datenverkehr zur Bereitstellung der Zielsicherheitsgruppe hinzufügen:

aws ec2 authorize-security-group-ingress \ --group-id sg-0987654321fedcba0 \ --protocol tcp \ --port 2049 \ --source-group sg-0123456789abcdef0
Anmerkung

Wenn Sie eine einzige Sicherheitsgruppe sowohl für die Agent-Laufzeit als auch für die Mount-Ziele des Dateisystems verwenden, fügen Sie eine selbstreferenzierende Regel hinzu, die eingehendes TCP auf Port 2049 von derselben Sicherheitsgruppe zulässt.

VPC-Endpunktkonfiguration

Wenn Sie Amazon Bedrock AgentCore Runtime in einer VPC ausführen, empfehlen wir dringend, die folgenden VPC-Endpunkte zu konfigurieren. Diese Endpunkte sind erforderlich, wenn Ihre VPC keinen Internetzugang hat. Sie werden dringend empfohlen, auch wenn Ihre VPC über ein NAT-Gateway verfügt, um Gebühren für die Datenverarbeitung am NAT-Gateway zu vermeiden.

Erforderliche VPC-Endpunkte

  • Amazon ECR-Anforderungen:

    • Docker-Endpunkt: com.amazonaws.region.ecr.dkr

    • ECR-API-Endpunkt: com.amazonaws.region.ecr.api

  • Amazon S3 S3-Anforderungen:

    • Gateway-Endpunkt für ECR-Docker-Layer-Speicher: com.amazonaws.region.s3

      Wichtig

      Für Container-Agenten aktualisiert das Container-Image AgentCore regelmäßig aus ECR, das Bildebenen in Amazon S3 speichert. Ohne einen S3-Gateway-VPC-Endpunkt wird dieser Datenverkehr über Ihr NAT-Gateway geleitet und es fallen Datenverarbeitungsgebühren an. Ein S3 Gateway VPC-Endpunkt ist kostenlos und macht diese Gebühren überflüssig. Wir empfehlen dringend, diesen Endpunkt für alle VPC-mode Container-Agenten hinzuzufügen, auch wenn Ihre VPC über NAT Internetzugang verfügt.

      Minimale S3-Bucket-Berechtigungen für Container-Agenten

      Der S3-Gateway-Endpunkt verwendet ein IAM-Richtliniendokument, um den Zugriff auf den Service zu beschränken. Um dem Prinzip der geringsten Rechte zu folgen, beschränken Sie die S3-Gateway-Endpunktrichtlinie nur auf den Amazon S3 S3-Bucket, den Amazon ECR zum Speichern von Bildebenen verwendet. Die folgende Richtlinie beschränkt den Zugriff auf den ECR-Layer-Speicher-Bucket für Ihre Region:

      { "Statement": [ { "Sid": "AllowECRLayerAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::prod-region-starport-layer-bucket/*"] } ] }

      regionErsetzen Sie es durch Ihre AWS Regionskennung (z. B. us-east-2 für USA Ost (Ohio)).

      Mindestberechtigungen für S3-Buckets für Agenten zur direkten Codebereitstellung

      AgentCore Speichert Ihre Code-Artefakte für Agenten, die mithilfe von Direct Code Deployment (ZIP-basiert) bereitgestellt werden, in einem internen, diensteigenen S3-Bucket. Beschränken Sie die S3-Gateway-Endpunktrichtlinie nur auf den Code-Artefakt-Bucket für Ihre Region:

      { "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::acr-code-*-region-an", "arn:aws:s3:::acr-code-*-region-an/*" ], "Condition": { "StringEquals": { "aws:PrincipalServiceName": "bedrock-agentcore.amazonaws.com" } } } ] }

      regionErsetzen Sie es durch Ihre AWS Regionskennung (z. B.us-west-2).

      Anmerkung

      Die AgentCore Code-Artefakt-Buckets werden in Allzweck-Buckets für den regionalen Kontonamespace erstellt. AWS Kann nur die tatsächlichen Bucket-Namen besitzen, die vom Dienst verwendet werden. Die aws:PrincipalServiceName Bedingung stellt sicher, dass nur der AgentCore Dienstprinzipal über diese Endpunktrichtlinie auf Buckets zugreifen kann.

      Anmerkung

      Wenn Sie auch persistente Dateisysteme verwenden, fügen Sie dieser Richtlinie den Sitzungsspeicher-Bucket (acr-storage-*-region-an) hinzu. Informationen zu den erforderlichen Berechtigungen finden Sie unter Netzwerkanforderungen.

  • CloudWatch Voraussetzungen:

    • Protokolliert den Endpunkt: com.amazonaws.region.logs

Anmerkung

Stellen Sie sicher, dass Sie es durch Ihre spezifische Region region ersetzen, falls es sich um eine andere Region handelt.

Anmerkung

Wenn Sie Dateisystemkonfigurationen verwenden, stellen Sie sicher, dass Ihre VPC die Netzwerkanforderungen erfüllt.

Überlegungen zum Internetzugang

Wenn Sie Amazon Bedrock AgentCore Runtime oder ein integriertes Tool mit einer Virtual Private Cloud (VPC) verbinden, hat es standardmäßig keinen Internetzugang. Standardmäßig können diese Ressourcen nur mit Ressourcen innerhalb derselben VPC kommunizieren. Wenn Ihre Runtime oder Ihr Tool Zugriff sowohl auf VPC-Ressourcen als auch auf das Internet benötigt, müssen Sie Ihre VPC entsprechend konfigurieren.

Architektur des Internetzugangs

Um den Internetzugang für Ihre VPC-connected Amazon Bedrock AgentCore Runtime oder Ihr integriertes Tool zu aktivieren, konfigurieren Sie Ihre VPC mit den folgenden Komponenten:

  • Private Subnetze — Platzieren Sie die Netzwerkschnittstellen der Amazon Bedrock AgentCore Runtime oder des Tools in privaten Subnetzen.

  • Öffentliche Subnetze mit einem NAT-Gateway — Stellen Sie ein NAT-Gateway in einem oder mehreren öffentlichen Subnetzen bereit, um ausgehenden Internetzugang für private Ressourcen bereitzustellen.

  • Internet-Gateway (IGW) — Schließen Sie ein Internet-Gateway an Ihre VPC an, um die Kommunikation zwischen dem NAT-Gateway und dem Internet zu ermöglichen.

Weiterleitungskonfiguration

Aktualisieren Sie Ihre Subnetz-Routentabellen wie folgt:

  • Routing-Tabelle für private Subnetze — Fügen Sie eine Standardroute hinzu (0.0.0. 0/0), die auf das NAT-Gateway verweist. Dadurch kann ausgehender Datenverkehr von der Runtime oder dem Tool das Internet erreichen.

  • Routing-Tabelle für öffentliche Subnetze — Fügen Sie eine Standardroute hinzu (0.0.0. 0/0), die auf das Internet-Gateway verweist. Dadurch kann das NAT-Gateway mit dem Internet kommunizieren.

Wichtig

Durch die Verbindung von Amazon Bedrock AgentCore Runtime und integrierten Tools mit öffentlichen Subnetzen wird kein Internetzugang bereitgestellt. Verwenden Sie immer private Subnetze mit NAT-Gateways für die Internetverbindung.

Überwachung und Problembehebung

Um Ihre VPC-connected Amazon Bedrock AgentCore Runtime und Tools zu überwachen und Fehler zu beheben:

CloudWatch Logs

Aktivieren Sie CloudWatch Logs für Ihre Amazon Bedrock AgentCore Runtime, um Verbindungsprobleme zu identifizieren:

  • Überprüfen Sie die Fehlermeldungen im Zusammenhang mit der VPC-Konnektivität

  • Suchen Sie nach Timeoutfehlern, wenn Sie eine Verbindung zu VPC-Ressourcen herstellen

  • Überwachen Sie die Initialisierungszeiten (VPC-Konnektivität kann die Startzeiten der Sitzung verlängern)

Häufige Probleme und Lösungen

  • Verbindungs-Timeouts:

    • Stellen Sie sicher, dass die Sicherheitsgruppenregeln korrekt sind

    • Stellen Sie sicher, dass die Routentabellen ordnungsgemäß konfiguriert sind

    • Stellen Sie sicher, dass die Zielressource läuft und Verbindungen akzeptiert

  • Fehler bei der DNS-Auflösung:

    • Stellen Sie sicher, dass die DNS-Auflösung in Ihrer VPC aktiviert ist

    • Stellen Sie sicher, dass Ihre DHCP-Optionen korrekt konfiguriert sind

  • Fehlende ENIs:

    • Überprüfen Sie die IAM-Berechtigungen, um sicherzustellen, dass die serviceverknüpfte Rolle über die entsprechenden Berechtigungen verfügt

    • Suchen Sie nach Servicekontingenten, die möglicherweise erreicht wurden

Probleme mit dem Codeinterpreter

  • Der Codeinterpreter ruft beim Versuch, einen öffentlichen Endpunkt aufzurufen, Aufruf-Timeouts auf:

    • Stellen Sie sicher, dass VPC mit einem NAT-Gateway für den Internetzugang konfiguriert ist

  • Aufrufe für einen Codeinterpreter mit privaten VPC-Endpunkten lösen "" Fehler aus: AccessDenied

    • Stellen Sie sicher, dass die bei der Erstellung des Codeinterpreters übergebene Ausführungsrolle über die richtigen Berechtigungen für den AWS Dienst verfügt, für den der VPC-Endpunkt konfiguriert wurde

  • Beim Aufrufen eines Codeinterpreters mit einigen privaten VPC-Endpunkten wird der Fehler „Anmeldeinformationen konnten nicht gefunden werden“ angezeigt:

    • Stellen Sie sicher, dass die Ausführungsrolle bei der Erstellung des Codeinterpreters bereitgestellt wurde

Probleme mit dem Browser-Tool

  • Live-View/Connection Stream kann keine Webseiten laden und schlägt mit Verbindungs-Timeouts fehl:

    • Überprüfen Sie, ob der Browser mit einem privaten Subnetz mit NAT-Gateway erstellt wurde

VPC-Konnektivität testen

Um zu überprüfen, ob Ihre AgentCore Runtime und Ihre Tools über die richtige VPC-Konnektivität verfügen, können Sie Verbindungen zu Ihren privaten Ressourcen testen und sicherstellen, dass Netzwerkschnittstellen in den angegebenen Subnetzen korrekt erstellt wurden.

Um zu überprüfen, ob Ihr AgentCore Tool über Internetzugang verfügt, können Sie einen Code-Interpreter mit Ihrer VPC-Konfiguration konfigurieren und die Invoke API verwendenexecuteCommand, um mithilfe eines curl Befehls eine Verbindung zu einer öffentlichen API oder Website herzustellen und die Antwort zu überprüfen. Wenn die Verbindung unterbrochen wird, überprüfen Sie Ihre VPC-Konfiguration, insbesondere Ihre Routing-Tabellen und das NAT-Gateway-Setup.

# Using awscurl awscurl -X POST \ "https://bedrock-agentcore.<Region>.amazonaws.com/code-interpreters/<code_interpreter_id>/tools/invoke" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "x-amzn-code-interpreter-session-id: your-session-id" \ --service bedrock-agentcore \ --region <Region> \ -d '{ "name": "executeCommand", "arguments": { "command": "curl amazon.com" } }'

Probleme mit der Dateisystem-Konnektivität

Wenn ein Dateisystem-Mount fehlschlägt, gibt die InvokeAgentRuntime API den HTTP-Status 424 (Fehlgeschlagene Abhängigkeit) zurück. Verwenden Sie die folgenden Abschnitte, um die Grundursache zu diagnostizieren.

Beim Einhängen des Dateisystems wird das Zeitlimit überschritten

Symptome: Agentenaufrufe mit Dateisystemkonfigurationen schlagen nach einer längeren Verzögerung fehl. Der Fehler weist darauf hin, dass das Zeitlimit für den Mount-Vorgang überschritten wurde.

Häufige Ursachen und Lösungen:

1. Es fehlen Regeln für Sicherheitsgruppen

Überprüfen Sie die Regel für ausgehenden Datenverkehr in Ihrer Runtime-Sicherheitsgruppe für Agenten:

aws ec2 describe-security-groups \ --group-ids sg-0123456789abcdef0 \ --query 'SecurityGroups[0].IpPermissionsEgress[?ToPort==`2049`]'

Überprüfen Sie die Regel für eingehenden Datenverkehr in Ihrer Mount-Zielsicherheitsgruppe:

aws ec2 describe-security-groups \ --group-ids sg-0987654321fedcba0 \ --query 'SecurityGroups[0].IpPermissions[?ToPort==`2049`]'

Wenn eine der Abfragen leere Ergebnisse zurückgibt, fügen Sie die fehlende Regel hinzu, wie in Beispiel: Verbindung zu Amazon EFS- oder Amazon S3 S3-Dateien herstellen gezeigt.

2. Kein Mount-Ziel in der Availability Zone des Agenten

Die Agenten-Laufzeit befindet sich möglicherweise in einer Availability Zone, in der kein Mount-Ziel existiert. Überschneidung überprüfen:

# Get agent runtime subnet AZs aws ec2 describe-subnets \ --subnet-ids subnet-0123456789abcdef0 subnet-0123456789abcdef1 \ --query 'Subnets[*].[SubnetId, AvailabilityZoneId]' --output table # Get EFS mount target AZs aws efs describe-mount-targets \ --file-system-id fs-0123456789abcdef0 \ --query 'MountTargets[*].[AvailabilityZoneId, LifeCycleState]' --output table

Lösung: Erstellen Sie in jeder Availability Zone, in der sich Ihre Agenten-Runtime-Subnetze befinden, ein Mount-Ziel, oder beschränken Sie Agent-Runtime-Subnetze auf Availability Zones, in denen Mount-Ziele existieren.

3. In der Routentabelle fehlt die lokale Route

Stellen Sie sicher, dass die Routing-Tabelle, die Ihren Agent-Runtime-Subnetzen zugeordnet ist, die lokale VPC-Route enthält:

aws ec2 describe-route-tables \ --filters "Name=association.subnet-id,Values=subnet-0123456789abcdef0" \ --query 'RouteTables[0].Routes[?DestinationCidrBlock]'

Das Einhängen des Dateisystems schlägt mit "“ fehl ResourceNotFound

Symptome: Der Agentenaufruf schlägt sofort (ohne Timeout) fehl und es wird ein ResourceNotFound Fehler beim Verweis auf den Hostnamen des Dateisystems angezeigt.

Häufige Ursachen und Lösungen:

1. Fehler bei der DNS-Auflösung — Die VPC kann den Hostnamen des Dateisystem-Mount-Ziels nicht auflösen.

Überprüfen Sie die DNS-Einstellungen auf Ihrer VPC:

aws ec2 describe-vpc-attribute \ --vpc-id vpc-0123456789abcdef0 \ --attribute enableDnsSupport aws ec2 describe-vpc-attribute \ --vpc-id vpc-0123456789abcdef0 \ --attribute enableDnsHostnames

Beide müssen zurückkehrentrue. Wenn nicht, aktiviere sie:

aws ec2 modify-vpc-attribute --vpc-id vpc-0123456789abcdef0 --enable-dns-support aws ec2 modify-vpc-attribute --vpc-id vpc-0123456789abcdef0 --enable-dns-hostnames

2. Mount-Ziel nicht im Status „Verfügbar“ — Das Mount-Ziel wird möglicherweise noch erstellt oder wurde möglicherweise gelöscht.

# For EFS aws efs describe-mount-targets --file-system-id fs-0123456789abcdef0 # For S3 Files aws s3files list-mount-targets --file-system-id fs-0123456789abcdef0

Stellen Sie sicher, dass das Mount-Ziel LifeCycleState available Wenn das Mount-Ziel fehlt, erstellen Sie es in den entsprechenden Subnetzen neu.

3. Dateisystem oder Zugriffspunkt gelöscht — Die Ressource, auf die in der Laufzeitkonfiguration des Agenten verwiesen wird, ist nicht mehr vorhanden. Überprüfen und aktualisieren Sie die Agenten-Laufzeit mit gültigen ARNs.

Anmerkung

In seltenen Fällen kann das Bereitstellen von S3-Dateien aufgrund des zeitlichen Ablaufs der DNS-Auflösung mit einem vorübergehenden ResourceNotFound Fehler fehlschlagen. Ein erneuter Aufruf behebt dieses Problem in der Regel. Wenn der Fehler weiterhin besteht, überprüfen Sie, ob sich die Mount-Ziele im Status befinden. Available

Nichtübereinstimmung der Availability Zone (zeitweilige Ausfälle)

Symptome: Dateisystem-Bereitstellungen sind zeitweise erfolgreich — einige Aufrufe funktionieren, während andere aufgrund von Timeouts fehlschlagen.

Warum das passiert: Ihre Agenten-Laufzeit hat Subnetze in mehreren Availability Zones, aber Mount-Ziele existieren nur in einigen von ihnen. Wenn der Agent in einer AZ ohne Mount-Ziel platziert wird, kommt es bei der Bereitstellung zu einem Timeout.

Lösung: Erstellen Sie entweder Mount-Ziele in allen Availability Zones, in denen sich Ihre Agenten-Runtime-Subnetze befinden (empfohlen), oder entfernen Sie Agent-Runtime-Subnetze, die sich in Availability Zones ohne Mount-Ziele befinden.

# List all EFS mount target AZs aws efs describe-mount-targets \ --file-system-id fs-0123456789abcdef0 \ --query 'MountTargets[*].AvailabilityZoneId' --output text # Create a mount target in a missing AZ aws efs create-mount-target \ --file-system-id fs-0123456789abcdef0 \ --subnet-id subnet-in-missing-az \ --security-groups sg-0987654321fedcba0
Anmerkung

Verwenden Sie für S3-Dateien aws s3files create-mount-target dieselben Parameter.