Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasi sistem file untuk AgentCore Runtime
AgentCore Runtime mendukung sistem file persist filesystemConfigurations en melalui parameter. Setiap konfigurasi memasang penyimpanan di jalur yang Anda tentukan. Anda tidak memerlukan kode pemasangan khusus, wadah istimewa, atau orkestrasi unduhan.
AgentCore Runtime mendukung dua kategori konfigurasi sistem file:
-
Penyimpanan ter kelola — Service-managed penyimpanan di mana AgentCore menangani semua operasi penyimpanan. Ada dua tipe terkelola, satu untuk setiap tipe komputasi:
-
Penyimpanan sesi (Pratinjau) — Per-session penyimpanan pada runtime microVM yang bertahan di seluruh stop/resume siklus. Terisolasi per sesi. Tidak diperlukan VPC.
-
Volume penyedia kapasitas — Volume Amazon EBS pada runtime Instans, ditentukan pada penyedia kapasitas dan dipasang dengan nama logis. Bertahan di seluruh sesi stop/resume.
-
-
Bring-your-own sistem file — Lampirkan File Amazon S3 Anda sendiri atau titik akses Amazon EFS langsung ke runtime agen Anda. Dibagikan di seluruh sesi dan agen. Diperlukan VPC. Tersedia pada runtime microVM.
Jenis terkelola tergantung pada tipe komputasi runtime Anda. Gunakan penyimpanan sesi pada runtime microVM dan volume penyedia kapasitas pada runtime Instans. Pada runtime microVM, Anda dapat menggabungkan penyimpanan sesi dengan sistem file bawa-sendiri pada runtime agen tunggal (hingga 5 konfigurasi total).
Sekilas tentang opsi penyimpanan
Tabel berikut membandingkan jenis konfigurasi sistem file yang tersedia.
| Kategori | Tipe | Isolasi | Tetap | Jenis komputasi | Diperlukan VPC | Terbaik untuk |
|---|---|---|---|---|---|---|
|
Dikelola |
Penyimpanan sesi (Pratinjau) |
Per-session |
Bertahan stop/resume; Kedaluwarsa idle 14 hari; disetel ulang pada pembaruan versi |
MicroVM saja |
Tidak |
Ruang gores, paket yang diinstal, kode, file proyek, status agen |
|
Dikelola |
Volume penyedia kapasitas |
Per-session |
Bertahan stop/resume; dipertahankan sampai Anda menghapus sesi |
Hanya contoh |
Ya (dikonfigurasi pada penyedia kapasitas) |
Ruang kosong, file ruang kerja, cache, dan pos pemeriksaan untuk sesi Instans yang berjalan lama |
|
OAK |
Amazon S3 Files |
Berbagi — beberapa sesi dan agen mengakses data yang sama |
Customer-managed (permanen, disinkronkan ke bucket S3) |
MicroVM |
Ya |
Kumpulan data dapat diakses melalui operasi file standar dan API S3 |
|
OAK |
Amazon EFS |
Berbagi — beberapa sesi dan agen mengakses data yang sama |
Customer-managed (permanen sampai Anda menghapusnya) |
MicroVM |
Ya |
Pustaka alat bersama, bobot model, kolaborasi multi-agen baca-tulis |
Quick start
Daftar periksa berikut menyediakan langkah-langkah ringkas untuk mengonfigurasi setiap jenis sistem file.
Penyimpanan sesi terkelola (Pratinjau)
Penyimpanan sesi tersedia pada runtime microVM.
-
Tidak diperlukan izin VPC atau IAM tambahan.
-
Tambahkan
--filesystem-configurations '[{"sessionStorage": {"mountPath": "/mnt/workspace"}}]'kecreate-agent-runtimeatauupdate-agent-runtimepanggilan Anda. -
Panggil agen dengan a
--runtime-session-id. -
Hentikan sesi, lalu lanjutkan dengan hal yang sama
--runtime-session-id. Veri/mnt/workspacefikasi menyimpan data Anda.
Volume penyedia kapasitas
Volume penyedia kapasitas tersedia pada runtime Instans.
-
Tentukan satu atau beberapa volume Amazon EBS bernama pada penyedia kapasitas saat Anda membuatnya (dalam
ec2Configuration.volumes). -
Buat runtime agen dengan
capacityProviderConfigurationreferensi penyedia kapasitas. -
Tambahkan
--filesystem-configurations '[{"capacityProviderVolume": {"volumeName": "scratch", "mountPath": "/mnt/scratch"}}]'kecreate-agent-runtimepanggilan yang sama, mereferensikan volume dengan nama logisnya. -
Panggil agen dengan a
--runtime-session-id. Hentikan sesi, lalu lanjutkan dengan hal yang sama--runtime-session-id. Veri/mnt/scratchfikasi menyimpan data Anda.
Untuk panduan lengkapnya, lihat Memulai dengan Instans menggunakan AWS CLI.
Bring-your-own sistem file
Titik akses File Amazon S3
-
Tambahkan
s3files:ClientMount,s3files:ClientWrite, dans3files:GetAccessPointke peran eksekusi Anda dengan suatus3files:AccessPointArnkondisi. -
Izinkan port TCP 2049 keluar dari grup keamanan runtime agen Anda ke grup keamanan target mount File S3 Anda.
-
Konfirmasikan target pemasangan File S3 berada di VPC dan Availability Zone yang sama dengan subnet runtime agen Anda.
-
Tambahkan
--filesystem-configurations '[{"s3FilesAccessPoint": {"accessPointArn": "<your-access-point-arn>", "mountPath": "/mnt/s3data"}}]'kecreate-agent-runtimeatauupdate-agent-runtimepanggilan Anda. -
Panggil agen. File disin
/mnt/s3datakronkan dua arah dengan bucket S3 pendukung.
Titik akses Amazon EFS
-
Tambahkan
elasticfilesystem:ClientMountdanelasticfilesystem:ClientWriteke peran eksekusi Anda dengan suatuelasticfilesystem:AccessPointArnkondisi. -
Izinkan port TCP 2049 keluar dari grup keamanan runtime agen Anda ke grup keamanan target pemasangan EFS Anda.
-
Konfirmasikan target pemasangan EFS berada di Zona Ketersediaan yang sama dengan setidaknya salah satu subnet runtime agen Anda.
-
Tambahkan
--filesystem-configurations '[{"efsAccessPoint": {"accessPointArn": "<your-access-point-arn>", "mountPath": "/mnt/efs"}}]'kecreate-agent-runtimeatauupdate-agent-runtimepanggilan Anda. -
Panggil agen. File Anda tersedia di
/mnt/efs.
File S3 dan EFS memerlukan konektivitas VPC pada runtime agen.
Bagaimana setiap jenis bekerja
Bagian berikut menjelaskan bagaimana setiap jenis sistem file beroperasi dalam AgentCore Runtime.
Bring-your-own sistem file
Saat Anda mengonfigurasi sistem file bawa sendiri, AgentCore Runtime memasang titik akses yang ditentukan ke setiap sesi di jalur yang Anda konfigurasikan. Data dibagikan — beberapa sesi, beberapa agen, atau aplikasi eksternal dapat mengakses sistem file yang sama secara bersamaan.
AgentCore menangani semua operasi pemasangan secara otomatis. Anda tidak perlu menginstal mount helper, mengelola sertifikat TLS, atau menulis kode mount di agen Anda.
catatan
Saat Anda membuat titik akses (File S3 atau EFS), Anda menentukan ID pengguna POSIX (UID) dan ID grup (GID). Semua operasi file melalui titik akses dijalankan sebagai identitas ini. Setel agar UID/GID sesuai dengan pengguna yang dijalankan proses container Anda (biasanya 1000:1000 untuk wadah non-root, atau 0:0 untuk root).
Alur pemasangan File Amazon S3
Saat Anda mengonfigurasi titik akses S3 Files, urutan berikut terjadi:
-
Anda membuat sistem file S3 Files (didukung oleh bucket S3) dan memasang target di VPC Anda.
-
Anda membuat titik akses S3 Files yang menentukan POSIX UID/GID dan direktori root.
-
Anda mengonfigurasi runtime agen dengan titik akses ARN dan jalur pemasangan.
-
Pada pemanggilan dengan ID sesi baru, menyediakan AgentCore microVM dengan akses jaringan ke VPC Anda.
-
MicroVM memasang sistem file NFSv4.2 melalui TLS dengan otentikasi IAM (port 2049) melalui VPC Anda.
-
Agen Anda membaca dan menulis file di jalur pemasangan. Perubahan secara otomatis disinkronkan ke bucket S3 pendukung.
S3 Files semantik
-
Sinkronisasi dua arah antara sistem file dan bucket S3 pendukung
-
Close-to-open konsistensi untuk klien NFS; Konsistensi akhir S3 untuk akses sisi bucket
-
Ukuran file maksimal: 48 TiB; kedalaman direktori maks: 1.000 tingkat
-
Tidak didukung: Tautan keras, kelas penyimpanan arsip S3 (Glacier), metadata objek S3 kustom, PNF
Alur pemasangan Amazon EFS
Saat Anda mengonfigurasi titik akses EFS, urutan berikut terjadi:
-
Anda membuat sistem file EFS dan memasang target di VPC Anda (satu per Zona Ketersediaan).
-
Anda membuat titik akses EFS yang menentukan POSIX UID/GID dan direktori root.
-
Anda mengkonfigurasi runtime agen dengan titik akses ARN dan jalur pemasangan.
-
Pada pemanggilan dengan ID sesi baru, menyediakan AgentCore microVM dengan akses jaringan ke VPC Anda.
-
MicroVM memasang sistem file NFSv4.1 melalui TLS (port 2049) melalui target mount di Availability Zone yang sama.
-
Agen Anda membaca dan menulis file di jalur pemasangan menggunakan operasi file standar.
Semantik EFS
-
POSIX penuh: tautan keras, tautan simbolis, penguncian file penasihat
-
Akses baca-tulis bersamaan dari beberapa sesi dan agen
-
Close-to-open konsistensi
-
Ukuran file maksimal: 47,9 TiB; kedalaman direktori maks: 1.000 tingkat
Penyimpanan sesi terkelola (Pratinjau)
Pertahankan status sesi stop/resume dengan konfigurasi sistem file menggunakan penyimpanan sesi terkelola. AgentCore Penyimpanan sesi terkelola runtime adalah kemampuan yang dikelola layanan sepenuhnya di mana AgentCore Runtime menangani semua operasi penyimpanan. Agen Anda membaca dan menulis ke mount sistem file lokal dan lingkungan runtime secara transparan mereplikasi data ke penyimpanan layanan sepanjang durasi sesi.
Penyimpanan sesi diisolasi per sesi — setiap sesi hanya dapat mengakses penyimpanannya sendiri dan tidak dapat membaca atau menulis data dari sesi lain dari runtime agen yang sama atau sesi runtime agen yang berbeda.
Saat Anda mengonfigurasi penyimpanan sesi pada runtime agen, setiap sesi mendapatkan direktori persisten di jalur pemasangan yang Anda tentukan. Siklus hidup bekerja sebagai berikut:
-
Panggilan pertama pada sesi — Komputasi terisolasi baru disediakan. Agen Anda melihat direktori kosong di jalur pemasangan.
-
Agen menulis file — Semua operasi file (baca, tulis, mkdir, ganti nama) bekerja seperti biasa, mirip dengan sistem file lokal, dan data direplikasi secara asinkron ke penyimpanan tahan lama.
-
Sesi berhenti — Komputasi dihentikan. Setiap data yang belum disimpan akan dialirkan ke penyimpanan tahan lama selama shutdown yang anggun.
-
Lanjutkan dengan sesi yang sama — Komputasi baru disediakan dan status sistem file dipulihkan dari penyimpanan tahan lama. Agen dapat melanjutkan dari tempat tinggalnya.
Semantik sistem file
Penyimpanan sesi menyediakan sistem file Linux standar di jalur pemasangan yang Anda konfigurasi. Alat dan operasi standar bekerja tanpa modifikasi -ls,cat,,mkdir,git, npmpip, dan cargo semua berfungsi seperti yang diharapkan.
Operasi yang didukung
File biasa, direktori, dan symlink. Baca, tulis, ganti nama, hapus,chmod,chown,stat, dan readdir — operasi file POSIX standar yang digunakan oleh alat pengembangan umum.
Batasan
Untuk batas penyimpanan sesi termasuk ukuran penyimpanan maksimum, jumlah file, dan kedalaman direktori, lihat B atas penyimpanan sesi.
Operasi yang tidak didukung
Operasi sistem file berikut tidak didukung:
-
Tautan keras — Gunakan symlink sebagai gantinya.
-
File perangkat, FIFO, atau soket UNIX - tidak
mknoddidukung. -
Extended Attributes (xattr) — Alat yang bergantung pada metadata xattr tidak didukung.
-
fallocate — Pralokasi file yang jarang tidak didukung.
-
Penguncian file di seluruh sesi — Kunci penasihat berfungsi dalam sesi yang sedang berjalan tetapi tidak dipertahankan di seluruh stop/resume sesi. Alat yang menggunakan penguncian berbasis file (seperti
git) tidak terpengaruh.
catatan
Izin disimpan tetapi tidak diberlakukan dalam sesi. chmoddan stat bekerja dengan benar, tetapi pemeriksaan akses selalu berhasil karena agen berjalan sebagai satu-satunya pengguna di microVM.
Siklus hidup penyimpanan sesi
Data sesi dihapus (diatur ulang ke keadaan bersih) dalam skenario berikut:
-
Sesi tidak dipanggil selama 14 hari.
-
Versi runtime agen diperbarui. Memanggil sesi setelah pembaruan versi menyediakan sistem file baru.
Gunakan DeleteAgentRuntime atau DeleteAgentRuntimeEndpoint untuk menghapus semua data penyimpanan sesi yang terkait dengan runtime atau titik akhir.
Volume penyedia kapasitas (Instans)
Volume penyedia kapasitas adalah jenis penyimpanan terkelola untuk runtime yang menggunakan tipe komputasi Instans. Alih-alih menentukan penyimpanan pada runtime, Anda menentukan volume Amazon EBS bernama pada penyedia kapasitas, dan runtime memasangnya dengan nama logis. AgentCore membuat, melampirkan, dan menyimpan volume untuk Anda—Anda tidak menyediakan atau memasang volume Amazon EBS sendiri.
Seperti penyimpanan sesi, volume penyedia kapasitas diisolasi per sesi dan bertahan di seluruh sesi stop/resume. Karena sesi pada Instans adalah instans EC2 khusus, volume mengikuti siklus hidup sesi tersebut:
-
Tentukan volume pada penyedia kapasitas — Saat Anda membuat penyedia kapasitas, daftarkan satu atau lebih volume Amazon EBS di
ec2Configuration.volumes, masing-masing dengan enkripsi logisname,sizeGiB, dan opsionalvolumeTypeiops,throughput,, dansnapshotId. -
Referensikan volume dari runtime — Tambahkan
capacityProviderVolumeentrifilesystemConfigurationsdenganvolumeNamedan amountPath. -
Memanggil agen untuk pertama kalinya — membuat AgentCore volume Amazon EBS dan melampirkannya ke instans EC2 sesi di jalur pemasangan Anda.
-
Hentikan sesi — AgentCore mengakhiri instance EC2 tetapi mempertahankan volume.
-
Lanjutkan dengan sesi yang sama — AgentCore menyediakan instance baru dan melampirkan kembali volume yang ada, sehingga data Anda utuh. Sesi yang dimulai ulang mungkin berjalan pada instance dengan patch terbaru.
Volume dipertahankan di seluruh pemberhentian ini, termasuk ketika sesi mencapai masa pakai maksimumnya. Itu dihapus hanya saat Anda menghapus sesi, atau ketika Anda menghapus penyedia kapasitas (yang menghapus sesi dan volumenya).
Untuk informasi tentang mengelola data pada volume ini, lihat Mengel ola data Anda di Instans Runtime.
Agen dapat berbagi volume, tetapi berbagi tidak otomatis. Agar volume dipasang untuk runtime agen, runtime tersebut harus mengkonfigurasi capacityProviderVolume (byvolumeName) yang sama dalam dirinya sendirifilesystemConfigurations. Ketika dua runtime tersebut dipanggil dengan yang samaruntimeSessionId, mereka berjalan pada instance yang sama dan masing-masing memasang volume bersama, sehingga mereka dapat berkolaborasi pada file yang sama. Mengkonfigurasi capacityProviderVolume kontrol volume AgentCore mana yang dipasang untuk runtime; itu tidak, dengan sendirinya, mengisolasi data antar agen dalam sesi. Batas isolasi adalah sesi. Untuk model isolasi sesi dan agen, lihat Model keamanan dan izin untuk Instans Runtime.
Jenis penyimpanan sesi terkelola dan jenis bawa sendiri tidak didukung pada runtime Instans. Jenis-jenis ini adalah sessionStorages3FilesAccessPoint,, danefsAccessPoint. Menentukan salah satu dari mereka di samping capacityProviderConfiguration gagal dengan aValidationException. Untuk cara menentukan volume pada penyedia kapasitas dan memasangnya, lihat Mem ulai dengan Instans menggunakan AWS CLI dan penyimpanan Per sisten di seluruh sesi.
Prasyarat untuk membawa sistem file Anda sendiri
Sebelum Anda mengonfigurasi sistem file bawa-sendiri, lengkapi prasyarat berikut.
Konfigurasi VPC
Runtime agen Anda harus menggunakannetworkMode: VPC. Subnet yang Anda tentukan harus tumpang tindih dengan Zona Ketersediaan target mount sistem file.
Izin IAM
Peran eksekusi runtime agen Anda harus menyertakan izin untuk memasang sistem file.
Izin IAM untuk File 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>" } } }
Izin IAM untuk 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>" } } }
Hilangkan ClientWrite jika agen Anda hanya membutuhkan akses baca. Iz s3files:GetAccessPoint in diperlukan untuk validasi titik akses S3 Files selama pembuatan runtime agen.
Grup keamanan
Izinkan TCP keluar pada port 2049 dari grup keamanan runtime agen Anda ke grup keamanan target mount. Izinkan TCP masuk pada port 2049 pada grup keamanan target mount dari grup keamanan runtime agen.
Konfigurasikan sistem file
Bagian berikut menunjukkan cara mengkonfigurasi setiap jenis sistem file.
Mengonfigurasi titik akses Amazon S3 Files
Untuk mengonfigurasi titik akses S3 Files, tentukan titik akses ARN dan mount path difilesystemConfigurations. Runtime agen Anda harus menggunakan mode jaringan VPC.
contoh
Mengonfigurasi titik akses Amazon EFS
Untuk mengonfigurasi titik akses EFS, tentukan titik akses ARN dan mount path difilesystemConfigurations. Runtime agen Anda harus menggunakan mode jaringan VPC.
contoh
Konfigurasikan penyimpanan sesi terkelola
Tambahkan filesystemConfigurations dengan sessionStorage entri saat membuat atau memperbarui runtime agen.
contoh
Anda juga dapat menambahkan penyimpanan sesi ke runtime agen yang ada menggunakan UpdateAgentRuntime filesystemConfigurations parameter yang sama.
Mengkonfigurasi volume penyedia kapasitas
Untuk memasang volume penyedia kapasitas, pertama-tama tentukan volume pada penyedia kapasitas. Kemudian referensikan dengan nama filesystemConfigurations saat Anda membuat runtime agen. Ini berlaku untuk runtime yang menggunakan tipe komputasi Instances.
contoh
volumeNameHarus cocok dengan volume yang ditentukan dalam penyedia kapasitasec2Configuration.volumes. Untuk langkah-langkah menentukan volume pada penyedia kapasitas, lihat Mem ulai dengan Instans menggunakan AWS CLI.
Gabungkan sistem file
Anda dapat menggabungkan penyimpanan sesi terkelola dengan sistem file bawa-sendiri pada runtime agen microVM tunggal. Contoh berikut mengkonfigurasi ketiga jenis.
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" } } ] )
Memanggil dan menggunakan penyimpanan persisten
Semua sistem file yang dikonfigurasi tersedia di jalur pemasangan mereka saat agen Anda dipanggil. Bring-your-own sistem file (File S3, EFS) dapat diakses segera pada setiap pemanggilan. Penyimpanan sesi terkelola mempertahankan data di seluruh stop/resume siklus menggunakan yang samaruntimeSessionId.
Contoh: Menggunakan penyimpanan sesi di seluruh stop/resume siklus
# 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"}'
Agen melihat /mnt/workspace persis seperti yang ditinggalkannya — file sumber, paket yang diinstal, artefak build, dan riwayat .git semuanya utuh. Saat Anda melanjutkan sesi, lingkungan komputasi baru akan memasang penyimpanan persisten. Agen Anda dapat terus bekerja tanpa menginstal ulang paket atau meregenerasi file.
catatan
Saat menelep StopRuntimeSession on secara eksplisit selalu tunggu sampai selesai sebelum melanjutkan sesi. Ini memastikan semua data disalurkan ke penyimpanan yang tahan lama.
catatan
Jalur yang dipasang hanya tersedia pada saat pemanggilan agen, bukan selama inisialisasi.
Batas
Tabel berikut mencantumkan batas untuk konfigurasi sistem file.
| Sumber daya | Kuota |
|---|---|
|
Total konfigurasi sistem file per runtime agen |
5 |
|
Konfigurasi titik akses File S3 maksimum |
2 |
|
Konfigurasi titik akses EFS maksimum |
2 |
|
Konfigurasi penyimpanan sesi terkelola maksimum |
1 |
|
Volume penyedia kapasitas maksimum |
5 |
Konfigurasi total, File S3, EFS, dan batas penyimpanan sesi berlaku untuk runtime microVM. Batas volume penyedia kapasitas ditentukan pada provider kapasitas (ec2Configuration.volumes) bukan per runtime.
Kendala jalur pemasangan
Semua konfigurasi sistem file harus mengikuti aturan jalur pemasangan ini:
-
Harus berada di bawah
/mnt/dengan tepat satu tingkat subdirektori (misalnya,/mnt/data,/mnt/workspace). -
Pola:
/mnt/[a-zA-Z0-9._-]+/? -
Panjang: 6—200 karakter.
-
Setiap jalur pemasangan harus unik di semua konfigurasi.
-
Mount path tidak boleh menjadi subdirektori satu sama lain.
Perilaku siklus hidup
Tabel berikut membandingkan perilaku siklus hidup di seluruh jenis sistem file yang dikelola dan bawa-sendiri.
| Perilaku | Penyimpanan sesi terkelola (Pratinjau, MicroVM) | Volume penyedia kapasitas (Instans) | Bring-your-own (File S3, EFS) |
|---|---|---|---|
|
Kedaluwarsa siaga |
14 hari tanpa pemanggilan - reset data |
Tidak ada — volume dipertahankan di seluruh pemberhentian, termasuk saat sesi mencapai masa pakai maksimumnya |
Tidak ada — dikelola pelanggan |
|
Pada pembaruan versi runtime |
Data dihapus - sistem file baru pada pemanggilan berikutnya |
Data tetap ada - volume dilampirkan kembali pada pemanggilan berikutnya |
Tidak ada efek - data tetap ada |
|
Saat menghapus |
Data sesi dihapus pada |
Volume dihapus saat Anda menghapus sesi, atau saat Anda menghapus penyedia kapasitas (yang menghapus sesinya) |
Sistem file tidak terpasang; data disimpan di akun Anda |
|
Akses bersamaan |
Terisolasi per sesi |
Terisolasi per sesi; dapat dibagikan oleh agen dalam sesi yang sama ketika setiap runtime mengonfigurasi volume yang sama |
Dibagikan di seluruh sesi dan agen |
|
Kepemilikan |
Service-managed oleh AgentCore |
Service-managed oleh AgentCore (Amazon EBS di akun Anda) |
Customer-managed di AWS akun Anda |
penting
Untuk sistem file yang membawa Anda sendiri, pastikan agen Anda menangani akses bersamaan dengan tepat. Gunakan pola penamaan file-per-sesi atau kunci file penasihat untuk menghindari konflik.
Kasus penggunaan
Tabel berikut mencantumkan pola umum dan konfigurasi sistem file yang direkomendasikan untuk masing-masing.
| Pola | Konfigurasi yang disarankan |
|---|---|
|
Agen pengkodean dengan file proyek persisten (microVM) |
Penyimpanan sesi terkelola (Pratinjau) di |
|
Ruang kerja persisten untuk agen yang berjalan lama di Instans |
Volume penyedia kapasitas di |
|
Kumpulan data referensi dapat diakses dari agen dan saluran S3 |
Titik akses S3 Files di |
|
Pustaka alat bersama di semua agen |
File S3 atau titik akses EFS di |
|
Multi-agent kolaborasi di ruang kerja bersama |
File S3 atau titik akses EFS di |
|
Long-running analisis dengan pos pemeriksaan |
Penyimpanan sesi untuk pos pemeriksaan + File S3 untuk data input |
|
Full-stack agen (kedua kategori digabungkan) |
Penyimpanan sesi+File S3 + EFS (3 dudukan) |
Contoh: Agen pengkodean dengan ruang kerja persisten
Contoh ini menunjukkan agen pengkodean menggunakan Strands Agents FileSessionManager untuk riwayat percakapan dan penyimpanan sesi untuk file proyek. Keduanya bertahan melintasi stop/resume siklus.
Agen pengkodean dengan penyimpanan sesi
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
Panggil agen, hentikan sesi, lalu lanjutkan. Baik file proyek dan konteks percakapan tetap ada.
Memanggil, menghentikan, dan melanjutkan siklus
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)
Men FileSessionManager yimpan riwayat percakapan ke/mnt/workspace/.sessions/, memungkinkan agen mengingat konteks lintas stop/resume siklus.
Persyaratan jaringan
Bagian ini mencakup persyaratan jaringan untuk penyimpanan sesi terkelola dan sistem file bawa-sendiri.
Jaringan penyimpanan sesi terkelola
Jika runtime agen Anda menggunakan mode VPC dengan penyimpanan sesi, agen memerlukan akses jaringan untuk menyinkronkan dengan penyimpanan jarak jauh. Data sesi disimpan di AgentCore S3, sehingga VPC Anda harus mengizinkan konektivitas keluar ke S3. Jika Anda menggunakan titik akhir S3 Gateway dengan kebijakan khusus, Anda dapat menjangkau akses ke bucket penyimpanan sesi regional Anda sebagai berikut:
"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" } }
Ganti region dengan AWS Wilayah Anda (misalnya,us-west-2).
Bring-your-own jaringan sistem file
Bring-your-own sistem file memerlukan jaringan VPC Anda untuk memenuhi persyaratan berikut untuk pemasangan yang berhasil.
Amazon EFS
-
Pasang target — Sistem file EFS Anda harus memiliki target pemasangan setidaknya di salah satu Zona Ketersediaan tempat subnet runtime agen Anda berada. Pasang target di semua Zona Ketersediaan subnet yang dikonfigurasi disarankan untuk ketersediaan tinggi.
-
Satu VPC pada satu waktu — Sistem file EFS dapat memiliki target pemasangan hanya dalam satu VPC pada satu waktu. Cross-account Pemasangan VPC tidak didukung untuk AgentCore.
-
Penyelarasan Zona Ketersediaan — Subnet runtime agen dan target pemasangan EFS harus berbagi setidaknya satu Zona Ketersediaan umum. Cross-AZ Lalu lintas NFS berfungsi tetapi menambahkan latensi dan biaya transfer data.
-
Resolusi DNS — VPC Anda harus mengaktifkan nama host DNS dan resolusi DNS. Agen menyelesaikan nama host target mount
<az-id>.<file-system-id>.efs.<region>.amazonaws.com.rproxy.goskope.compada waktu pemasangan.
Untuk memeriksa target pemasangan EFS Anda:
aws efs describe-mount-targets --file-system-id fs-0123456789abcdef0 --region us-west-2
Untuk informasi lengkap tentang target pemasangan EFS, lihat Cara kerja Amazon EFS.
Amazon S3 Files
-
Pasang target — Sistem file S3 File Anda harus memiliki target mount di VPC yang sama dengan runtime agen. Target mount harus berada di setidaknya satu dari Availability Zone yang sama dengan subnet runtime agen Anda.
-
Satu target pemasangan per AZ — Setiap Zona Ketersediaan dapat memiliki paling banyak satu target pemasangan File S3.
-
VPC yang sama — Target pemasangan File S3 harus berada di VPC yang sama dengan runtime agen. Cross-VPC akses sistem file tidak didukung.
-
Resolusi DNS — VPC Anda harus menyelesaikan nama host target mount S3 Files
<az-id>.<file-system-id>.s3files.<region>.on.awspada waktu pemasangan. Pastikan resolusi DNS diaktifkan di pengaturan VPC Anda.
Untuk memeriksa target pemasangan File S3 Anda:
aws s3files list-mount-targets --file-system-id fs-0123456789abcdef0 --region us-west-2
Untuk informasi lengkap tentang pemasangan File S3, lihat Mem asang sistem file S3.
Persyaratan bersama
| Persyaratan | EFS | S3 Files |
|---|---|---|
|
Mode VPC diperlukan |
✓ |
✓ |
|
Port NFS 2049 (TCP) |
✓ |
✓ |
|
Pasang target di AZ yang sama |
✓ (disarankan) |
✓ (wajib) |
|
VPC yang sama |
✓ |
✓ |
|
AWS Akun yang sama |
✓ |
✓ |
|
Resolusi DNS diaktifkan |
✓ |
✓ |
|
Cross-account VPC |
✗ Tidak didukung |
✗ Tidak didukung |
penting
Cross-account Konfigurasi VPC tidak didukung. Sumber daya sistem file (sistem file, titik akses, target pemasangan) dan runtime agen harus berada di AWS akun dan VPC yang sama.
Bagaimana AgentCore memasang sistem file
AgentCore menangani operasi pemasangan NFS di dalam microVM secara otomatis:
-
EFS — Dipasang NFSv4.1 melalui TLS (port 2049). Otentikasi IAM digunakan ketika peran eksekusi memiliki
elasticfilesystem:ClientMountizin dengan suatuAccessPointArnkondisi. -
File S3 - Dipasang NFSv4.2 melalui TLS dengan otentikasi IAM wajib. TLS dan IAM selalu diaktifkan dan tidak dapat dinonaktifkan untuk File S3.
Anda tidak perlu menginstalamazon-efs-utils, mengkonfigurasi/etc/fstab, atau mengelola sertifikat TLS. Runtime MicroVM menangani semua operasi pemasangan, rotasi kredensia, dan pemantauan kesehatan.
Pemilihan Subnet dan Zona Ketersediaan
Saat Anda mengonfigurasi subnet VPC dan konfigurasi sistem file pada runtime agen, pilih subnet yang tumpang tindih dengan Zona Ketersediaan target pemasangan sistem file Anda.
Untuk mengidentifikasi ID Zona Ketersediaan subnet Anda:
aws ec2 describe-subnets \ --subnet-ids subnet-0123456789abcdef0 \ --query 'Subnets[0].AvailabilityZoneId'
Untuk mengidentifikasi Zona Ketersediaan target pemasangan EFS Anda:
aws efs describe-mount-targets \ --file-system-id fs-0123456789abcdef0 \ --query 'MountTargets[*].[AvailabilityZoneId, LifeCycleState]' \ --output table
Pastikan subnet runtime agen Anda berada di Availability Zone tempat sistem file Anda memiliki target mount.
Untuk Zona Ketersediaan yang didukung menurut wilayah, lihat Zona Ketersediaan yang Di dukung di topik konfigurasi VPC. Untuk konfigurasi grup keamanan, lihat Contoh: Menghubungkan ke Amazon EFS atau File Amazon S3.
Memecahkan masalah pemasangan sistem file bawa-Anda sendiri
Ketika pemasangan sistem file bring-your-own gagal, InvokeAgentRuntime mengembalikan HTTP 424 (Ketergantungan Gagal).
| Gejala | Kemungkinan penyebabnya | Perbaikan cepat |
|---|---|---|
|
“Akses ditolak” |
Peran eksekusi hilang |
Tambahkan izin IAM dengan kondisi |
|
“ResourceNotFound" atau “Gagal menyelesaikan” |
Titik akses atau target mount dihapus atau tidak tersedia |
Verifikasi ARN ada dan target pemasangan Tersedia |
|
Mount hang kemudian gagal (~ 30s) |
Grup keamanan memblokir port 2049 atau tidak ada target pemasangan di Zona Ketersediaan agen |
Izinkan TCP 2049; verifikasi Zona Ketersediaan tumpang tindih |
|
“Izin ditolak” pada tulisan |
Hilang |
Tambahkan izin tulis atau sejajarkan titik akses pengguna POSIX |
Setiap mount memiliki batas waktu 30 detik. Semua sistem file yang dikonfigurasi dipasang secara paralel — kegagalan tunggal menyebabkan seluruh pemanggilan gagal.
Untuk informasi selengkapnya, lihat Memec ahkan masalah penyimpanan BYO.