Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configuraciones del sistema de archivos para AgentCore Runtime
AgentCore Runtime admite sistemas de archivos persistentes mediante el filesystemConfigurations parámetro. Cada configuración monta el almacenamiento en la ruta que usted especifique. No necesita un código de montaje personalizado, contenedores privilegiados ni una orquestación de descargas.
AgentCore Runtime admite dos categorías de configuraciones de sistemas de archivos:
-
Almacenamiento administrado: Service-managed almacenamiento en el que se AgentCore gestionan todas las operaciones de almacenamiento. Hay dos tipos gestionados, uno para cada tipo de procesamiento:
-
Almacenamiento de sesiones (versión preliminar): Per-session almacenamiento en tiempos de ejecución de microVM que persiste a lo largo stop/resume de los ciclos. Aislado por sesión. No se requiere VPC.
-
Volúmenes de proveedores de capacidad: volúmenes de Amazon EBS en tiempos de ejecución de instancias, definidos en el proveedor de capacidad y montados por nombre lógico. Persiste durante toda la sesión. stop/resume
-
-
Bring-your-own sistema de archivos: adjunte sus propios puntos de acceso a Amazon S3 Files o Amazon EFS directamente al tiempo de ejecución de su agente. Se comparte entre sesiones y agentes. Se requiere una VPC. Disponible en tiempos de ejecución de microVM.
El tipo administrado depende del tipo de procesamiento del tiempo de ejecución. Usa el almacenamiento de sesión en los tiempos de ejecución de microVM y los volúmenes del proveedor de capacidad en los tiempos de ejecución de las instancias. En los tiempos de ejecución de microVM, puede combinar el almacenamiento de sesiones con sus propios sistemas de archivos en un único tiempo de ejecución de agente (hasta 5 configuraciones en total).
Las opciones de almacenamiento de un vistazo
En la tabla siguiente se comparan los tipos de configuración de sistemas de archivos disponibles.
| Categoría | Tipo | Aislamiento | Persistencia | Tipo de computación | Se requiere una VPC | Lo mejor para |
|---|---|---|---|---|---|---|
|
Administrado |
Almacenamiento de sesiones (versión preliminar) |
Per-session |
Sobrevive stop/resume; caduca 14 días de inactividad; se restablece al actualizar la versión |
Solo microVM |
No |
Espacio virtual, paquetes instalados, código, archivos de proyecto, estado del agente |
|
Administrado |
Volumen de proveedores de capacidad |
Per-session |
Sobrevive stop/resume; se conserva hasta que elimines la sesión |
Solo instancias |
Sí (configurado en el proveedor de capacidad) |
Espacio virtual, archivos de espacio de trabajo, cachés y puntos de control para sesiones de instancias de larga duración |
|
CHICO |
Amazon S3 Files |
Compartido: varias sesiones y agentes acceden a los mismos datos |
Customer-managed (permanente, se sincroniza con el bucket de S3) |
MicroVM |
Sí |
Conjuntos de datos accesibles mediante operaciones de archivos estándar y mediante las API de S3 |
|
NIÑO |
Amazon EFS |
Compartido: varias sesiones y agentes acceden a los mismos datos |
Customer-managed (permanente hasta que lo elimines) |
microVM |
Sí |
Bibliotecas de herramientas compartidas, ponderaciones de modelos, colaboración entre múltiples agentes de lectura y escritura |
Inicio rápido
Las siguientes listas de comprobación proporcionan pasos resumidos para configurar cada tipo de sistema de archivos.
Almacenamiento de sesiones administrado (versión preliminar)
El almacenamiento de sesiones está disponible en tiempos de ejecución de microVM.
-
No se requieren permisos de VPC ni de IAM adicionales.
-
--filesystem-configurations '[{"sessionStorage": {"mountPath": "/mnt/workspace"}}]'Añádelos a tucreate-agent-runtimeo llama.update-agent-runtime -
Invoca al agente con un
--runtime-session-id. -
Detenga la sesión y, a continuación, reanude con la misma
--runtime-session-id. Verify/mnt/workspaceconserva sus datos.
Volumen de proveedores de capacidad
Los volúmenes de los proveedores de capacidad están disponibles en los tiempos de ejecución de las instancias.
-
Defina uno o más volúmenes de Amazon EBS con nombre en el proveedor de capacidad al crearlo (en
ec2Configuration.volumes). -
Cree el tiempo de ejecución del agente con un
capacityProviderConfigurationque haga referencia al proveedor de capacidad. -
--filesystem-configurations '[{"capacityProviderVolume": {"volumeName": "scratch", "mountPath": "/mnt/scratch"}}]'Añádalo a la mismacreate-agent-runtimellamada haciendo referencia a un volumen por su nombre lógico. -
Invoca al agente con un.
--runtime-session-idDetenga la sesión y, a continuación, reanude con la misma--runtime-session-id. Verify/mnt/scratchconserva sus datos.
Para ver el tutorial completo, consulte Introducción a las instancias mediante la AWS CLI.
Bring-your-own sistema de archivos
Punto de acceso a Amazon S3 Files
-
s3files:ClientMountAñadas3files:ClientWriteys3files:GetAccessPointa su rol de ejecución con unas3files:AccessPointArncondición. -
Permita que el puerto TCP 2049 salga del grupo de seguridad en tiempo de ejecución del agente al grupo de seguridad de destino del montaje de archivos S3.
-
Confirme que el destino de montaje de los archivos de S3 esté en la misma VPC y zona de disponibilidad que las subredes de tiempo de ejecución de sus agentes.
-
--filesystem-configurations '[{"s3FilesAccessPoint": {"accessPointArn": "<your-access-point-arn>", "mountPath": "/mnt/s3data"}}]'Agréguelo a sucreate-agent-runtimeo llame.update-agent-runtime -
Invoca al agente. Los archivos se
/mnt/s3datasincronizan bidireccionalmente con el bucket S3 de respaldo.
Punto de acceso Amazon EFS
-
Añada
elasticfilesystem:ClientMountyelasticfilesystem:ClientWritea su rol de ejecución con unaelasticfilesystem:AccessPointArncondición. -
Permita que el puerto TCP 2049 salga del grupo de seguridad en tiempo de ejecución del agente al grupo de seguridad de destino de montaje EFS.
-
Confirme que el destino de montaje de EFS esté en la misma zona de disponibilidad que al menos una de las subredes en tiempo de ejecución del agente.
-
--filesystem-configurations '[{"efsAccessPoint": {"accessPointArn": "<your-access-point-arn>", "mountPath": "/mnt/efs"}}]'Agréguelo a sucreate-agent-runtimeoupdate-agent-runtimellame. -
Invoca al agente. Sus archivos están disponibles en
/mnt/efs.
Tanto S3 Files como EFS requieren conectividad de VPC en el tiempo de ejecución del agente.
Cómo funciona cada tipo
En las siguientes secciones se describe cómo funciona cada tipo de sistema de archivos en AgentCore Runtime.
Bring-your-own sistemas de archivos
Al configurar un sistema de archivos personalizado, AgentCore Runtime monta el punto de acceso especificado en cada sesión en la ruta que configure. Los datos se comparten: varias sesiones, varios agentes o aplicaciones externas pueden acceder al mismo sistema de archivos de forma simultánea.
AgentCore gestiona todas las operaciones de montaje de forma automática. No es necesario instalar los ayudantes de montaje, gestionar los certificados TLS ni escribir el código de montaje en el agente.
nota
Cuando creas un punto de acceso (archivos S3 o EFS), especificas un ID de usuario POSIX (UID) y un ID de grupo (GID). Todas las operaciones de archivos a través del punto de acceso se ejecutan con esta identidad. Configúrala UID/GID para que coincida con el usuario con el que se ejecuta el proceso del contenedor (normalmente 1000:1000 para los contenedores que no son raíz, o 0:0 para los usuarios root).
Flujo de montaje de archivos de Amazon S3
Al configurar un punto de acceso a S3 Files, se produce la siguiente secuencia:
-
Creas un sistema de archivos de S3 Files (respaldado por un bucket de S3) y montas los destinos en tu VPC.
-
Creas un punto de acceso a S3 Files especificando el POSIX UID/GID y el directorio raíz.
-
El tiempo de ejecución del agente se configura con el ARN del punto de acceso y la ruta de montaje.
-
Al invocar con un nuevo identificador de sesión, AgentCore aprovisiona una microVM con acceso de red a tu VPC.
-
La microVM monta el sistema de archivos mediante TLS con autenticación de IAM (puerto 2049) a NFSv4.2 través de su VPC.
-
Su agente lee y escribe archivos en la ruta de montaje. Los cambios se sincronizan automáticamente con el bucket S3 correspondiente.
Semántica de los archivos S3
-
Sincronización bidireccional entre el sistema de archivos y el bucket S3 de respaldo
-
Close-to-open coherencia para los clientes de NFS; coherencia eventual de S3 para el acceso desde el lado del bucket
-
Tamaño máximo de archivo: 48 TiB; profundidad máxima de directorio: 1000 niveles
-
No se admiten: enlaces físicos, clases de almacenamiento de archivos de S3 (Glacier), metadatos de objetos de S3 personalizados, PNF
Flujo de montaje de Amazon EFS
Al configurar un punto de acceso EFS, se produce la siguiente secuencia:
-
Se crea un sistema de archivos EFS y se montan los destinos en la VPC (uno por zona de disponibilidad).
-
Crea un punto de acceso EFS especificando el POSIX UID/GID y el directorio raíz.
-
El tiempo de ejecución del agente se configura con el ARN del punto de acceso y la ruta de montaje.
-
Al invocar con un nuevo identificador de sesión, AgentCore aprovisiona una microVM con acceso de red a tu VPC.
-
La microVM monta el sistema de archivos mediante NFSv4.1 TLS (puerto 2049) mediante el destino de montaje en la misma zona de disponibilidad.
-
Su agente lee y escribe archivos en la ruta de montaje mediante operaciones de archivos estándar.
Semántica de EFS
-
POSIX completo: enlaces físicos, enlaces simbólicos, bloqueo de archivos de asesoramiento
-
Acceso simultáneo de lectura y escritura desde múltiples sesiones y agentes
-
Close-to-open coherencia
-
Tamaño máximo de archivo: 47,9 TiB; profundidad máxima de directorio: 1000 niveles
Almacenamiento de sesiones administrado (vista previa)
Persiste el estado de la sesión en stop/resume una configuración de sistema de archivos mediante el almacenamiento de sesiones administrado. AgentCore El almacenamiento de sesiones gestionado en tiempo de ejecución es una capacidad totalmente gestionada por servicios en la que AgentCore Runtime gestiona todas las operaciones de almacenamiento. Su agente lee y escribe en un soporte de sistema de archivos local y el entorno de ejecución replica los datos de forma transparente en el almacenamiento del servicio durante toda la sesión.
El almacenamiento de las sesiones se aísla por sesión: cada sesión solo puede acceder a su propio almacenamiento y no puede leer ni escribir datos de otras sesiones del mismo tiempo de ejecución del agente o de sesiones de diferentes tiempos de ejecución de agentes.
Al configurar el almacenamiento de sesiones en el tiempo de ejecución de un agente, cada sesión obtiene un directorio persistente en la ruta de montaje que especifique. El ciclo de vida funciona de la siguiente manera:
-
Primera invocación de una sesión: se aprovisiona un nuevo proceso aislado. El agente ve un directorio vacío en la ruta de montaje.
-
El agente escribe archivos: todas las operaciones de archivos (lectura, escritura, mkdir, cambiar el nombre) funcionan normalmente, de forma similar a las de un sistema de archivos local, y los datos se replican de forma asincrónica en un almacenamiento duradero.
-
La sesión se detiene: finaliza el procesamiento. Los datos que aún no se han conservado se almacenan de forma duradera durante el cierre correcto.
-
Reanudar con la misma sesión: se aprovisiona un nuevo procesamiento y el estado del sistema de archivos se restaura a partir de un almacenamiento duradero. El agente puede continuar desde donde lo dejó.
Semántica del sistema de archivos
El almacenamiento de sesiones proporciona un sistema de archivos Linux estándar en la ruta de montaje configurada. Las herramientas y operaciones estándar funcionan sin modificaciones:ls,cat,mkdir,git,npm,pip, y cargo todas funcionan según lo esperado.
Operaciones compatibles
Archivos, directorios y enlaces simbólicos normales. Leer, escribir, cambiar el nombre chmod chownstat, eliminar yreaddir: operaciones de archivos POSIX estándar utilizadas por las herramientas de desarrollo comunes.
Límites
Para conocer los límites de almacenamiento de la sesión, incluidos el tamaño máximo de almacenamiento, el recuento de archivos y la profundidad del directorio, consulte los límites de almacenamiento de la sesión.
Operaciones no compatibles
No se admiten las siguientes operaciones del sistema de archivos:
-
Vínculos físicos: utilice enlaces simbólicos en su lugar.
-
Archivos de dispositivo, conectores FIFO o UNIX:
mknodno es compatible. -
Atributos extendidos (xattr): no se admiten las herramientas que dependen de los metadatos de xattr.
-
fallocate: no se admite la preasignación de archivos dispersos.
-
Bloqueo de archivos entre sesiones: los bloqueos consultivos funcionan dentro de una sesión en ejecución, pero no persisten durante toda la sesión. stop/resume Las herramientas que utilizan el bloqueo basado en archivos (por ejemplo
git) no se ven afectadas.
nota
Los permisos se almacenan pero no se aplican dentro de la sesión. chmody stat funcionan correctamente, pero las comprobaciones de acceso siempre se realizan correctamente porque el agente se ejecuta como el único usuario de la microVM.
Ciclo vital de almacenamiento de sesiones
Los datos de la sesión se eliminan (se restablecen a un estado limpio) en los siguientes escenarios:
-
La sesión no se invoca durante 14 días.
-
Se actualiza la versión de ejecución del agente. Al invocar una sesión después de la actualización de una versión, se aprovisiona un sistema de archivos nuevo.
Use DeleteAgentRuntime o DeleteAgentRuntimeEndpoint elimine todos los datos de almacenamiento de la sesión asociados al tiempo de ejecución o al punto final.
Volúmenes de proveedores de capacidad (instancias)
Los volúmenes del proveedor de capacidad son el tipo de almacenamiento administrado para los tiempos de ejecución que utilizan el tipo de procesamiento de las instancias. En lugar de especificar el almacenamiento en el tiempo de ejecución, usted define los volúmenes de Amazon EBS con nombre en el proveedor de capacidad y el tiempo de ejecución los monta por nombre lógico. AgentCore crea, adjunta y conserva los volúmenes por usted; los volúmenes de Amazon EBS no los aprovisiona ni los monta usted mismo.
Al igual que el almacenamiento de sesiones, los volúmenes de los proveedores de capacidad se aíslan por sesión y persisten en toda la sesión. stop/resume Como una sesión en las instancias es una instancia EC2 dedicada, el volumen sigue el ciclo de vida de esa sesión:
-
Defina los volúmenes en el proveedor de capacidad: cuando cree el proveedor de capacidad, incluya uno o más volúmenes de Amazon EBS
ec2Configuration.volumesnamesizeGiB, cada uno con un cifrado lógico y opcionalvolumeTypey.iopsthroughputsnapshotId -
Haga referencia a un volumen desde el tiempo de ejecución: añada una
capacityProviderVolumeentradafilesystemConfigurationsconvolumeNamey a.mountPath -
Invoca al agente por primera vez: AgentCore crea el volumen de Amazon EBS y lo adjunta a la instancia EC2 de la sesión en tu ruta de montaje.
-
Detenga la sesión: AgentCore termina la instancia EC2 pero conserva el volumen.
-
Reanudar con la misma sesión: AgentCore aprovisiona una nueva instancia y vuelve a adjuntar el volumen existente para que los datos permanezcan intactos. Es posible que una sesión reiniciada se ejecute en una instancia con los parches más recientes.
El volumen se conserva durante estas paradas, incluso cuando una sesión alcanza su duración máxima. Solo se elimina cuando se elimina la sesión o cuando se elimina el proveedor de capacidad (que elimina sus sesiones y sus volúmenes).
Para obtener información sobre la administración de los datos de estos volúmenes, consulte Administrar los datos en instancias en tiempo de ejecución.
Los agentes pueden compartir un volumen, pero el uso compartido no es automático. Para montar un volumen para el tiempo de ejecución de un agente, ese tiempo de ejecución debe configurar el mismo capacityProviderVolume (porvolumeName) por sí solofilesystemConfigurations. Cuando dos de estos tiempos de ejecución se invocan de la misma maneraruntimeSessionId, se ejecutan en la misma instancia y cada uno monta el volumen compartido para que puedan colaborar en los mismos archivos. La configuración capacityProviderVolume controla qué volúmenes se AgentCore montan para un tiempo de ejecución; por sí sola, no aísla los datos entre los agentes de una sesión. El límite de aislamiento es la sesión. Para ver el modelo de aislamiento de sesiones y agentes, consulte el modelo de seguridad y los permisos para las instancias en tiempo de ejecución.
En los tiempos de ejecución de las instancias, no se admiten el almacenamiento de sesiones administrado ni el tipo «traiga su propio tipo». Estos tipos son, y. sessionStorage s3FilesAccessPoint efsAccessPoint Si se especifica cualquiera de ellos al lado, se produce un capacityProviderConfiguration error con unValidationException. Para saber cómo definir volúmenes en un proveedor de capacidad y montarlos, consulte Cómo empezar a utilizar instancias mediante la AWS CLI y el almacenamiento persistente entre sesiones.
Requisitos previos para crear sus propios sistemas de archivos
Antes de configurar un sistema de archivos personalizado, complete los siguientes requisitos previos.
Configuración de la VPC
El tiempo de ejecución de su agente debe usar. networkMode: VPC Las subredes que especifique deben superponerse con las zonas de disponibilidad de destino del montaje del sistema de archivos.
Permisos de IAM
La función de ejecución del agente en tiempo de ejecución debe incluir permisos para montar el sistema de archivos.
Permisos de IAM para los archivos S3
{ "Effect": "Allow", "Action": [ "s3files:ClientMount", "s3files:ClientWrite", "s3files:GetAccessPoint" ], "Resource": "arn:aws:s3files:<region>:<account-id>:file-system/<file-system-id>", "Condition": { "ArnEquals": { "s3files:AccessPointArn": "arn:aws:s3files:<region>:<account-id>:file-system/<file-system-id>/access-point/<access-point-id>" } } }
Permisos de IAM para EFS
{ "Effect": "Allow", "Action": [ "elasticfilesystem:ClientMount", "elasticfilesystem:ClientWrite" ], "Resource": "arn:aws:elasticfilesystem:<region>:<account-id>:file-system/<file-system-id>", "Condition": { "ArnEquals": { "elasticfilesystem:AccessPointArn": "arn:aws:elasticfilesystem:<region>:<account-id>:access-point/<access-point-id>" } } }
Omita ClientWrite si su agente solo necesita acceso de lectura. El s3files:GetAccessPoint permiso es necesario para validar el punto de acceso de S3 Files durante la creación del agente en tiempo de ejecución.
Grupos de seguridad
Permita el TCP saliente en el puerto 2049 desde el grupo de seguridad en tiempo de ejecución del agente al grupo de seguridad de destino del montaje. Permita el TCP entrante en el puerto 2049 del grupo de seguridad de destino de montaje desde el grupo de seguridad en tiempo de ejecución del agente.
Configure los sistemas de archivos
En las siguientes secciones se muestra cómo configurar cada tipo de sistema de archivos.
Configure un punto de acceso a Amazon S3 Files
Para configurar un punto de acceso a S3 Files, especifique el ARN del punto de acceso y la ruta de montaje. filesystemConfigurations El tiempo de ejecución del agente debe utilizar el modo de red de VPC.
ejemplo
Configure un punto de acceso de Amazon EFS
Para configurar un punto de acceso EFS, especifique el ARN del punto de acceso y la ruta de montaje. filesystemConfigurations El tiempo de ejecución del agente debe utilizar el modo de red de VPC.
ejemplo
Configure el almacenamiento de sesiones administrado
filesystemConfigurationsAñádalo con una sessionStorage entrada al crear o actualizar el tiempo de ejecución de un agente.
ejemplo
También puede agregar almacenamiento de sesión a un tiempo de ejecución de agente existente utilizando UpdateAgentRuntime el mismo filesystemConfigurations parámetro.
Configure un volumen de proveedor de capacidad
Para montar un volumen de proveedor de capacidad, primero defina el volumen en el proveedor de capacidad. A continuación, haga referencia a él por su nombre filesystemConfigurations cuando cree el tiempo de ejecución del agente. Esto se aplica a los tiempos de ejecución que utilizan el tipo de procesamiento de las instancias.
ejemplo
volumeNameDebe coincidir con un volumen definido en el del proveedor de capacidad. ec2Configuration.volumes Para ver los pasos para definir los volúmenes en el proveedor de capacidad, consulte Introducción a las instancias mediante la AWS CLI.
Combine los sistemas de archivos
Puede combinar el almacenamiento de sesiones gestionado con sistemas de archivos personalizados en un único entorno de ejecución de agente de microVM. En el siguiente ejemplo, se configuran los tres tipos.
import boto3 client = boto3.client("bedrock-agentcore-control", region_name="us-west-2") response = client.create_agent_runtime( agentRuntimeName="full-stack-agent", roleArn="arn:aws:iam::<account-id>:role/AgentExecutionRole", networkConfiguration={ "networkMode": "VPC", "networkModeConfig": { "subnets": ["<subnet-id-1>", "<subnet-id-2>"], "securityGroups": ["<security-group-id>"] } }, agentRuntimeArtifact={ "containerConfiguration": { "containerUri": "<account-id>.dkr.ecr.<region>.amazonaws.com/my-agent:latest" } }, filesystemConfigurations=[ { "s3FilesAccessPoint": { "accessPointArn": "arn:aws:s3files:<region>:<account-id>:file-system/<file-system-id>/access-point/<access-point-id>", "mountPath": "/mnt/datasets" } }, { "efsAccessPoint": { "accessPointArn": "arn:aws:elasticfilesystem:<region>:<account-id>:access-point/<access-point-id>", "mountPath": "/mnt/tools" } }, { "sessionStorage": { "mountPath": "/mnt/workspace" } } ] )
Invoca y usa el almacenamiento persistente
Todos los sistemas de archivos configurados están disponibles en sus rutas de montaje cuando se invoca al agente. Bring-your-own se puede acceder inmediatamente a los sistemas de archivos (archivos S3, EFS) en cada invocación. El almacenamiento de sesiones administradas conserva los datos a lo largo de stop/resume los ciclos con el mismo runtimeSessionId uso.
Ejemplo: uso del almacenamiento de sesiones en varios stop/resume ciclos
# First invocation — agent sets up the project aws bedrock-agentcore invoke-agent-runtime \ --agent-runtime-arn "arn:aws:bedrock-agentcore:us-west-2:111122223333:agent-runtime/coding-agent" \ --runtime-session-id "session-001" \ --payload '{"prompt": "Set up the project and install dependencies in /mnt/workspace"}' # Stop the session aws bedrock-agentcore stop-runtime-session \ --agent-runtime-arn "arn:aws:bedrock-agentcore:us-west-2:111122223333:agent-runtime/coding-agent" \ --runtime-session-id "session-001" # Resume later — the project is exactly where the agent left it aws bedrock-agentcore invoke-agent-runtime \ --agent-runtime-arn "arn:aws:bedrock-agentcore:us-west-2:111122223333:agent-runtime/coding-agent" \ --runtime-session-id "session-001" \ --payload '{"prompt": "Run the tests and fix any failures"}'
El agente lo ve /mnt/workspace exactamente como lo dejó: los archivos fuente, los paquetes instalados, los artefactos de compilación y el historial.git permanecen intactos. Al reanudar una sesión, el nuevo entorno informático monta el almacenamiento persistente. Su agente puede seguir trabajando sin tener que volver a instalar paquetes ni regenerar archivos.
nota
Cuando llame de forma explícita, espere StopRuntimeSession siempre a que se complete antes de reanudar la sesión. Esto garantiza que todos los datos se almacenen en un almacenamiento duradero.
nota
La ruta montada solo está disponible en el momento de la invocación del agente, no durante la inicialización.
Límites
En la siguiente tabla se enumeran los límites de las configuraciones del sistema de archivos.
| Recurso | Límite |
|---|---|
|
Total de configuraciones de sistemas de archivos por tiempo de ejecución de agente |
5 |
|
Número máximo de configuraciones de puntos de acceso a los archivos S3 |
2 |
|
Máximo de configuraciones de puntos de acceso EFS |
2 |
|
Número máximo de configuraciones de almacenamiento de sesiones administradas |
1 |
|
Capacidad máxima de volúmenes de proveedores |
5 |
Los límites totales de almacenamiento de configuraciones, archivos S3, EFS y sesiones se aplican a los tiempos de ejecución de las microVM. El límite de volumen del proveedor de capacidad se define en función del proveedor de capacidad (ec2Configuration.volumes) y no por tiempo de ejecución.
Restricciones de ruta de montaje
Todas las configuraciones del sistema de archivos deben seguir estas reglas de ruta de montaje:
-
Debe estar debajo
/mnt/de exactamente un nivel de subdirectorio (por ejemplo,/mnt/data,/mnt/workspace). -
Patrón:
/mnt/[a-zA-Z0-9._-]+/? -
Longitud: de 6 a 200 caracteres.
-
Cada ruta de montaje debe ser única en todas las configuraciones.
-
Las rutas de montaje no pueden ser subdirectorios entre sí.
Comportamiento del ciclo
En la siguiente tabla, se compara el comportamiento del ciclo de vida entre los tipos de sistemas de archivos gestionados y de tipo «traiga su propio sistema».
| Comportamiento | Almacenamiento de sesiones administrado (versión preliminar, microVM) | Volumen del proveedor de capacidad (instancias) | Bring-your-own (archivos S3, EFS) |
|---|---|---|---|
|
Caducidad inactiva |
14 días sin invocación: restablecimiento de datos |
Ninguno: el volumen se conserva en todas las paradas, incluso cuando una sesión alcanza su duración máxima |
Ninguno: administrado por el cliente |
|
Al actualizar la versión en tiempo de ejecución |
Datos borrados: sistema de archivos nuevo la próxima vez que se invoque |
Los datos persisten: el volumen se vuelve a adjuntar la próxima vez que se invoca |
Sin efecto: los datos persisten |
|
Al eliminar |
Los datos de la sesión se eliminaron el |
El volumen se elimina al eliminar la sesión o al eliminar el proveedor de capacidad (que elimina sus sesiones) |
Sistema de archivos desmontado; los datos se conservan en su cuenta |
|
Acceso simultáneo |
Aislado por sesión |
Aislado por sesión; los agentes pueden compartirlo en la misma sesión cuando cada tiempo de ejecución configura el mismo volumen |
Se comparte entre sesiones y agentes |
|
Ownership |
Service-managed por AgentCore |
Service-managed por AgentCore (Amazon EBS en su cuenta) |
Customer-managed en su cuenta AWS |
importante
En el caso de sistemas de archivos personalizados, asegúrese de que su agente gestione el acceso simultáneo de forma adecuada. Utilice patrones de nomenclatura de archivos por sesión o bloqueos de archivos de asesoramiento para evitar conflictos.
Casos de uso
En la siguiente tabla se enumeran los patrones comunes y la configuración del sistema de archivos recomendada para cada uno de ellos.
| Patrón | Configuración recomendada |
|---|---|
|
Agente de codificación con archivos de proyecto persistentes (microVM) |
Almacenamiento de sesiones administrado (vista previa) en |
|
Espacio de trabajo persistente para un agente de larga duración en Instances |
El volumen del proveedor de capacidad es |
|
Conjuntos de datos de referencia accesibles tanto desde los agentes como desde las canalizaciones de S3 |
Punto de acceso a los archivos S3 en |
|
Bibliotecas de herramientas compartidas entre todos los agentes |
Los archivos S3 o el punto de acceso EFS se encuentran en |
|
Multi-agent colaboración en un espacio de trabajo compartido |
Archivos S3 o punto de acceso EFS en |
|
Long-running análisis con puntos de control |
Almacenamiento de sesiones para puntos de control + archivos S3 para datos de entrada |
|
Full-stack agente (ambas categorías combinadas) |
Almacenamiento de sesiones + archivos S3 + EFS (3 montajes) |
Ejemplo: agente de codificación con espacio de trabajo persistente
En este ejemplo, se muestra a un agente de codificación que utiliza agentes de Strands FileSessionManager para almacenar el historial de conversaciones y las sesiones de los archivos de proyectos. Ambos persisten a lo largo de stop/resume los ciclos.
Agente de codificación con almacenamiento de sesiones
import os # Enable non-interactive mode for strands tools os.environ["BYPASS_TOOL_CONSENT"] = "true" from strands import Agent from strands.session import FileSessionManager from strands.models import BedrockModel from strands_tools import file_read, file_write, shell from bedrock_agentcore.runtime import BedrockAgentCoreApp app = BedrockAgentCoreApp() WORKSPACE = "/mnt/workspace" model = BedrockModel(model_id="us.anthropic.claude-sonnet-4-20250514-v1:0") tools = [file_read, file_write, shell] @app.entrypoint def handle_request(payload): session_id = payload.get("session_id", "default") # Persist conversation history alongside project files session_manager = FileSessionManager( session_id=session_id, storage_dir=f"{WORKSPACE}/.sessions" ) agent = Agent( model=model, tools=tools, session_manager=session_manager, system_prompt="You are a coding assistant. Project files are in /mnt/workspace." ) response = agent(str(payload.get("prompt", ""))) return {"response": response.message["content"][0]["text"]} if __name__ == "__main__": app.run()
requirements.txt
strands-agents strands-agents-tools bedrock-agentcore boto3
Invoca al agente, detiene la sesión y, a continuación, reanuda. Tanto los archivos del proyecto como el contexto de la conversación persisten.
Invoca, detiene y reanuda el ciclo
import boto3, json client = boto3.client("bedrock-agentcore") agent_arn = "arn:aws:bedrock-agentcore:us-west-2:111122223333:agent-runtime/coding-agent" session_id = "project-xyz-001" def invoke(prompt): resp = client.invoke_agent_runtime( agentRuntimeArn=agent_arn, runtimeSessionId=session_id, payload=json.dumps({"prompt": prompt, "session_id": "conv-001"}).encode() ) return json.loads(b"".join(resp["response"]))["response"] # First invoke: Create a simple script invoke("Write a Python script called calculator.py with add and subtract functions.") # Stop session — compute terminates, storage persists client.stop_runtime_session(agentRuntimeArn=agent_arn, runtimeSessionId=session_id) # Resume same session — new compute, but files and conversation history restored invoke("Add a multiply function to the script you created.") # Agent knows it created calculator.py (conversation history) # AND finds existing file (file persistence)
También FileSessionManager almacena el historial de conversaciones/mnt/workspace/.sessions/, lo que permite al agente recordar el contexto a lo largo de stop/resume los ciclos.
Requisitos de red
En esta sección se describen los requisitos de red tanto para el almacenamiento de sesiones gestionadas como para los sistemas de archivos personalizados.
Redes de almacenamiento de sesiones administradas
Si el tiempo de ejecución del agente usa el modo VPC con el almacenamiento de sesiones, el agente necesita acceso a la red para sincronizarse con el almacenamiento remoto. Los datos de la sesión se almacenan en AgentCore S3, por lo que la VPC debe permitir la conectividad saliente a S3. Si utilizas un punto de enlace de S3 Gateway con una política personalizada, puedes limitar el acceso a tu depósito de almacenamiento de sesión regional de la siguiente manera:
"Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::acr-storage-*-region-an", "arn:aws:s3:::acr-storage-*-region-an/*" ], "Condition": { "StringEquals": { "aws:PrincipalServiceName": "bedrock-agentcore.amazonaws.com" } }
regionSustitúyalo por su AWS región (por ejemplo,us-west-2).
Bring-your-own redes de sistemas de archivos
Bring-your-own los sistemas de archivos requieren que la red de VPC cumpla los siguientes requisitos para que el montaje se realice correctamente.
Amazon EFS
-
Destinos de montaje: su sistema de archivos EFS debe tener destinos de montaje en al menos una de las zonas de disponibilidad en las que se encuentran las subredes de tiempo de ejecución del agente. Para lograr una alta disponibilidad, se recomienda montar los destinos en todas las zonas de disponibilidad de subred configuradas.
-
Una VPC a la vez: los sistemas de archivos EFS solo pueden tener destinos de montaje en una VPC a la vez. Cross-account No se admite el montaje de VPC. AgentCore
-
Alineación de zonas de disponibilidad: las subredes de tiempo de ejecución del agente y los destinos de montaje de EFS deben compartir al menos una zona de disponibilidad común. Cross-AZ El tráfico de NFS funciona, pero aumenta la latencia y los costes de transferencia de datos.
-
Resolución de DNS: su VPC debe tener habilitados los nombres de host DNS y la resolución de DNS. El agente resuelve el nombre de host de destino del montaje en el
<az-id>.<file-system-id>.efs.<region>.amazonaws.com.rproxy.goskope.commomento del montaje.
Para comprobar los objetivos de montaje de EFS:
aws efs describe-mount-targets --file-system-id fs-0123456789abcdef0 --region us-west-2
Para obtener información completa sobre los objetivos de montaje de EFS, consulte Cómo funciona Amazon EFS.
Amazon S3 Files
-
Objetivos de montaje: el sistema de archivos de S3 Files debe tener los objetivos de montaje en la misma VPC que el tiempo de ejecución del agente. Los objetivos de montaje deben estar en al menos una de las mismas zonas de disponibilidad que las subredes en tiempo de ejecución del agente.
-
Un destino de montaje por zona de disponibilidad: cada zona de disponibilidad puede tener como máximo un destino de montaje de archivos S3.
-
La misma VPC: los destinos de montaje de los archivos de S3 deben estar en la misma VPC que el tiempo de ejecución del agente. Cross-VPC no se admite el acceso al sistema de archivos.
-
Resolución de DNS: su VPC debe resolver el nombre de host de destino de montaje de los archivos S3
<az-id>.<file-system-id>.s3files.<region>.on.awsen el momento del montaje. Asegúrese de que la resolución de DNS esté habilitada en la configuración de la VPC.
Para comprobar los objetivos de montaje de tus archivos S3:
aws s3files list-mount-targets --file-system-id fs-0123456789abcdef0 --region us-west-2
Para obtener información completa sobre el montaje de archivos S3, consulte Montaje de sistemas de archivos S3.
Requisitos compartidos
| Requisito | EFS | Archivos de S3 |
|---|---|---|
|
Se requiere el modo VPC |
✓ |
✓ |
|
Puerto NFS 2049 (TCP) |
✓ |
✓ |
|
Monta objetivos en la misma zona de disponibilidad |
✓ (recomendado) |
✓ (obligatorio) |
|
La misma VPC |
✓ |
✓ |
|
La misma cuenta AWS |
✓ |
✓ |
|
Resolución de DNS activada |
✓ |
✓ |
|
Cross-account VPC |
✗ No es compatible |
✗ No es compatible |
importante
Cross-account No se admiten las configuraciones de VPC. Los recursos del sistema de archivos (sistema de archivos, puntos de acceso, objetivos de montaje) y el tiempo de ejecución del agente deben estar en la misma AWS cuenta y en la misma VPC.
¿Cómo AgentCore monta los sistemas de archivos
AgentCore gestiona automáticamente la operación de montaje de NFS dentro de la microVM:
-
EFS: se monta mediante NFSv4.1 TLS (puerto 2049). La autenticación de IAM se usa cuando el rol de ejecución tiene un
elasticfilesystem:ClientMountpermiso con una condición.AccessPointArn -
Archivos S3: se montan mediante NFSv4.2 TLS con autenticación de IAM obligatoria. TLS e IAM siempre están habilitados y no se pueden deshabilitar para los archivos S3.
No es necesario instalaramazon-efs-utils, configurar ni administrar los /etc/fstab certificados TLS. El motor de ejecución de la microVM gestiona todas las operaciones de montaje, la rotación de credenciales y la supervisión del estado.
Selección de subredes y zonas de disponibilidad
Al configurar las subredes de la VPC y las configuraciones del sistema de archivos en el tiempo de ejecución de un agente, seleccione las subredes que se superpongan con las zonas de disponibilidad de destino del montaje del sistema de archivos.
Para identificar el identificador de zona de disponibilidad de tus subredes:
aws ec2 describe-subnets \ --subnet-ids subnet-0123456789abcdef0 \ --query 'Subnets[0].AvailabilityZoneId'
Para identificar la zona de disponibilidad de sus destinos de montaje de EFS:
aws efs describe-mount-targets \ --file-system-id fs-0123456789abcdef0 \ --query 'MountTargets[*].[AvailabilityZoneId, LifeCycleState]' \ --output table
Asegúrese de que las subredes de ejecución de los agentes estén en las zonas de disponibilidad en las que el sistema de archivos tenga objetivos de montaje.
Para ver las zonas de disponibilidad compatibles por región, consulte las zonas de disponibilidad compatibles en el tema de configuración de la VPC. Para ver la configuración del grupo de seguridad, consulte Ejemplo: conexión a archivos de Amazon EFS o Amazon S3.
Solucione problemas relacionados con los montajes del sistema de archivos «traiga su propio sistema de archivos»
Cuando se produce un error en el montaje del sistema de archivos «traiga su propio sistema de archivos», devuelve HTTP 424 (dependencia fallida). InvokeAgentRuntime
| Síntoma | Causa probable | Solución rápida |
|---|---|---|
|
«Acceso denegado» |
Falta el rol de ejecución |
Agregue permisos de IAM con una condición |
|
«ResourceNotFound» o «No se pudo resolver» |
El punto de acceso o el objetivo de montaje se eliminaron o no están disponibles |
Verifique que el ARN exista y que los objetivos de montaje estén disponibles |
|
El montaje se bloquea y luego falla (unos 30 segundos) |
El grupo de seguridad bloquea el puerto 2049 o no monta el objetivo en la zona de disponibilidad del agente |
Permita el TCP 2049; verifique la superposición de las zonas de disponibilidad |
|
«Permiso denegado» al escribir |
Falta |
Agregue un permiso de escritura o alinee el usuario POSIX del punto de acceso |
Cada montura tiene un tiempo de espera de 30 segundos. Todos los sistemas de archivos configurados se montan en paralelo; una sola falla hace que falle toda la invocación.
Para obtener más información, consulte Solucionar problemas de almacenamiento BYO.