Apa itu Kubernetes (K8s)?
Kubernetes (sering disingkat K8s, karena ada 8 huruf di antara huruf ‘K’ dan ‘s’) adalah platform orkestrasi kontainer open-source yang awalnya dikembangkan oleh Google dan kini dikelola oleh Cloud Native Computing Foundation (CNCF).
Jika Docker bertugas membungkus aplikasi ke dalam kontainer, maka Kubernetes bertugas mengorkestrasi ribuan kontainer tersebut di puluhan hingga ratusan server fisik atau virtual secara otomatis, cerdas, dan tahan banting.
Mengapa Butuh Kubernetes? (Perbandingan dengan Docker Swarm)
Sebelumnya kita telah mempelajari Docker Swarm. Lalu mengapa industri enterprise beralih ke Kubernetes?
Arsitektur Kubernetes
Kubernetes membagi tanggung jawab kluster menjadi dua komponen utama:
1. Control Plane (Master Node)
Otak pengendali kluster yang mengambil keputusan global:
kube-apiserver: Pintu gerbang utama untuk semua interaksi (menerima perintah dari kubectl dan komponen internal).
etcd: Penyimpanan basis data terdistribusi yang sangat konsisten untuk menyimpan semua data status kluster.
kube-scheduler: Memilih worker node yang paling sesuai untuk menjalankan Pod baru berdasarkan kapasitas CPU/RAM.
kube-controller-manager: Menjalankan proses controller untuk memastikan jumlah Pod aktual selalu sama dengan jumlah yang didefinisikan (desired state).
2. Worker Node
Mesin pelaksana tempat aplikasi sebenarnya berjalan:
kubelet: Agen yang berkomunikasi dengan API Server dan memastikan kontainer di dalam Pod berjalan dengan baik.
kube-proxy: Mengatur aturan jaringan dan penerusan port (packet filtering) pada setiap node.
- Container Runtime: Perangkat lunak yang menjalankan kontainer (misal:
containerd atau CRI-O).
Objek-Objek Dasar Kubernetes
Di Kubernetes, kamu tidak berinteraksi langsung dengan kontainer, melainkan melalui abstraksi objek:
- Pod: Unit terkecil yang dapat di-deploy di Kubernetes. Sebuah Pod membungkus satu (atau beberapa) kontainer yang berbagi IP dan penyimpanan yang sama.
- Deployment: Objek pengendali yang mengatur pembuatan, replika, dan pembaruan (rolling update) dari sekumpulan Pod identik.
- Service: Abstraksi jaringan yang menyediakan alamat IP stabil (ClusterIP, NodePort, LoadBalancer) dan mendistribusikan lalu lintas ke Pod-Pod yang dinamis.
- Ingress: Pintu masuk HTTP/HTTPS dari dunia luar ke Service internal (berperan sebagai reverse proxy cerdas).
- ConfigMap & Secret: Memisahkan konfigurasi lingkungan dan data rahasia (password/token) dari dalam image aplikasi.
Last modified on October 26, 2026