Episode ini menguji daya tahan cloud: bagaimana LXD cluster menjadwalkan ulang instance saat node down, bagaimana replikasi Ceph menjaga data tetap aman, dan latihan langsung men-simulasikan node mati untuk memverifikasi recovery otomatis. Inilah ujian HA sejati.

Di episode 8 kita deploy instance dan VM. Tapi cloud yang andal bukan sekadar mampu menjalankan workload — ia harus bertahan ketika ada node yang mati. Di episode 9 kita menguji high availability: bagaimana LXD cluster menjadwalkan ulang instance, bagaimana Ceph menjaga data, dan bagaimana kalian memverifikasi recovery otomatis lewat simulasi node down.
Analogi yang pas: HA adalah regenerasi koloni semut. Jika satu semut (node) mati, koloni (cluster) tidak panik — pekerja (instance) yang kehilangan sarangnya dipindahkan, cadangan makanan (replikasi Ceph) tetap tersimpan di sarang lain, dan ratu (quorum) memastikan keputusan tetap valid. Yang kalian pelajari hari ini adalah cara kerja "naluri" koloni ini secara teknis.
HA MicroCloud bekerja di dua lapisan yang saling melengkapi:
node-a down ──► LXD: mark offline, reschedule instance
Ceph: salinan data tetap ada di node-b/c
OVN: IP instance tetap valid via overlayTanpa salah satu lapisan, HA tidak lengkap: LXD bisa memindahkan instance tapi tidak ada data di tujuan (storage local), atau Ceph aman tapi instance tidak otomatis dijadwalkan ulang.
LXD cluster memakai quorum untuk mengambil keputusan. Dengan 3 node:
Angka ganjil (3, 5) dipilih agar toleransi kegagalan maksimal: 3 node toleran 1 kegagalan, 5 node toleran 2 kegagalan. Inilah mengapa "cloud di dalam 3 node" adalah angka ajaib MicroCloud.
Sebelum men-simulasikan kegagalan, pastikan instance memakai storage Ceph (pool remote) dan network OVN:
lxc list
lxc config show c1 | grep -E "pool|network"Semua instance yang ingin kita uji harus berbasis Ceph. Instance di storage local akan ikut mati bersama node-nya — ini perilaku yang disengaja.
Simulasikan kegagalan dengan mematikan salah satu node tempat instance berjalan. Dari node lain atau host fisik:
sudo poweroffAtau untuk simulasi yang lebih halus, hanya hentikan daemon LXD-nya:
sudo snap stop lxdDari node-a, amati bagaimana cluster merespons:
lxc cluster list+--------+---------+----------------------+--------+-----------+---------+
| NAME | STATUS | ADDRESS | ROLES | MESSAGE | ...
+--------+---------+----------------------+--------+-----------+---------+
| node-a | ONLINE | 192.168.1.10:8443 | leader | |
| node-b | OFFLINE | 192.168.1.11:8443 | | Unavailable |
| node-c | ONLINE | 192.168.1.12:8443 | | |
+--------+---------+----------------------+--------+-----------+---------+LXD menandai node-b sebagai OFFLINE dan mulai menjadwalkan ulang instance yang bisa dipindahkan:
lxc listInstance yang tadinya LOCATION: node-b akan muncul dengan status STOPPED lalu dijadwalkan ke node-c atau node-a (untuk container system; VM dengan config tertentu bisa di-migrate stateful). Data tetap utuh karena tersimpan di Ceph.
Important
Perhatikan perbedaan: container system di cluster LXD dengan storage Ceph akan di-reboot di node lain secara otomatis (biasanya cepat). VM live migration butuh konfigurasi stateful dan bukan default untuk semua kasus. Jangan berharap seluruh instance pindah tanpa henti — rencanakan downtime singkat untuk restart, kecuali kalian setel migrasi stateful.
Saat node-b hidup kembali, LXD cluster mendeteksinya dan menandainya ONLINE lagi:
lxc cluster listCeph juga menyembuhkan dirinya sendiri — OSD node-b yang kembali akan ikut mereplikasi ulang data yang hilang (recovery). Selama proses ini, ceph -s menampilkan recovery dan HEALTH_WARN sementara.
ceph -slxc list
lxc exec c1 -- df -h /Seluruh instance harus tetap hidup dengan data utuh — bukti bahwa replikasi Ceph bekerja.
Rangkaian latihan yang sebaiknya kalian lakukan di lab:
lxc move --target saat node masih hidup → amati zero-downtime.Latihan nomor 4 paling penting dipahami: kehilangan quorum menghentikan keputusan, bukan menghancurkan data. Setelah node kembali, cluster memulihkan diri.
lxc info --resources per node.Inti yang harus dibawa pulang:
Di episode 10 selanjutnya kita akan membahas snapshot, backup & restore — lxc snapshot c1 snap1, snapshot storage pool, snapshot RBD di Ceph, lxc export/import, serta integrasi backup seperti restic dan Proxmox Backup Server di dalam VM. Data kalian akan punya jaring pengaman!