Dalam lingkungan Kubernetes yang semakin kompleks, manajemen penyimpanan yang persisten menjadi kebutuhan penting bagi banyak aplikasi.

Salah satu konsep utama yang harus dikuasai adalah Kubernetes Persistent Volume dan Persistent Volume Claim.

Nah, dalam artikel ini, kita akan mengupas tuntas dua komponen penting ini dan bagaimana mereka bekerja bersama untuk memberikan solusi penyimpanan yang handal di Kubernetes.

Baca Juga: Docker vs Kubernetes: Memahami Perbedaan dan Kegunaan Utamanya

Apa Itu Persistent Volume (PV)?

Persistent Volume (PV) dalam Kubernetes adalah resource penyimpanan yang disediakan oleh administrator cluster.

PV bisa dianggap sebagai bagian dari infrastruktur penyimpanan yang telah di-setup terlebih dahulu, siap digunakan oleh aplikasi-aplikasi yang berjalan di dalam Kubernetes.

Resource ini bersifat independen dari siklus hidup pod.

Artinya, meskipun pod yang menggunakan PV dihentikan atau dihapus, data yang disimpan di dalam PV tetap ada dan tidak terpengaruh.

Jenis penyimpanan yang dapat dikonfigurasi sebagai PV adalah seperti, Network File System (NFS).

PV ini disediakan melalui deklarasi konfigurasi dan dapat diatur sesuai dengan kebutuhan storage yang diinginkan oleh pengguna.

Apa Itu Persistent Volume Claim (PVC)?

Jika PV adalah resource penyimpanan yang sudah disiapkan, maka Persistent Volume Claim (PVC) adalah permintaan kamu untuk memanfaatkan resource tersebut.

PVC adalah deklarasi kebutuhan penyimpanan yang dibuat oleh aplikasi atau pod yang memerlukan ruang disk persisten.

Di dalam PVC, kamu menentukan berapa kapasitas penyimpanan yang dibutuhkan dan bagaimana penyimpanan tersebut akan digunakan, seperti apakah akan diakses sebagai baca/tulis (ReadWriteOnce), atau diakses oleh banyak pod secara bersamaan (ReadOnlyMany atau ReadWriteMany).

Ketika PVC diajukan, Kubernetes akan mencari Persistent Volume yang cocok untuk memenuhi permintaan ini berdasarkan spesifikasi yang diberikan.

Jika PV yang sesuai ditemukan, maka PVC akan terikat ke PV tersebut, dan aplikasi dapat mulai menyimpan datanya.

Baca Juga: Memahami Apa Itu Rancher: Mengelola Kubernetes dengan Mudah dan Efisien

Bagaimana Persistent Volume dan Persistent Volume Claim Bekerja Bersama?

Proses interaksi antara PV dan PVC dapat diilustrasikan seperti berikut:

  1. Provisioning

    Administrator cluster menyediakan Persistent Volume. Ini bisa dilakukan secara manual (statically provisioned) atau secara otomatis oleh Kubernetes (dynamically provisioned) melalui storage class.

  2. Claiming

    Pengguna atau aplikasi membuat Persistent Volume Claim yang menggambarkan kebutuhan penyimpanan, seperti ukuran dan mode akses.

  3. Binding

    Kubernetes mencocokkan PVC dengan PV yang memenuhi persyaratan. Jika cocok, keduanya diikat, dan PVC siap digunakan oleh pod.

  4. Using

    Pod menggunakan PVC yang sudah terhubung ke PV. Data yang disimpan di dalam PVC ini akan tetap ada meskipun pod dihentikan atau di-restart.

  5. Releasing

    Ketika PVC tidak lagi digunakan, PV dapat dilepaskan dan dihapus jika diperlukan, tergantung pada kebijakan reclaiming yang ditentukan (Retain, Recycle, Delete).

Manfaat Penggunaan Kubernetes Persistent Volume

Penggunaan Kubernetes Persistent Volume memberikan fleksibilitas bagi developer dalam mengelola penyimpanan data yang tahan lama.

Tidak seperti penyimpanan ephemera (sementara) yang hilang ketika pod dihentikan, PV memungkinkan data tetap tersedia bahkan ketika pod mengalami gangguan.

Ini sangat bermanfaat untuk aplikasi stateful seperti database, sistem log, dan aplikasi lain yang memerlukan penyimpanan permanen.

Kesimpulan

Dalam ekosistem Kubernetes, Kubernetes Persistent Volume dan Persistent Volume Claim bekerja bersama untuk memberikan solusi penyimpanan yang scalable dan fleksibel.

PV berperan sebagai resource penyimpanan yang disediakan oleh administrator, sementara PVC memungkinkan pengguna untuk meminta dan mengakses penyimpanan tersebut sesuai dengan kebutuhan aplikasi mereka.

Dengan demikian, penguasaan konsep Kubernetes Persistent Volume menjadi kunci untuk memastikan penyimpanan data yang persisten dan handal dalam setiap deployment aplikasi berbasis Kubernetes.

Baca Juga: Kubernetes VS OpenStack: Mana yang Harus Kamu Pilih?

About The Author

Follow by Email
LinkedIn
Share
WhatsApp