All Products
Search
Document Center

Enterprise Distributed Application Service:Konfigurasikan penyimpanan lokal

Last Updated:Mar 12, 2026

Penyimpanan lokal memasang file atau direktori dari sistem file node host ke dalam Pod yang berjalan di kluster Kubernetes Enterprise Distributed Application Service (EDAS), memberikan kontainer akses langsung ke sistem file host untuk I/O file berkecepatan tinggi tanpa overhead jaringan. Fitur ini berguna untuk membaca log tingkat host, berbagi data sementara antar kontainer, atau mengakses file konfigurasi spesifik node.

Cara kerja penyimpanan lokal

Di kluster Container Service for Kubernetes (ACK) yang dikelola oleh EDAS, penyimpanan lokal menggunakan volume hostPath Kubernetes untuk memasang jalur sistem file host ke dalam kontainer.

EDAS mendukung dua jenis penyimpanan lokal:

TypeKubernetes volumeUse caseData lifecycle
Local File of HosthostPathMengakses file atau direktori tertentu pada node host, seperti log sistem atau konfigurasi tingkat nodeData tetap tersimpan di host secara independen dari siklus hidup Pod
emptyDiremptyDirBerbagi data sementara antar kontainer dalam Pod yang sama, seperti ruang scratch, cache, atau pertukaran data antar-kontainerDibuat saat Pod dimulai pada suatu node. Dihapus secara permanen ketika Pod dihapus dari node tersebut
Penting

Volume hostPath memberikan akses sistem file host ke kontainer, yang menimbulkan risiko keamanan. Kontainer dengan akses tersebut dapat membaca kredensial hak istimewa (seperti kredensial kubelet) atau mengeksploitasi socket runtime kontainer untuk melakukan container escape. Jika Anda memerlukan penyimpanan persisten, gunakan PersistentVolume local sebagai gantinya. Jika Anda harus menggunakan hostPath, batasi pemasangan ke mode read-only bila memungkinkan.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Akun EDAS dengan akses ke Konsol EDAS

  • Kluster Kubernetes (ACK) yang terdaftar di EDAS

  • Namespace dan wilayah yang tersedia untuk aplikasi Anda

Tambahkan penyimpanan lokal ke aplikasi baru

  1. Masuk ke Konsol EDAS. Di panel navigasi sebelah kiri, pilih Application Management > Applications.

  2. Di bilah navigasi atas, pilih wilayah. Di bagian atas halaman, pilih namespace. Di pojok kiri atas, klik Create Application.

  3. Pada langkah Basic information, atur parameter berikut lalu klik Next.

    ParameterDescription
    Cluster TypePilih Kubernetes Clusters
    Application Runtime EnvironmentPilih runtime yang sesuai dengan aplikasi Anda. Lihat opsi runtime aplikasi
  4. Pada langkah Configurations, konfigurasikan informasi lingkungan, informasi dasar, metode penyebaran, dan parameter sumber daya. Klik Next.

  5. Pada langkah Advanced Settings, buka Local Storage dan konfigurasikan tipe volume:

    • Untuk memasang jalur host, lihat parameter Local File of Host.

    • Untuk membuat volume bersama sementara, lihat parameter emptyDir.

  6. Klik Create Application.

  7. Di halaman Creation Completed, tinjau pengaturan di bagian Basic information, Configurations, dan Advanced Settings. Klik Create Application untuk mengonfirmasi.

  8. Di halaman Application Overview, klik View Details. Di halaman Change List, pantau progres penyebaran. Setelah perubahan selesai, periksa bagian Basic information di halaman Application Overview. Keberadaan Pod yang berjalan menandakan penyebaran berhasil.

Perbarui penyimpanan lokal untuk aplikasi yang sudah ada

Penting

Aplikasi akan dimulai ulang setelah Anda menyimpan perubahan ini. Lakukan operasi ini selama jam sepi.

  1. Masuk ke Konsol EDAS. Di panel navigasi sebelah kiri, pilih Application Management > Applications.

  2. Di bilah navigasi atas, pilih wilayah. Di bagian atas halaman, pilih namespace. Dari daftar drop-down Cluster Type, pilih Container Service or Serverless Kubernetes Cluster.

  3. Temukan aplikasi target dan klik namanya.

  4. Di halaman Overview atau Basic information, pilih Deploy > Deploy di pojok kanan atas.

  5. Di halaman Select Deployment Mode, pilih mode penyebaran lalu klik Start Deployment.

  6. Konfigurasikan lingkungan dan paket penyebaran, lalu buka Local Storage dan atur parameter volume:

    • Untuk memasang jalur host, lihat parameter Local File of Host.

    • Untuk membuat volume bersama sementara, lihat parameter emptyDir.

  7. Klik OK.

Parameter penyimpanan lokal

Parameter Local File of Host

Opsi Local File of Host dipetakan ke volume hostPath Kubernetes. Opsi ini memasang file atau direktori dari node host ke dalam kontainer.

Bidang type mengontrol apakah Kubernetes memvalidasi atau membuat jalur di host sebelum pemasangan:

