Backup yang gagal adalah kenyataan operasional, bukan pengecualian. Episode ini mengajarkan diagnosis sistematis: velero backup describe --details, velero backup logs, dan velero bug untuk mengumpulkan informasi, plus kasus umum — BSL invalid, snapshot gagal karena VSL salah, node-agent crash, dan backup kopia pending.

Sejauh ini semua berjalan mulus. Waktunya jujur: di produksi, backup akan gagal — credential rotasi, node penuh, plugin versi baru, network policy yang salah. Episode 16 melatih insting kalian untuk tidak panik dan menyelesaikan masalah secara sistematis, bukan asal coba-coba.
Pikirkan seperti mekanik: tidak ada yang mendiagnosis mobil dengan membongkar semua bagian sekaligus. Ada urutannya — cek gejala, baca data, isolasi penyebab, baru perbaiki. Velero memberi kalian instrumen yang tepat: describe, logs, dan bug. Kita pelajari cara memakainya.
Perintah pertama dalam setiap insiden:
velero backup describe my-backup --detailsYang kalian cari di sini: fase (Completed, Failed, PartiallyFailed), jumlah resource sukses/gagal, dan daftar volume yang dibackup. PartiallyFailed biasanya berarti sebagian volume gagal — baca lebih lanjut dengan logs.
Log memberikan pesan error yang sebenarnya:
velero backup logs my-backup | grep -i error | head -20Atau untuk restore:
velero restore logs my-restore | grep -i error | head -20Untuk masalah yang berulang atau mencurigakan sebagai bug, kumpulkan informasi untuk melaporkannya ke GitHub:
velero bugPerintah ini menampilkan versi client, status cluster, dan membuka template issue — memastikan laporan kalian berisi data yang bisa ditindaklanjuti maintainer.
Gejala: velero backup-location get menampilkan status Unavailable; backup gagal dengan error koneksi ke bucket.
Diagnosis:
velero backup-location get
kubectl logs -n velero deploy/velero | grep -i "backupstorage"Penyebab dan solusi:
region, s3Url, dan NetworkPolicy (episode 14).caCertRef di BSL.Gejala: backup berstatus Completed tapi tidak ada satu pun volume yang berisi data — manifest ada, data hilang. Di describe --details, bagian volume kosong atau bertanda "skipped".
Diagnosis:
velero snapshot-location get
kubectl logs -n velero deploy/velero | grep -i snapshotPenyebab dan solusi:
velero snapshot-location create ...).velero plugin add velero/velero-plugin-for-aws:v1.14.0.--default-volumes-to-fs-backup → PVC hanya dibackup sebagai manifest. Ini kasus paling umum di instalasi tanpa snapshot cloud: data volume diam-diam tidak tersimpan.Warning
Backup "Completed" dengan volume kosong adalah kegagalan paling berbahaya — tidak terlihat sampai restore dilakukan. Kebiasaan non-negotiable: setiap backup rutin diverifikasi satu kali restore ke staging. Satu verifikasi seminggu mencegah kejutan saat bencana.
Gejala: DaemonSet node-agent menggulir ulang (CrashLoopBackOff) di sebagian node; backup file-level gagal di node tersebut.
Diagnosis:
kubectl get pods -n velero -l name=node-agent
kubectl logs -n velero -l name=node-agent --tail=50Penyebab dan solusi:
--kubelet-root-dir saat install.ReadOnlyRootFileSystem: true memblokir cache kopia → beri volume tulis pada direktori cache (disebutkan di dokumentasi 1.18).Gejala: backup file-level berstatus InProgress sangat lama, atau PodVolumeBackup menggantung.
Diagnosis:
kubectl get podvolumebackups -n velero
kubectl describe podvolumebackups <name> -n velero
kubectl logs -n velero <node-agent-pod> | grep -i kopiaPenyebab dan solusi:
--parallel-files-upload di config (episode 20).kopia-repo-*; jangan hapus.parallel-files-upload dengan CPU limit yang tersedia.velero backup get, backup-location get, snapshot-location get.velero backup describe <name> --details.velero backup logs <name> | grep -i error.kubectl logs deploy/velero), node-agent.Tip
Simpan halaman troubleshooting ini sebagai checklist di runbook kalian (episode 12). Saat incident terjadi di jam 3 pagi, otak yang lelah lebih mudah mengikuti daftar daripada berpikir dari nol.
Inti yang harus dibawa pulang:
velero backup describe --details → velero backup logs → velero bug adalah alur diagnosis.Unavailable: credential, region, endpoint, TLS — periksa dalam urutan itu.Di episode 17 selanjutnya kita membedah versi yang sedang kalian pakai: Velero 1.18 & Fitur Terbaru — kompatibilitas Kubernetes, kopia sebagai uploader default, perbaikan storage-class-mappings, serta riwayat rilis 1.14 hingga 1.18.