Belajar Velero (tool open source untuk backup, restore, dan migrasi resource Kubernetes beserta persistent volumes) dari dasar hingga production-grade: pre-requisites skill & setup environment, sejarah latar belakang & mengapa membutuhkannya, konsep dasar & arsitektur utama, instalasi & konfigurasi BSL, backup pertama, restore & selective restore, scheduling & retention, label selector & annotations, volume backup cloud snapshot vs restic/kopia, backup hook pre/post, restore workflow & namespace mapping, migrasi antar cluster, disaster recovery plan, keamanan credential & RBAC, backup encryption & object storage security, backup policies & compliance, troubleshooting & debugging, Velero 1.18 & fitur terbaru, plugin ecosystem, CSI snapshot & cross-provider, performance & data management, roadmap & community, hingga ekosistem alternatif & refleksi akhir dengan total 23 episode.
Sebelum menyentuh perintah `velero backup create`, kalian perlu menguasai kubectl dan akses cluster, memahami resource Kubernetes seperti Deployment dan PVC, serta konsep object storage S3-compatible. Di episode ini kalian menyiapkan cluster, menginstall velero CLI 1.18, menyediakan backend MinIO/S3, dan memverifikasi environment siap.

Episode ini mengulas asal-usul Velero dari Heptio hingga statusnya sebagai proyek CNCF, beserta filosofi desainnya. Kalian juga memahami mengapa Velero dibutuhkan: backup resource API + volume, restore selektif, migrasi antar cluster, scheduling, dan disaster recovery tanpa vendor lock-in.

Episode ini membedah arsitektur Velero: velero server sebagai deployment di cluster, velero CLI sebagai client, serta peran CRD BackupStorageLocation (BSL) dan VolumeSnapshotLocation (VSL). Kalian juga mengenal seluruh komponen inti mulai dari namespace velero, CRD Backup/Restore/Schedule, hingga plugin object store dan node-agent.

Episode ini memandu instalasi Velero 1.18 ke cluster, baik lewat `velero install` maupun Helm chart vmware-tanzu/velero. Kalian juga mengonfigurasi BackupStorageLocation (object store) dan VolumeSnapshotLocation (cloud snapshot), termasuk opsi MinIO dengan s3ForcePathStyle dan insecure skip TLS.

Episode ini memandu backup pertama dengan `velero backup create`, membaca detail backup lewat `velero backup describe`, dan memahami isi sebuah backup: manifest resource plus data volume. Kalian juga belajar mengontrol scope backup dengan `--include-resources` dan `--exclude-resources`.

Backup tanpa restore hanyalah penyimpanan data. Episode ini mengajarkan restore penuh dari backup, restore ke namespace berbeda lewat `--namespace-mappings`, serta restore selektif dengan `--include-resources`, `--include-namespaces`, dan `--selector`.

Backup manual tidak cukup untuk produksi. Episode ini membahas `velero schedule create` dengan cron expression, pengaturan `--ttl` untuk auto-expire, perbedaan mendasar schedule vs backup manual, serta strategi retention yang sesuai kebutuhan RPO.

Episode ini membahas kontrol granular backup: memilih resource lewat label selector, menandai resource yang wajib/selalu dikecualikan dengan annotation velero.io, mengatur `--snapshot-volumes`, serta memperkenalkan hooks pre dan post untuk backup.

Episode ini membandingkan dua mekanisme backup volume di Velero: cloud snapshot (block-level via EBS/GCP PD, cepat, butuh VSL) dan file-level backup via node-agent dengan restic/kopia (portable, bisa ke S3 tanpa cloud snapshot, cocok untuk volume non-cloud dan NFS).

Backup volume yang tidak konsisten adalah bom waktu. Episode ini membahas backup hooks pre/post di Velero: cara menjalankan perintah sebelum dan sesudah backup (misal pg_dump, flush DB), konfigurasi lewat annotation, timeout dan on-error, serta studi kasus PostgreSQL dan aplikasi stateful agar data pulih utuh.
