Menghadapi masalah Ceph yang paling sering muncul: PG stuck states, OSD down/crash loop, network latency dan timeouts, kapasitas penuh, serta langkah diagnosis sistematis beserta perintah ceph yang relevan.

Backup sudah tertata (episode 24). Sekarang, saat produksi, akan tiba saatnya sesuatu terasa salah: PVC mounting lambat, health warning, atau Pod CrashLoopBackOff. Episode 25 berisi troubleshooting: cara mendiagnosis masalah Ceph yang paling umum secara sistematis.
Mengapa penting? Alat observasi (episode 18) memberi alarm, tetapi menyelesaikan masalah membutuhkan diagnosis terarah. Episdoe ini memecah masalah umum menjadi langkah-langkah konkret yang bisa dijalankan dari toolbox. Diagnosa dini = resolusi cepat.
ceph status
ceph health detail
ceph osd treeJangan langsung mencoba solusi sebelum tahu jenis masalahnya.
HEALTH_WARN 1 pgs stuck uncleanceph pg dump | grep -E "stale|undersized|peering"stale → OSD turun lama; nyalakan lagi atau replacement.peering → MON tidak bisa setuju; cek log MON, network latency antar MON.incomplete → bisa butuh recovery manual.Jangan memaksa ceph pg force-create kecuali benar-benar tahu dampaknya (bisa kehilangan data).
ceph osd tree menunjukkan OSD down.kubectl -n rook-ceph logs rook-ceph-osd-0 | tail -100| Punca | Tanda | Langkah |
|---|---|---|
| Disk full | ENOSPC di log / osd df penuh | Tambah OSD / bersihkan snapshot |
| Disk faulty | I/O error / kernel buang | Replace disk (OSD baru) |
| Network issue | timeout koneksi MON | Cek latency & firewall |
| Memori | OOM (untuk OSD Pod) | Tambah limit/upgrade RAM |
Fix lanjutan: ganti disk → Rook otomatis membuat OSD baru saat device tersedia.
noout tidak bekerja (MON down).ping <mon-ip>
iperf3 -c <mon-ip> # bandwidth
ceph osd perf # latency per OSDJika semua terlihat lambat pada satu waktu: cek ceph -w untuk backfill besar yang sedang berjalan (mis. karena OSD baru ditambahkan atau tempahan).
full / nearfull, write ditolak (-28 ENOSPC).backfill_wait.mgr pg_autoscaler — tapi jangan harap ajaib.ceph osd set noout salah — justru tidak menolong; gunakan full handling (ansible) secara bijak.Alerting > 80% (episode 18) bukan 95%. Evaluasi kuota per-pool.
kubectl get pvc -n laravel
kubectl get events -n laravel | grep PersistentVolume
kubectl -n rook-ceph logs deploy/csi-rbdplugin -fCSI log memberi pesan akurat: secret missing, pool error, ukuran tidak valid.
Tip
Selalu tulis "cara memperbaiki" setelah memperbaiki. Troubleshooting yang tidak terdokumentasi ulang mewajibkan mengulang latihan next time. Jadikan log 1 lembar masalah → diagnosis → solusi sebagai bagian dari budaya operasi.
Inti yang harus dibawa pulang:
ceph status + health detail + osd tree dulu; baru solusi.force-create sembarangan.Di episode 26 selanjutnya kita akan membahas cost, capacity & kapan memilih Rook-Ceph — menghitung biaya raw vs usable, TCO per daya penyimpanan, serta kapan solusi ini cocok dan kapan tidak. Sampai jumpa di episode 26!