Belajar Cilium - Pre-Requisites Skill & Setup Environment
Episode 0 of 23

Belajar Cilium - Pre-Requisites Skill & Setup Environment

Sebelum menyentuh Cilium, kalian perlu menguasai Kubernetes dasar (Pod, Service, kube-proxy, NetworkPolicy), Linux networking, dan konsep CNI. Di episode ini kalian juga menyiapkan cluster uji lokal, menginstall Cilium CLI dan hubble CLI, serta memverifikasi seluruh environment siap untuk mengikuti series ini.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Pendahuluan

Selamat datang di series Belajar Cilium! Series ini akan membawa kalian menguasai Cilium — CNI (Container Network Interface) berbasis eBPF untuk networking, security, dan observability di Kubernetes — dari fondasi konsep sampai production readiness. Total ada 23 episode yang tersusun dalam enam fase.

Sebelum menyentuh cilium install, ada beberapa skill dasar dan perangkat lunak yang wajib kalian miliki. Mengapa prasyarat ini penting? Karena Cilium bekerja di lapisan yang lebih dalam dari sekadar file Deployment biasa. Cilium mengkompilasi program eBPF ke dalam kernel Linux, menggantikan peran kube-proxy, dan memahami identitas workload — semua ini menuntut pemahaman dasar tentang cara Kubernetes dan kernel Linux bekerja.

Episode 0 ini adalah peta jalan kalian: kita akan memastikan skill dasar terpenuhi, menyiapkan cluster uji lokal, menginstall tooling yang dibutuhkan, dan memverifikasi environment untuk pertama kali. Setelah episode ini selesai, seluruh series bisa diikuti dengan nyaman dan tanpa hambatan.

Skill Dasar yang Wajib Dimiliki

Kubernetes: Pod, Service, dan kube-proxy

Kalian wajib memahami objek dasar Kubernetes: Pod sebagai unit terkecil yang membungkus container, Service (ClusterIP, NodePort, LoadBalancer) sebagai abstraksi jaringan di depan pod, dan kube-proxy sebagai komponen yang selama ini mengatur aturan jaringan (iptables) untuk mem-forward traffic ke pod. Pahami juga NetworkPolicy bawaan Kubernetes, karena Cilium memperluas konsep ini jauh lebih dalam dengan pendekatan berbasis identitas.

Linux Networking dan Namespace Jaringan

Cilium berjalan di dalam kernel, jadi pengetahuan Linux networking sangat membantu. Konsep yang wajib kalian kenal:

  • veth: pasangan virtual ethernet yang menghubungkan network namespace pod dengan namespace host.
  • Bridge: switch virtual tempat bergantungnya beberapa veth.
  • Routing: proses memutuskan ke mana sebuah paket harus diteruskan.
  • iptables: tabel aturan yang selama ini dipakai kube-proxy dan CNI lain.
  • Network namespace: mekanisme isolasi jaringan antar pod dan antar proses.

Pahami juga cara kerja container: container adalah proses yang diisolasi dengan namespace dan cgroups. Di episode 4 kita akan melihat bagaimana Cilium mengganti chain iptables dengan program eBPF yang jauh lebih cepat dan tidak perlu traversal aturan panjang.

Konsep Container Runtime dan CNI

CNI adalah spesifikasi yang mendefinisikan bagaimana runtime (containerd, CRI-O) memanggil plugin jaringan untuk menyiapkan network namespace sebuah pod. Cilium adalah salah satu implementasi CNI. Pastikan kalian paham alur dasarnya: runtime memanggil plugin CNI, plugin mengalokasikan alamat IP, plugin memasang veth, lalu traffic pod mengalir sesuai aturan yang di-compile ke kernel.

Perangkat Lunak yang Perlu Disiapkan

Cluster Kubernetes Lokal

Untuk mencoba semua fitur, gunakan cluster uji lokal seperti kind, minikube, atau k3s. Cilium membutuhkan Linux kernel modern (5.8 ke atas) untuk dukungan eBPF penuh. Cek dulu versi kernel host kalian:

Cek versi kernel
uname -r

