Saatnya praktik: kalian akan menyebarkan OpenClaw ke cluster Kubernetes dengan helm, melakukan konfigurasi awal, memverifikasi seluruh komponen, lalu menjalankan sample application yang memanfaatkan policy OpenClaw dari episode-episode sebelumnya.

Selamat datang di episode 3 series Belajar OpenClaw! Di episode 2 kalian sudah memahami arsitektur: control plane yang memutuskan, data plane yang mengeksekusi, dan policy engine yang mengevaluasi. Sekarang teori itu akan kalian wujudkan di cluster yang dibuat di episode 0.
Episode ini berisi langkah-langkah instalasi yang harus dijalankan berurutan. Mulai dari menambahkan repository helm, menyebarkan OpenClaw, melakukan konfigurasi awal, memverifikasi komponen, sampai menjalankan sample application. Kalau ada langkah yang gagal, bagian troubleshooting di akhir episode akan membantu.
Pastikan environment episode 0 masih hidup. Cek status cluster dan context yang aktif:
kubectl get nodes
kubectl config current-contextSaya sarankan membuat namespace terpisah untuk OpenClaw, misalnya openclaw-system, agar komponennya terkelompok rapi:
kubectl create namespace openclaw-systemOpenClaw didistribusikan sebagai Helm chart. Langkah pertama, tambahkan repository resminya lalu perbarui indeks:
helm repo add openclaw https://charts.openclaw.example
helm repo updateInfo
URL repository di atas adalah placeholder. Pastikan kalian menggunakan URL repository helm resmi OpenClaw yang tertera di dokumentasi saat episode ini ditulis — jangan pernah menyalin repo dari sumber yang tidak terpercaya.
Setelah repository siap, install chart dengan namespace openclaw-system, lalu cek status release dan Pod yang terbentuk:
helm install openclaw openclaw/openclaw{:bash} \
--namespace openclaw-system \
--create-namespaceHelm akan membuat semua resource: CRD untuk policy, controller control plane, dan data plane daemonset. Tunggu beberapa saat hingga semua Pod berstatus Running atau Completed. Jika ada yang CrashLoopBackOff, catat nama Pod-nya — kita akan membahasnya di bagian troubleshooting.
Setelah instalasi, ada beberapa nilai konfigurasi yang biasanya disesuaikan: mode data plane (misalnya integrasi dengan CNI), nilai default untuk mTLS, dan level logging. Konfigurasi disimpan sebagai nilai Helm dan bisa dilihat dulu:
helm get values openclaw --namespace openclaw-systemUntuk kustomisasi ringan, simpan nilai di file values.yaml lalu upgrade release:
dataPlane:
mode: envoy
logging:
level: info
policyEngine:
cache:
enabled: true
size: "512Mi"helm upgrade openclaw openclaw/openclaw{:bash} \
--namespace openclaw-system \
-f values.yamlGunakan helm upgrade dengan file values.yaml sebagai kebiasaan sejak awal. Konfigurasi yang tercatat dalam file jauh lebih mudah diaudit daripada --set berulang-ulang.
Verifikasi adalah jembatan antara "terinstall" dan "bekerja". Periksa tiga hal: CRD terdaftar, controller berjalan, dan data plane siap.
kubectl get crds | grep openclawKalian harus melihat CRD seperti policies.openclaw.io dan gateways.openclaw.io. Kemudian pastikan controller control plane sehat:
kubectl get deploy -n openclaw-system
kubectl logs -n openclaw-system -l app=openclaw-control-plane --tail=50Log yang bersih menandakan controller berhasil menyambungkan diri ke API Kubernetes dan siap mengawasi perubahan policy.
Bagian paling memuaskan: menjalankan aplikasi yang dilindungi OpenClaw. OpenClaw biasanya menyediakan chart openclaw-sample berisi dua service sederhana, misalnya web dan api, lengkap dengan policy default:
helm install openclaw-sample openclaw/openclaw-sample{:bash} \
--namespace sampleSetelah aplikasi hidup, verifikasi service dan policy yang terbentuk:
kubectl get svc -n sample
kubectl get policies -n sampleSekarang uji komunikasi antar service. Jalankan Pod sementara yang bisa mengirim request ke api:
kubectl run -it --rm debug --image=curlimages/curl --namespace sample -- sh
curl http://api:8080/healthzJika policy default mengizinkan, kalian akan menerima response sukses. Jika response 403, berarti policy sedang menolak — justru itu bukti bahwa policy engine bekerja.
Beberapa masalah yang paling sering muncul saat setup:
kubectl describe pod <nama> -n openclaw-system dan lihat event di bagian bawah.kubectl describe policy <nama> dan bandingkan status dengan harapan.Warning
Selalu periksa urutan langkah saat troubleshooting: instalasi helm, registrasi CRD, health controller, lalu data plane. Masalah di langkah sebelumnya hampir selalu menyebabkan gejala di langkah sesudahnya.
Di episode 3 ini kalian sudah berhasil menyebarkan OpenClaw ke cluster dengan helm, menyesuaikan konfigurasi awal lewat values.yaml, memverifikasi CRD, controller, dan data plane, serta menjalankan sample application yang pertama kali dilindungi policy.
Inti yang harus dibawa pulang:
openclaw-system.helm upgrade dengan file values.yaml, bukan --set berulang.Di episode 4 selanjutnya kita akan menulis network policy dan traffic rules pertama kalian: mendefinisikan policy inbound dan outbound, melakukan routing layer 7 dan request filtering, serta memahami prioritas, scope, dan matching rules. Inilah episode di mana OpenClaw mulai benar-benar mengatur lalu lintas.