Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Amazon Elastic File System (Amazon EFS) menyediakan penyimpanan file yang sederhana dan dapat diskalakan untuk digunakan dengan AWS Batch pekerjaan Anda. Kapasitas penyimpanan Amazon EFS bersifat elastis. Penyimpanan akan menskalakan secara otomatis saat Anda menambahkan dan menghapus file. Aplikasi Anda dapat memiliki penyimpanan yang dibutuhkan, kapan pun dibutuhkan.
Anda dapat menggunakan sistem file Amazon EFS AWS Batch untuk mengekspor data sistem file di seluruh armada instans kontainer Anda. Dengan begitu, tugas Anda memiliki akses ke penyimpanan tetap yang sama. Namun, Anda harus mengonfigurasi AMI instans kontainer untuk memasang sistem file Amazon EFS sebelum daemon Docker dimulai. Selain itu, ketentuan tugas Anda harus mereferensikan pemasangan volume di instans kontainer agar dapat menggunakan sistem file. Bagian berikut akan membantu Anda mulai menggunakan Amazon EFS dengan AWS Batch.
Pertimbangan volume Amazon EFS
Hal-hal berikut harus dipertimbangkan ketika menggunakan volume Amazon EFS:
-
Untuk pekerjaan yang menggunakan EC2 sumber daya, dukungan sistem file Amazon EFS ditambahkan sebagai pratinjau publik dengan versi AMI Amazon ECS yang dioptimalkan
20191212
dengan agen penampung versi 1.35.0. Namun, dukungan sistem file Amazon EFS memasuki ketersediaan umum dengan AMI yang dioptimalkan untuk Amazon ECS versi20200319
dengan agen kontainer versi 1.38.0, yang berisi titik akses Amazon EFS dan fitur otorisasi IAM. Kami menyarankan agar Anda menggunakan AMI yang dioptimalkan untuk Amazon ECS versi20200319
atau yang lebih baru untuk memanfaatkan fitur ini. Untuk informasi lebih lanjut, lihat Versi AMI yang dioptimalkan untuk Amazon ECS dalam Panduan Developer Amazon Elastic Container Service.catatan
Jika Anda membuat AMI sendiri, Anda harus menggunakan agen kontainer 1.38.0 atau yang lebih baru,
ecs-init
versi 1.38.0-1 atau yang lebih baru, dan menjalankan perintah berikut di instans Amazon Anda. EC2 Ini semua untuk mengaktifkan plugin volume Amazon ECS. Perintah akan tergantung pada apakah Anda menggunakan Amazon Linux 2 atau Amazon Linux sebagai citra dasar Anda.- Amazon Linux 2
-
$
yum install amazon-efs-utils systemctl enable --now amazon-ecs-volume-plugin
- Amazon Linux
-
$
yum install amazon-efs-utils sudo shutdown -r now
-
Untuk tugas yang menggunakan sumber daya Fargate, dukungan sistem file Amazon EFS ditambahkan saat menggunakan platform versi 1.4.0 atau yang lebih baru. Untuk informasi lebih lanjut, lihat Versi platform AWS Fargate dalam Panduan Developer Amazon Elastic Container Service.
-
Ketika menentukan volume Amazon EFS dalam tugas yang menggunakan sumber daya Fargate, Fargate membuat kontainer pengawas yang bertanggung jawab untuk mengelola volume Amazon EFS. Kontainer pengawas menggunakan sejumlah kecil memori tugas. Kontainer pengawas akan terlihat saat dilakukan kueri titik akhir metadata tugas versi 4. Untuk informasi selengkapnya, lihat Titik akhir metadata tugas versi 4 di Panduan Pengguna Amazon Elastic Container Service untuk. AWS Fargate
Gunakan titik akses Amazon EFS
Titik akses Amazon EFS adalah titik masuk khusus aplikasi ke dalam sistem file EFS yang membantu Anda mengelola akses aplikasi ke set data bersama. Untuk informasi lebih lanjut tentang titik akses Amazon EFS dan cara mengontrol akses ke sana, lihat Bekerja dengan Titik Akses Amazon EFS dalam Panduan Pengguna Amazon Elastic File System.
Titik akses dapat menerapkan identitas pengguna, termasuk grup POSIX pengguna, pada semua permintaan sistem file yang dibuat melalui titik akses. Titik akses juga dapat menerapkan direktori asal yang berbeda untuk sistem file sehingga klien hanya dapat mengakses data dalam direktori tertentu atau subdirektorinya.
catatan
Saat membuat titik akses EFS, Anda menentukan jalur di sistem file yang akan berfungsi sebagai direktori asal. Saat Anda mereferensikan sistem file EFS dengan ID titik akses dalam definisi AWS Batch pekerjaan Anda, direktori root harus dihilangkan atau disetel ke /
This memberlakukan jalur yang ditetapkan pada titik akses EFS.
Anda dapat menggunakan peran IAM AWS Batch pekerjaan untuk menegakkan bahwa aplikasi tertentu menggunakan titik akses tertentu. Dengan menggabungkan kebijakan IAM dengan titik akses, Anda dapat dengan mudah memberikan akses yang aman ke set data tertentu untuk aplikasi Anda. Fitur ini menggunakan IAM role Amazon ECS untuk fungsionalitas tugas. Untuk informasi lebih lanjut, lihat IAM Role untuk Tugas dalam Panduan Developer Amazon Elastic Container Service.
Tentukan sistem file Amazon EFS dalam definisi pekerjaan Anda
Untuk menggunakan volume sistem file Amazon EFS untuk kontainer Anda, Anda harus menentukan konfigurasi volume dan titik pemasangan dalam ketentuan tugas Anda. Cuplikan JSON ketentuan tugas berikut menunjukkan sintaks untuk objek volumes
dan mountPoints
untuk sebuah kontainer:
{
"containerProperties": [
{
"image": "amazonlinux:2
",
"command": [
"ls",
"-la",
"/mount/efs
"
],
"mountPoints": [
{
"sourceVolume": "myEfsVolume
",
"containerPath": "/mount/efs
",
"readOnly": true
}
],
"volumes": [
{
"name": "myEfsVolume
",
"efsVolumeConfiguration": {
"fileSystemId": "fs-12345678
",
"rootDirectory": "/path/to/my/data
",
"transitEncryption": "ENABLED
",
"transitEncryptionPort": integer
,
"authorizationConfig": {
"accessPointId": "fsap-1234567890abcdef1
",
"iam": "ENABLED
"
}
}
}
]
}
]
}
efsVolumeConfiguration
-
Tipe: Objek
Wajib: Tidak
Parameter ini ditentukan saat menggunakan volume Amazon EFS.
fileSystemId
-
Tipe: String
Diperlukan: Ya
ID sistem file Amazon EFS yang akan digunakan.
rootDirectory
-
Tipe: String
Wajib: Tidak
Direktori dalam sistem file Amazon EFS untuk pemasangan sebagai direktori asal di dalam host. Jika parameter ini diabaikan, asal volume Amazon EFS akan digunakan. Menentukan
/
memiliki efek yang sama seperti mengabaikan parameter ini. Ini dapat memiliki panjang hingga 4.096 karakter.penting
Jika titik akses EFS ditentukan dalam
authorizationConfig
, parameter direktori asal harus diabaikan atau diatur ke/
. Ini akan memberlakukan jalur yang ditetapkan pada titik akses EFS. transitEncryption
-
Tipe: String
Nilai yang valid:
ENABLED
|DISABLED
Wajib: Tidak
Menentukan apakah akan mengaktifkan enkripsi untuk data Amazon EFS yang sedang transit antara AWS Batch host dan server Amazon EFS. Enkripsi transit harus diaktifkan jika otorisasi IAM Amazon EFS digunakan. Jika parameter ini diabaikan, nilai default
DISABLED
akan digunakan. Untuk informasi lebih lanjut, lihat Mengenkripsi data saat transit dalam Panduan Pengguna Amazon Elastic File System. transitEncryptionPort
-
Tipe: Integer
Wajib: Tidak
Port yang digunakan saat mengirim data terenkripsi antara AWS Batch host dan server Amazon EFS. Jika Anda tidak menentukan port enkripsi transit, strategi pemilihan port yang digunakan oleh pembantu pemasangan Amazon EFS akan digunakan. Nilai harus antara 0 dan 65.535. Untuk informasi lebih lanjut, lihat Pembantu Pemasangan EFS dalam Panduan Pengguna Amazon Elastic File System.
authorizationConfig
-
Tipe: Objek
Wajib: Tidak
Detail konfigurasi otorisasi untuk sistem file Amazon EFS.
accessPointId
-
Tipe: String
Wajib: Tidak
ID titik akses yang akan digunakan. Jika jalur akses ditentukan, nilai direktori asal di
efsVolumeConfiguration
harus diabaikan atau diatur ke/
. Ini akan memberlakukan jalur yang ditetapkan pada titik akses EFS. Jika titik akses digunakan, enkripsi transit harus diaktifkan diEFSVolumeConfiguration
. Untuk informasi lebih lanjut, lihat Bekerja dengan Titik Akses Amazon EFS dalam Panduan Pengguna Amazon Elastic File System. iam
-
Tipe: String
Nilai yang valid:
ENABLED
|DISABLED
Wajib: Tidak
Menentukan apakah akan menggunakan peran IAM AWS Batch job yang ditentukan dalam definisi pekerjaan saat memasang sistem file Amazon EFS. Jika diaktifkan, enkripsi transit harus diaktifkan di
EFSVolumeConfiguration
. Jika parameter ini diabaikan, nilai defaultDISABLED
akan digunakan. Untuk informasi selengkapnya tentang peran eksekusi IAM, lihatAWS Batch Peran eksekusi IAM.