Episode ini membahas perlindungan data dan disaster recovery Ceph: strategi backup dan restore, alur snapshot dan clone, perencanaan disaster recovery untuk CephFS, RBD, dan RGW, serta pengujian failover dan drill recovery.

Selamat datang di episode 14 series Belajar Ceph! Replikasi menjaga cluster tetap hidup saat satu node gagal, tapi replikasi tidak melindungi dari kesalahan manusia, penghapusan tidak sengaja, atau bencana yang menghancurkan seluruh site. Episode ini membahas data protection & disaster recovery — lapisan terakhir yang memastikan data bisa dipulihkan dalam situasi terburuk.
Perbedaan kuncinya: replikasi mencegah downtime, sedangkan backup mencegah kehilangan data. Strategi yang baik menggabungkan keduanya — replikasi untuk ketersediaan, snapshot dan backup untuk pemulihan, serta rencana disaster recovery yang sudah diuji untuk seluruh interface Ceph.
Di akhir episode ini kalian akan bisa menyusun strategi backup yang realistis, memakai snapshot dan clone dengan benar, merencanakan disaster recovery untuk CephFS, RBD, dan RGW, serta menguji failover melalui drill recovery. Mari kita mulai.
Backup yang baik ditentukan oleh tiga angka: RPO (Recovery Point Objective), berapa banyak data yang boleh hilang; RTO (Recovery Time Objective), seberapa cepat harus pulih; dan retention, berapa lama backup disimpan. Mulailah dengan menetapkan tiga angka ini, karena semuanya menentukan pilihan tooling.
ceph status
radosgw-admin bucket listSebelum menyusun backup, ketahui aset yang dilindungi: bucket RGW, image RBD, filesystem CephFS, serta konfigurasi cluster itu sendiri. Katalog ini menjadi dasar daftar backup yang harus dijalankan secara rutin.
Ada beberapa pendekatan umum untuk backup Ceph:
rbd export untuk image RBD.rsync ke storage eksternal.rbd export rbd-pool/vol-data /backup/vol-data-20260810.imgrbd export mengonversi image RBD menjadi file yang bisa dipindahkan ke storage lain. Restore dilakukan dengan rbd import.
Snapshot adalah fondasi backup point-in-time yang murah. Untuk RBD, snapshot dibuat per image; untuk CephFS, snapshot dibuat per direktori lewat mekanisme .snap; untuk RGW, gunakan versioning bucket untuk menyimpan versi object.
rbd snap create rbd-pool/vol-data@backup-harian
mkdir /mnt/myfs/.snap/backup-harianrbd snap create membuat snapshot RBD, dan mkdir .snap/backup-harian membuat snapshot CephFS. Keduanya hampir gratis secara kapasitas karena hanya menyimpan perubahan sejak snapshot sebelumnya.
Clone dari snapshot memungkinkan restore tanpa mengganggu data asli — sangat berguna untuk testing sebelum benar-benar mengembalikan data:
rbd snap protect rbd-pool/vol-data@backup-harian
rbd clone rbd-pool/vol-data@backup-harian rbd-pool/vol-verifikasi
rbd map rbd-pool/vol-verifikasirbd clone membuat image baru yang berbagi data dengan snapshot. Mount dan verifikasi isinya, lalu buang setelah dipastikan baik. Ini adalah drill paling sederhana yang membuktikan backup kalian bisa dipakai.
Untuk restore langsung, rollback image ke kondisi snapshot:
rbd snap rollback rbd-pool/vol-data@backup-harianrbd snap rollback mengembalikan image ke kondisi snapshot. Ingat bahwa rollback menimpa state saat ini, jadi lakukan hanya setelah memastikan bahwa memang itu yang diinginkan, atau bekerja dari clone terlebih dahulu.
Setiap interface memiliki jalur recovery yang berbeda:
rbd import /backup/vol-data-20260810.img rbd-pool/vol-datarbd import memulihkan image dari file hasil rbd export. Simpan file backup di lokasi yang terpisah secara fisik dari cluster utama agar tidak ikut hilang saat bencana.
Saat bencana terjadi, pulihkan secara berurutan: pertama konfigurasi cluster dan MON, lalu data dan metadata, lalu layanan client. Jangan buru-buru memulihkan layanan sebelum fondasi data diyakinkan sehat — restore yang terburu-buru sering menghasilkan data korup yang baru disadari belakangan.
Rencana DR yang tidak pernah diuji hanyalah dokumen. Jadwalkan drill secara berkala — misalnya setiap kuartal — dengan skenario yang realistis: restore satu image RBD, satu filesystem CephFS, dan satu bucket RGW ke environment uji, lalu verifikasi integritas datanya.
rbd info rbd-pool/vol-data
radosgw-admin bucket stats --bucket=bucket-pertamarbd info dan radosgw-admin bucket stats memverifikasi bahwa hasil restore memiliki ukuran dan jumlah object yang sesuai. Catat hasil setiap drill dan perbaiki prosedur yang gagal.
Jika kalian memakai multisite dari episode 13, uji failover dengan benar-benar memindahkan endpoint ke site sekunder selama beberapa jam. Amati apakah write berjalan, apakah data sinkron setelah failback, dan berapa lag yang terjadi. Hasil uji ini memberi angka RTO yang realistis.
Di episode ini kalian sudah memahami cara melindungi data Ceph dalam berbagai skenario: menyusun strategi backup dengan RPO dan RTO yang jelas, memakai snapshot dan clone untuk point-in-time recovery, merencanakan disaster recovery untuk CephFS, RBD, dan RGW, serta menguji failover melalui drill recovery yang rutin.
Inti yang harus dibawa pulang:
Di episode 15 selanjutnya kita akan membahas advanced pool & CRUSH strategies — device classes dan CRUSH map rules untuk cluster heterogen, tiering dan cache pools untuk arsitektur hybrid HDD/SSD, isolasi performa untuk workload berbeda, serta migrasi pool dan rebalancing. Saatnya naik ke level tuning paling presisi!