Belajar OpenStack - Production Storage: Ceph Integration (RBD, RGW, CephFS)
Episode 16 of 21

Belajar OpenStack - Production Storage: Ceph Integration (RBD, RGW, CephFS)

Episode ini membahas integrasi Ceph sebagai storage produksi: konsep unified storage dengan RBD untuk block, RGW untuk object, dan CephFS untuk shared filesystem dalam satu cluster, integrasi dengan Glance, Cinder, dan Nova, serta sizing cluster minimal tiga node.

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

Pendahuluan

Di episode 8, kalian mengenal Cinder dengan backend LVM dan Ceph. Di episode 14, deployment produksi diorkestrasi Kolla-Ansible. Episode 16 menyatukan keduanya pada lapisan yang paling menentukan keandalan cluster: storage. Di produksi, jawaban OpenStack untuk storage bukan tiga cluster terpisah, melainkan satu — Ceph.

Episode 16 membahas mengapa Ceph menjadi pilihan dominan, bagaimana ia menyediakan block, object, dan filesystem dalam satu cluster (unified storage), bagaimana mengintegrasikannya dengan Glance, Cinder, dan Nova pada RBD, serta prinsip sizing dan deployment cluster minimal tiga node.

Mengapa Ceph adalah Backend Terbaik untuk Produksi

Unified Storage dalam Satu Cluster

Ceph menyediakan tiga layanan penyimpanan dari satu cluster yang sama:

  • RBD (RADOS Block Device): block storage untuk Cinder, Glance, dan Nova.
  • RGW (RADOS Gateway): object storage dengan API S3, pengganti Swift.
  • CephFS: shared filesystem untuk Manila.
Ceph sebagai unified storage
Ceph Cluster (satu pool RADOS)
   ├── RBD   → Cinder, Glance, Nova (block)
   ├── RGW   → Object storage API S3 (object)
   └── CephFS → Manila shared filesystem (file)

Satu infrastruktur untuk tiga kebutuhan berarti satu kapasitas untuk dikelola, satu mekanisme replikasi, dan satu tim yang memahaminya.

Keandalan dan Self-Healing

Ceph didesain terdistribusi dan self-healing: setiap data direplikasi ke beberapa OSD, data terdistribusi merata (CRUSH algorithm), dan ketika satu OSD gagal, cluster otomatis merekonstruksi replika di tempat lain tanpa downtime. Inilah yang membuat Ceph dan OpenStack menjadi pasangan standar produksi.

Integrasi Ceph dengan OpenStack

Glance Image Store pada Ceph RBD

Menempatkan image Glance di Ceph membuat image tersedia di semua node secara langsung — Nova tidak perlu mengunduh image ke disk lokal setiap kali:

Konfigurasi Glance di globals.yml
glance_backend_ceph: "yes"
glance_ceph_pool: "images"

glance_ceph_pool: "images" menunjuk pool Ceph yang menyimpan image. Dengan ini, clone image ke disk instance dilakukan Ceph secara instan — tidak ada transfer file besar antar node.

Cinder Volume Backend pada Ceph RBD

Backend Cinder utama di produksi adalah RBD:

Verifikasi backend cinder
openstack volume service list -f table
openstack volume type list -f value -c Name

Output openstack volume service list menampilkan state backend. Cinder menciptakan volume sebagai image RBD di pool Ceph, dan menempelkannya ke instance tanpa iSCSI — instance langsung memetakan RBD lewat librbd.

Nova Ephemeral Disk pada Ceph RBD

Instance yang memakai Ceph tidak lagi butuh disk lokal besar — disk ephemeral instance berada di RBD. Migrasi instance antar host menjadi mudah karena disk bisa dibuka di mana saja:

Konfigurasi Nova di globals.yml
nova_ceph_pool: "vms"
nova_images_type: "rbd"
cinder_backend_ceph: "yes"
cinder_ceph_pool: "volumes"

nova_images_type: "rbd" membuat disk ephemeral instance hidup di pool vms. Live migration dan resize antar host berjalan mulus karena tidak ada transfer disk fisik.

Ceph Cluster Sizing & Deployment

Komponen Cluster

Cluster Ceph produksi minimal terdiri dari:

KomponenPeranJumlah Minimal
MonitorMenjaga peta cluster dan kesehatan3
ManagerDashboard dan telemetry2-3
OSDMenyimpan data sebenarnya3+

Perintah verifikasi status cluster dari node Ceph:

Cek status cluster Ceph
ceph -s
ceph osd tree

Output ceph -s menampilkan ringkasan kesehatan cluster — kolom HEALTH_OK adalah target. Perintah ceph osd tree menunjukkan setiap OSD dan state-nya.

Prinsip Sizing

Aturan praktis sizing Ceph:

  • Replikasi: minimal 3 replika, atau 2 replika plus kode erasure untuk efisiensi ruang.
  • Kapasitas: total kapasitas usabel sekitar sepertiga dari kapasitas mentah pada replikasi 3x.
  • Network: pisahkan cluster network (replikasi antar OSD) dari public network (traffic client) — pola dual-NIC yang sama dengan episode 15.

Warning

Jangan pernah mengoperasikan Ceph produksi tanpa monitor berjumlah ganjil. Dua monitor atau kurang membuat cluster kehilangan quorum saat satu node gagal, dan seluruh storage ikut terganggu.

Deployment via Kolla-Ansible

Ceph bisa di-deploy sebagai bagian dari stack Kolla-Ansible sendiri:

Deploy Ceph bersama Kolla-Ansible
enable_ceph: "yes" > /etc/kolla/globals.yml
kolla-ansible -i multinode deploy

Dengan enable_ceph: "yes", Kolla-Ansible men-deploy monitor, manager, dan OSD sebagai container, lalu mengonfigurasi Glance, Cinder, dan Nova untuk memakai pool RBD — mengintegrasikan seluruh lapisan storage dalam satu proses deployment.

Penutup

Episode 16 menyatukan storage produksi dalam satu arsitektur: Ceph sebagai unified storage yang menyediakan RBD untuk block, RGW untuk object, dan CephFS untuk shared filesystem dalam satu cluster, terintegrasi dengan Glance, Cinder, dan Nova pada pool RBD, serta cluster minimal tiga node OSD, monitor, dan manager.

Inti yang harus dibawa pulang:

  • Ceph menyediakan block, object, dan filesystem dalam satu cluster.
  • Glance, Cinder, dan Nova memakai RBD untuk image, volume, dan disk.
  • RBD menghilangkan transfer disk besar dan memudahkan migrasi.
  • Cluster minimal: 3 monitor, 2-3 manager, 3+ OSD.
  • ceph -s harus menampilkan HEALTH_OK.
  • Pisahkan cluster network dari public network untuk performa replikasi.

Di episode 17 selanjutnya kita akan membahas Security Hardening, TLS & RBAC Policies — mengamankan API endpoints dengan TLS dan HAProxy SSL termination, memisahkan internal dan public API, mengkustomisasi policy.yaml untuk RBAC granular, serta melindungi metadata service dan mencegah spoofing dengan port security.