Elastic Container Instance (ECI) mendukung pemasangan volume untuk penyimpanan persisten dan sementara. Topik ini menjelaskan jenis volume yang didukung serta cara mendeklarasikan dan memasangnya melalui API atau Konsol ECI.
Mengapa Anda memerlukan volume
Secara default, sistem file kontainer bersifat ephemeral: data yang ditulis di dalam kontainer hanya bertahan selama kontainer tersebut aktif. Hal ini menimbulkan dua masalah praktis:
Kehilangan data saat restart: Ketika kontainer mengalami crash dan restart, semua file yang ditulis selama sesi sebelumnya akan hilang.
Tidak ada berbagi antar-kontainer: Kontainer dalam satu Elastic Container Instance yang sama tidak dapat berbagi file melalui sistem file lokal.
Volume mengatasi kedua masalah tersebut dengan menyediakan penyimpanan yang tetap ada secara independen dari siklus hidup kontainer.
Jenis volume
ECI mendukung lima jenis volume untuk memenuhi berbagai kebutuhan penyimpanan. Kasus penggunaan umum meliputi:
Menyimpan file database secara persisten agar data tetap tersedia meskipun kontainer di-restart
Berbagi file konfigurasi atau data log antar-kontainer dalam satu instans yang sama
Menyimpan data tidak terstruktur seperti gambar dan file media di Object Storage Service (OSS)
Menyediakan ruang scratch sementara untuk hasil pemrosesan sementara
Menyuntikkan data konfigurasi ke dalam kontainer
Pilih jenis volume berdasarkan dua kriteria utama: apakah data harus tetap tersedia setelah restart, dan apakah beberapa instans memerlukan akses simultan.
| Jenis volume | Deskripsi | Persistensi | Mode API | Mode Konsol |
|---|---|---|---|---|
| Disk | Penyimpanan blok dengan latensi rendah, performa tinggi, daya tahan tinggi, dan keandalan tinggi. Cocok untuk database dan middleware. Hanya dapat dipasang ke satu instans — bukan tipe penyimpanan bersama. | Persistent | Didukung | Tidak didukung |
| NAS | Sistem file terdistribusi (File Storage NAS) dengan akses bersama dan auto scaling. Cocok untuk berbagi data antar-instans, analisis data besar, aplikasi web, dan penyimpanan log. Data tetap tersimpan meskipun instans dihapus. | Persistent | Didukung | Didukung |
| OSS | Object storage (Object Storage Service) untuk data tidak terstruktur seperti gambar dan file media. Mendukung akses bersama antar-instans. Dipasang melalui ossfs (client berbasis FUSE). Dioptimalkan untuk operasi baca — hindari beban kerja yang intensif menulis. Data tetap tersimpan meskipun instans dihapus. | Persistent | Didukung | Didukung |
| emptyDir | Ruang scratch temporary yang cakupannya terbatas pada kelompok kontainer. Data akan dihapus saat Elastic Container Instance di-restart. | Ephemeral | Didukung | Didukung |
| ConfigFile | Menyampaikan data konfigurasi ke dalam kelompok kontainer. | Ephemeral | Didukung | Didukung |
Volume OSS dipasang menggunakan ossfs, yang diimplementasikan sebagai Filesystem in Userspace (FUSE). Untuk beban kerja yang intensif menulis, gunakan NAS atau volume lainnya.
Konfigurasi volume
Mengonfigurasi volume merupakan proses dua langkah: deklarasikan volume di tingkat kelompok kontainer, lalu pasang ke kontainer tertentu. Deklarasi menggunakan parameter Volume.N.Name dan Volume.N.Type; pemasangan menggunakan parameter terkait Container.VolumeMount.
Mode API
Saat memanggil operasi CreateContainerGroup, deklarasikan setiap volume menggunakan parameter Volume.N.Name dan Volume.N.Type, lalu pasang menggunakan parameter terkait Container.VolumeMount.
Tabel berikut mencantumkan nilai yang didukung untuk parameter Volume.N.Type.
Volume.N.Type nilai | Jenis volume | Referensi |
|---|---|---|
EmptyDirVolume | emptyDir (direktori temporary) | Memasang volume emptyDir |
ConfigFileVolume | ConfigFile (file konfigurasi) | Memasang volume ConfigFile |
NFSVolume | NFS (sistem file NAS) | Memasang volume NAS |
FlexVolume | Plugin FlexVolume — mendukung Disk, NAS, dan OSS | Memasang volume disk, Memasang volume NAS, dan Memasang bucket OSS ke Elastic Container Instance sebagai volume |
DiskVolumejuga merupakan nilaiVolume.N.Typeyang valid, tetapi tidak direkomendasikan. GunakanFlexVolumeuntuk memasang disk.
Mode Konsol
Saat membuat Elastic Container Instance di halaman pembelian Elastic Container Instance, konfigurasikan volume di bagian Container Group Configurations, lalu pasang di bagian Container Configurations.
Pada bagian Container Group Configurations, klik Advanced Settings dan tentukan volume. Konsol mendukung jenis volume berikut:
Item konfigurasi (ConfigFile)
Direktori sementara (emptyDir)
Persistensi NAS (NFS)
Persistensi OSS (FlexVolume)

Pada bagian Container Configurations, klik Advanced Settings di samping kontainer untuk memasang volume tersebut.

Volume Disk tidak didukung di Konsol. Gunakan API untuk memasang disk.