File typeValueBehavior
DefaultString kosongMemasang jalur tanpa validasi. Tidak ada pemeriksaan yang dilakukan sebelum pemasangan
(Create) File DirectoryDirectoryOrCreateJika jalur tidak ada, membuat direktori kosong dengan izin 0755. Direktori mewarisi grup dan kepemilikan kubelet
File DirectoryDirectoryDirektori harus sudah ada di jalur tersebut. Kontainer gagal dimulai jika direktori tidak ada
(Create) FileFileOrCreateJika jalur tidak ada, membuat file kosong dengan izin 0644. File mewarisi grup dan kepemilikan kubelet
FileFileFile harus sudah ada di jalur tersebut. Kontainer gagal dimulai jika file tidak ada
SocketSocketSocket UNIX harus sudah ada di jalur tersebut. Kontainer gagal dimulai jika socket tidak ada
CharDeviceCharDevicePerangkat karakter harus sudah ada di jalur tersebut (hanya untuk node Linux). Kontainer gagal dimulai jika perangkat tidak ada
BlockDeviceBlockDevicePerangkat blok harus sudah ada di jalur tersebut (hanya untuk node Linux). Kontainer gagal dimulai jika perangkat tidak ada
Catatan

FileOrCreate tidak membuat direktori induk. Jika direktori induk dari file target tidak ada, Pod gagal dimulai. Untuk menghindari masalah ini, pasang terlebih dahulu direktori induk menggunakan DirectoryOrCreate, lalu pasang file tersebut.

Parameter tambahan untuk Local File of Host:

ParameterDescription
Mount PathJalur di dalam kontainer tempat file atau direktori host dipasang
Host PathJalur pada node host yang akan dipasang ke dalam kontainer
Mount ModeMode akses untuk volume. Nilai yang valid: Read/Write dan Read-only. Gunakan Read-only bila memungkinkan untuk mengurangi risiko keamanan
subPathExprEkspresi referensi bidang yang digunakan untuk membuat nama subdirektori di dalam volume. Berguna untuk memberikan setiap kontainer atau instans Pod direktorinya sendiri

Parameter emptyDir

Volume emptyDir dibuat saat Pod ditugaskan ke suatu node. Semua kontainer dalam Pod dapat membaca dan menulis ke volume emptyDir yang sama, sehingga cocok untuk ruang scratch, cache, atau pertukaran data antar-kontainer. Ketika Pod dihapus dari node karena alasan apa pun (termasuk crash, skala turun, atau redeployment), data dalam volume emptyDir dihapus secara permanen.

ParameterDescription
Mount ModeMode akses untuk volume. Nilai yang valid: Read/Write dan Read-only
Mount PathJalur di dalam kontainer tempat volume emptyDir dipasang
subPathExprEkspresi referensi bidang yang digunakan untuk membuat nama subdirektori di dalam volume. Berguna untuk memberikan setiap kontainer atau instans Pod direktorinya sendiri

Verifikasi konfigurasi

Setelah penyebaran selesai, verifikasi bahwa penyimpanan lokal dikonfigurasi dengan benar menggunakan salah satu metode berikut:

Check change records

Di panel navigasi sebelah kiri halaman detail aplikasi, klik Change Records. Jika kolom Change Status menampilkan Success, konfigurasi penyimpanan telah aktif.

Periksa status Pod

Di halaman Application Overview, klik Running Pods (Click View) di samping Running Status. Di bagian Pod, periksa kolom Status. Titik hijau menunjukkan Pod sedang berjalan dan konfigurasi telah diterapkan.

Pertimbangan produksi

Pertimbangkan hal-hal berikut saat menggunakan penyimpanan lokal di lingkungan produksi:

  • Keamanan: Volume hostPath melewati batas isolasi kontainer. Batasi jalur pemasangan ke cakupan minimum yang diperlukan dan gunakan mode pemasangan Read-only bila memungkinkan. Hindari memasang jalur sensitif seperti /, /etc, atau /var/run.

  • Penjadwalan Pod: Data hostPath terikat ke node tertentu. Jika Pod dijadwalkan ulang ke node berbeda, data dari host sebelumnya tidak dapat diakses. Untuk data yang harus bertahan meskipun terjadi perpindahan node, gunakan PersistentVolume local atau penyimpanan berbasis jaringan.

  • Tekanan disk: Penggunaan volume hostPath tidak dilacak oleh manajemen penyimpanan sementara Kubernetes. Pantau penggunaan disk pada node host untuk mencegah tekanan disk akibat penulisan kontainer ke pemasangan hostPath.

  • Ukuran emptyDir: Volume emptyDir mengonsumsi ruang disk node (atau memori jika didukung oleh tmpfs). Satu Pod yang menulis data dalam jumlah besar ke emptyDir dapat menyebabkan tekanan disk pada node.

  • Kehilangan data: Data emptyDir dihapus saat Pod dihapus. Jangan menyimpan data yang harus bertahan setelah restart Pod di volume emptyDir.

Opsi runtime aplikasi

Pilih lingkungan runtime berdasarkan jenis aplikasi dan format pengemasannya.

RuntimeOptionUse when
JavaCustomMenyebarkan dengan gambar kontainer kustom
JavaJavaMenyebarkan aplikasi Dubbo atau Spring Boot dengan paket JAR. Atur Java Environment setelah pemilihan
JavaTomcatMenyebarkan aplikasi Dubbo atau Spring dengan paket WAR. Atur Java Environment dan Container Version setelah pemilihan
JavaEDAS-Container (HSF)Menyebarkan aplikasi High-speed Service Framework (HSF) dengan paket WAR atau FatJar. Atur Java Environment, Pandora Version, dan Ali-Tomcat Version setelah pemilihan
PHPPHPMenjalankan aplikasi PHP di Apache HTTP Server
Multi-languageNode.js, C++, Go, and Other LanguagesMenyebarkan dengan gambar kontainer kustom