Jika angkanya di bawah 5.8, pertimbangkan untuk upgrade kernel atau gunakan VM dengan kernel yang lebih baru. Selanjutnya, buat cluster kind sebagai wadah percobaan:

Buat cluster kind
kind create cluster --name cilium-dev
kubectl cluster-info

kubectl cluster-info memastikan koneksi ke cluster berjalan normal. Ingat satu aturan penting: jangan install CNI lain terlebih dahulu, karena kita akan menginstall Cilium dari nol di episode 3.

Cilium CLI dan hubble CLI

Unduh Cilium CLI (v0.19.x) dan hubble CLI dari rilis resmi GitHub. Kedua tool ini akan menjadi sahabat kalian sepanjang series:

Install Cilium CLI
curl -L --remote-name-all https://github.com/cilium/cilium-cli/releases/latest/download/cilium-linux-amd64.tar.gz
tar xzvfC cilium-linux-amd64.tar.gz /usr/local/bin
rm cilium-linux-amd64.tar.gz

Proses serupa berlaku untuk hubble CLI dengan file hubble-linux-amd64.tar.gz dari repository cilium/hubble. Jika memakai macOS atau arsitektur lain, sesuaikan nama file dengan platform masing-masing.

Helm dan kubectl

Helm dibutuhkan karena nanti kita akan membahas instalasi berbasis chart di episode 3 dan episode 18. Pastikan ketiganya terinstall dengan benar:

Verifikasi tooling
cilium version
hubble version
helm version --short

cilium version menampilkan versi CLI dan versi image yang akan dipakai saat install. Semua perintah di atas harus mencetak versi tanpa error.

Verifikasi Environment

Sebelum lanjut ke episode 1, jalankan verifikasi menyeluruh untuk memastikan semuanya siap:

Cek environment secara menyeluruh
uname -r
kubectl get nodes
cilium version
hubble version
helm version

Kelima perintah di atas harus berhasil tanpa error. kubectl get nodes harus menampilkan node dengan status Ready. Jika salah satu gagal, perbaiki dulu — fondasi yang kuat akan membuat 22 episode berikutnya terasa jauh lebih ringan.

Warning

Cilium membutuhkan node yang mendukung eBPF. Cluster cloud lama atau VM tanpa kernel modern sering gagal saat memuat program eBPF. Selalu cek dukungan kernel sebelum melanjutkan ke episode berikutnya.

Ringkasan Prasyarat

Rangkuman yang sudah kalian siapkan di episode 0:

  • Skill Kubernetes: Pod, Service, kube-proxy, dan NetworkPolicy.
  • Linux networking: veth, bridge, routing, iptables, dan network namespace.
  • Konsep CNI: alur runtime memanggil plugin jaringan.
  • Cluster uji lokal (kind, minikube, atau k3s) dengan kernel 5.8 ke atas.
  • Cilium CLI, hubble CLI, dan Helm terinstall dan terverifikasi.

Jika ada yang belum terpenuhi, berhenti dulu dan lengkapi sebelum melanjutkan. Perjalanan 22 episode ke depan akan jauh lebih lancar dengan pijakan yang kuat ini.

Penutup

Inti yang harus dibawa pulang:

  • Cilium adalah CNI berbasis eBPF: kuasai dasar kernel dan Linux networking.
  • Pahami alur Pod, Service, dan kube-proxy sebelum melihat bagaimana Cilium menggantinya.
  • Gunakan cluster lokal dengan kernel 5.8 ke atas agar fitur eBPF penuh aktif.
  • Siapkan Cilium CLI, hubble CLI, dan Helm sejak awal.
  • Selalu verifikasi environment dengan uname, kubectl, dan cilium version.

Di episode 1 selanjutnya kita akan membahas sejarah, latar belakang, dan mengapa membutuhkan Cilium — dari proyek internal Isovalent pada tahun 2017, evolusinya menjadi proyek CNCF yang graduated, hingga masalah nyata yang diselesaikannya: keterbatasan kube-proxy, NetworkPolicy yang tidak memahami identitas, dan kebutuhan networking performa tinggi. Pastikan cluster kalian sudah siap, karena perjalanan Belajar Cilium baru saja dimulai!