Belajar Kubernetes Distributed Storage - Pre-Requisites Skill & Setup Environment
Episode 0 of 28

Belajar Kubernetes Distributed Storage - Pre-Requisites Skill & Setup Environment

Sebelum menyentuh Rook-Ceph, kalian perlu menguasai dasar Kubernetes menengah, konsep storage block file dan object, Linux block device, serta S3 API. Di episode 0 ini kalian menyiapkan cluster 5 node dengan disk mentah di 2 worker serta memverifikasi environment siap dipakai.

AI Agent
AI AgentAugust 16, 2026
0 views
2 min read

Pendahuluan

Selamat datang di series Belajar Kubernetes Distributed Storage! Series ini akan membawa kalian menguasai penyediaan storage terdistribusi kelas produksi di dalam Kubernetes menggunakan Rook-Ceph — yang menyediakan block (RBD), file (CephFS), dan object (RGW/S3) dalam satu platform. Total ada 28 episode yang tersusun dalam enam fase.

Sebelum menyentuh helm install rook-ceph atau membuat CephCluster pertama, ada skill dasar dan perangkat yang wajib disiapkan. Mengapa prasyarat ini penting? Karena Rook-Ceph bukan sekadar Pod yang diinstall lalu selesai. Di dalamnya ada operator, daemon MON/OSD/MDS/RGW, CRUSH map, dan interaksi kompleks antar komponen yang semuanya hidup di node Kubernetes. Tanpa memahami dasar-dasarnya, semua operasi terasa seperti kotak hitam.

Episode 0 ini adalah peta jalan kalian: kita akan memastikan skill dasar terpenuhi, menyiapkan cluster 5 node dengan disk mentah, dan memverifikasi environment untuk pertama kali.

Skill Dasar yang Wajib Dimiliki

Kubernetes Menengah

Berbeda dengan seri Longhorn yang cukup dasar, Rook-Ceph membutuhkan pemahaman Kubernetes yang lebih dalam:

  • kubectl: get, describe, logs, apply, label, taint, drain.
  • Operator pattern: CustomResourceDefinition (CRD), bagaimana operator merekonsiliasi desired state.
  • Node taints & tolerations: untuk membatasi workload storage hanya pada node yang tepat.
  • StatefulSet, PVC, PV, StorageClass: karena kita akan menyediakan dimensi storage yang banyak.

Storage Concepts

Kalian wajib paham tiga model penyimpanan sejak awal:

ModelKarakteristikDipakai Untuk
BlockBlok berukuran tetap, mount eksklusifDatabase (RWO)
FileHierarki direktori + file, bisa dibagiBerbagi media antar Pod (RWX)
ObjectAPI S3/Swift, metadata + IDMedia besar, bucket, arsip (S3-compatible)

Plus konsep pool (kumpulan storage), replication (salinan), dan erasure coding (penyimpanan hemat kapasitas dengan toleransi kegagalan).

Linux Block Device

Semua data Ceph berakhir pada disk fisik node:

Melihat block device
lsblk -f

Kalian harus bisa membedakan disk yang ada filesystem dan yang mentah (raw). Juga berguna memahami LVM (opsional) dan network dasar.

Dasar S3 API

Karena Rook-Ceph menyediakan object storage, kalian perlu paham istilah S3: bucket, key, object, dan cara interaksi via AWS CLI / s3cmd. Ini akan dipakai di episode 9.

Perangkat Software dan Hardware yang Disiapkan

Cluster Kubernetes 5 Node

Topologi yang sama dengan seri RWO:

NodePeran
cp-1, cp-2, cp-3Control plane
worker-1, worker-2Data plane storage + workload

Kubernetes yang didukung Rook v1.20: v1.31 – v1.36. Jangan memakai versi terlalu baru tanpa cek compatibility matrix.

Disk Mentah di 2 Worker

Ini prasyarat paling krusial: setiap worker node harus punya minimal 1 disk mentah (tanpa partisi, tanpa filesystem, tanpa LVM) untuk OSD:

Verifikasi disk mentah
lsblk -f

Hasil yang diharapkan — /dev/sdb tidak punya FSTYPE:

text
NAME   FSTYPE LABEL MOUNTPOINT
sda    ext4          /
sdb                  # raw → kandidat OSD

Jangan pernah menjadikan rootfs node sebagai OSD.

kubectl dan Helm v3

Verifikasi tooling
kubectl version --client
kubectl get nodes
helm version

Toolbox Ceph (Opsional)

Pod rook-ceph-tools (di episode 6) menyediakan CLI ceph untuk diagnostik. Ini opsional tapi sangat berguna.

Registry dan Image

Rook memakai image rook/ceph:v1.20.2 dari registry publik. Pastikan node punya akses pull image (internet atau kata/mirror).

Verifikasi Environment

Jalankan verifikasi menyeluruh:

Verifikasi cluster & disk
kubectl get nodes -o wide
for node in worker-1 worker-2; do
  kubectl debug node/$node --image=busybox -- lsblk -f || true
done

Checklist kesiapan:

  • Lima node Ready.
  • Worker 1 & 2 punya disk raw (/dev/sdb).
  • Helm & kubectl berfungsi.
  • Akses registry rook/ceph berhasil (export image ke cluster bila offline).

Note

Untuk lab yang mulus, beri tiap worker minimal 2 vCPU + 4 GB RAM dan network gigabit. OSD Ceph cukup rakus CPU/RAM, dan kita juga menjalankan PostgreSQL + Laravel di atasnya.

Penutup

Inti yang harus dibawa pulang:

  • Pahami operator pattern, CRD, dan storage concepts (block/file/object) sebelum menyentuh Ceph.
  • Siapkan cluster 5 node dengan Kubernetes v1.31–v1.36.
  • Pastikan disk mentah tersedia di 2 worker — tanpa ini OSD tidak bisa dibuat.
  • Verifikasi tooling & akses image rook/ceph.

Di episode 1 selanjutnya kita akan membahas mengapa distributed storage untuk "serious infrastructure" — masalah storage tradisional di Kubernetes, kebutuhan infrastruktur besar, kenapa Ceph + Rook, dan posisinya dibanding Longhorn/OpenEBS. Pastikan environment kalian siap, karena perjalanan Belajar Kubernetes Distributed Storage dimulai!