HPA - Tambah Jumlah Replika jika Dibutuhkan Secara Otomatis
Pada artikel sebelumnya, kita telah membahas tentang CronJob yang memungkinkan kita menjalankan Job secara terjadwal. Kali ini, kita akan membahas tentang Horizontal Pod Autoscaler (HPA), sebuah resource Kubernetes yang memungkinkan aplikasi kita untuk skala secara otomatis berdasarkan kebutuhan. Apa itu Horizontal Pod Autoscaler? Horizontal Pod Autoscaler (HPA) adalah resource Kubernetes yang secara otomatis menambah atau mengurangi jumlah replika Pod dalam sebuah Deployment, ReplicaSet, atau StatefulSet berdasarkan metrik tertentu, seperti penggunaan CPU atau memori. ...
CronJob - Kontroler yang Mengatur Job
Pada artikel sebelumnya, kita telah membahas tentang Job yang berjalan sampai fungsi tugasnya selesai. Job sangat berguna untuk tugas-tugas yang hanya perlu dijalankan sekali. Namun, bagaimana jika kita ingin menjalankan tugas tersebut secara berkala, misalnya setiap jam atau setiap hari? Di sinilah peran CronJob menjadi sangat penting. Apa itu CronJob? CronJob adalah resource Kubernetes yang membuat Job berdasarkan jadwal yang ditentukan. CronJob mengikuti format penjadwalan cron yang umum digunakan di sistem Unix dan Linux. Dengan CronJob, kita dapat menjalankan tugas secara berkala seperti backup, pembuatan laporan, pengiriman email, atau tugas pemeliharaan lainnya. ...
Job - Berjalan sampai Fungsi Tugasnya Selesai
Pada artikel sebelumnya, kita telah membahas tentang DaemonSet yang memastikan Pod berjalan pada setiap node dalam klaster. Kali ini, kita akan membahas tentang Job, sebuah kontroler yang menjalankan Pod sampai tugasnya selesai dengan sukses. Apa itu Job? Job adalah kontroler di Kubernetes yang membuat satu atau lebih Pod dan memastikan bahwa sejumlah tertentu Pod berhasil menyelesaikan tugasnya. Berbeda dengan Deployment atau ReplicaSet yang dirancang untuk menjalankan aplikasi yang berjalan terus-menerus (long-running), Job dirancang untuk tugas yang memiliki titik akhir yang jelas, seperti batch processing, komputasi paralel, atau tugas pemeliharaan. ...
DaemonSet - Kontroler Pod untuk Semua Node
Pada artikel sebelumnya, kita telah membahas tentang Secret yang digunakan untuk menyimpan data sensitif di Kubernetes. Kali ini, kita akan membahas tentang DaemonSet, sebuah kontroler yang memastikan Pod berjalan pada semua (atau beberapa) node dalam klaster. Apa itu DaemonSet? DaemonSet adalah kontroler yang memastikan bahwa salinan Pod berjalan pada setiap node (atau subset node) dalam klaster Kubernetes. Ketika node baru ditambahkan ke klaster, Pod akan otomatis ditambahkan ke node tersebut. Ketika node dihapus dari klaster, Pod tersebut akan dibersihkan oleh garbage collector. ...
Secret - Yang Menjaga Konfigurasi Rahasia
Pada artikel sebelumnya, kita telah membahas tentang ConfigMap yang digunakan untuk menyimpan konfigurasi aplikasi. Namun, bagaimana jika kita perlu menyimpan data sensitif seperti password, token, atau kunci API? Menyimpan data sensitif di ConfigMap bukanlah praktik yang baik karena ConfigMap menyimpan data dalam bentuk plaintext. Di sinilah Secret berperan. Apa itu Secret? Secret adalah objek Kubernetes yang digunakan untuk menyimpan dan mengelola informasi sensitif, seperti password, token OAuth, kunci SSH, atau kunci API. Secret mirip dengan ConfigMap, tetapi dirancang khusus untuk menyimpan data rahasia. ...
ConfigMap - Tempat Konfigurasimu Disimpan
Pada artikel sebelumnya, kita telah membahas tentang Service yang berfungsi sebagai gerbang penghubung antar aplikasi di Kubernetes. Kita sudah bisa membuat aplikasi kita berjalan di dalam klaster Kubernetes dan mengeksposnya baik di dalam maupun di luar klaster. Namun, bagaimana cara mengelola konfigurasi aplikasi kita? Bagaimana jika kita ingin mengubah konfigurasi tanpa harus membangun ulang image container? Di sinilah peran ConfigMap menjadi sangat penting. Apa itu ConfigMap? ConfigMap adalah objek API Kubernetes yang digunakan untuk menyimpan data non-rahasia dalam bentuk pasangan key-value. Pod dapat menggunakan ConfigMap sebagai variabel lingkungan, argumen command line, atau sebagai file konfigurasi dalam volume. ...
Service - Gerbang Penghubung dengan Service Lain
Pada artikel sebelumnya, kita telah membahas tentang Deployment yang mengatur ReplicaSet untuk mengelola Pod. Kita sudah bisa membuat aplikasi kita berjalan di dalam klaster Kubernetes dengan jumlah replika yang kita inginkan. Namun, bagaimana cara mengakses aplikasi tersebut? Bagaimana Pod bisa berkomunikasi dengan Pod lainnya? Di sinilah peran Service menjadi sangat penting. Apa itu Service? Service adalah abstraksi yang mendefinisikan sekumpulan Pod dan kebijakan untuk mengakses Pod-Pod tersebut. Dengan kata lain, Service adalah cara untuk mengekspos aplikasi yang berjalan pada sekumpulan Pod sebagai layanan jaringan. ...
Deployment - Kontroler yang Mengatur ReplicaSet
Setelah berhasil menjaga replikasi pod secara otomatis menggunakan replicaSet, resource yang akan kita bahas berikutnya adalah Kubernetes deployment. Kenapa kita perlu mempelajari deployment? Pengertian dan Kegunaan Kubernetes Deployment Dalam pengembangan aplikasi, fitur yang dikembangkan akan dirilis sehingga dapat digunakan pengguna. Sembari aplikasi berjaalan, kita juga perlu memelihara aplikasi dengan cara menambah fitur dan memperbaiki kesalahan yang ada pada aplikasi yang sudah berjalan. Fitur baru atau perbaikan kesalahan akan rilis pada versi yang berbeda dari versi yang sebelumnya. Pemberian versi mempermudah kita untuk memahami dan melacak perubahan pada aplikasi kita. ...
ReplicaSet - Kontroler yang Mengatur Replikasi Pod
Setelah berhasil membuat dan menjalankan pod, resource yang akan kita pelajari berikutnya adalah replicaSet. ReplicaSet adalah kontroler untuk mengatur jumlah replika pod. Mengapa kita perlu mereplikasi pod? Pengertian dan Kegunaan Kubernetes ReplicaSet Dalam kasus tertentu, kita perlu menjalankan beberapa pod yang sama. Contoh kasusnya adalah ketika kita memerlukan high availability pada aplikasi yang kita jalankan. High availability bisa dicapai dengan menjalankan aplikasi yang sama pada dua pod atau lebih. Jika salah satu pod mengalami kegagalan, maka pod yang lain tetap dapat mengolah request yang datang. ...
Pod - Unit Terkecil Tempat Kontainer Berjalan
Photo by Michael Jasmund on Unsplash Setelah berhasil mengolah Kubernetes namespace, sekarang kita akan membahas Kubernetes resources yang lain yaitu Pod. Pengertian dan Kegunaan Kubernetes Pod Untuk memulai membahas Pod, kita perlu mengingat kembali bahwa Kubernetes dibuat untuk mengorkestrasi banyak kontainer di banyak mesin. Kontainer yang diorkestrasi oleh Kubernetes akan ditempatkan di dalam Pod. Pod akan menunjukkan informasi mengenai docker image apa yang dijalankan, port yang dibuka pada kontainer, sudah berapa lama kontainer berjalan, dan banyak informasi lainnya. ...