Hai semuanya, apa kabar? Kali ini saya mau nulis yang masih berkaitan dengan Proxmox lagi. Yaitu Split Brain, Quorum dan dampaknya terhadap HA di Proxmox VE.
Split Brain

Adalah kondisi di mana cluster terbagi jadi dua atau lebih dan masing-masing bagian tersebut merasa dirinya adalah cluster yang valid/sah. Hal ini dapat terjadi karena gangguan komunikasi atau jaringan.
Split brain adalah kadang bukan tentang kondisi node yang hidup atau mati, namun utamanya tentang node yang tidak bisa saling berkomunikasi.
Apabila komunikasi antar node terputus, tiap sisi hanya bisa melihat kondisi dunianya sendiri. Tanpa mekanisme pengaman, tiap sisi merasa berhak untuk menjalankan VM, mengakses storage, dan juga mengontrol resource. Jelas hal ini dapat berbahaya, misalnya pada konsistensi atau integritas data.
Quorum dan Voting
Untuk mencegah kondisi split brain, sistem clustering seperti pada Proxmox VE menggunakan konsep quorum. Yaitu jumlah minimal vote yang harus dimiliki agar node/group node dianggap sah dan dapat menjalankan service.

Sederhananya, yang boleh aktif adalah sisi yang memiliki mayoritas vote. Artinya, bukan sisi mana yang paling hebat atau paling lama hidup, namun sisi mana yang memiliki suara terbanyak.
Contoh – Cluster Genap (2 Node)
Kondisi awal, kita punya 2 node yaitu pve1 & pve2. Total vote keduanya adalah 2. Bagaimana dengan nilai mayoritas quorum-nya? Ini yang menjadi kendala.
Apabila terdapat gangguan jaringan, pve1 dan pve2 tidak bisa saling berkomunikasi. pve1 dan pve2 masing-masing bisa saja merasa masih hidup. Karena kondisi ini, tidak ada yang jadi “mayoriitas” (nilai vote 1 vs 1).
Akibat dari kondisi seperti ini, kedua sisi sama-sama dapat menjalankan VM dan mengakses storage yang sama. Inilah kondisi split brain yang berbahaya. Kondisi cluster dengan 2 node (atau kondisi berjumlah genap) rentan terhadap kondisi split brain apabila tidak ada vote tambahan.
Contoh – Cluster Ganjil (3 Node)
Kondisinya kita punya 3 node yaitu pve1, pve2, dan pve3. Total votes-nya menjadi 3 dan kondisi quorum dapat terjadi dengan 2 votes.
Misalnya terjadi gangguan pada jaringan pve1. Kondisi cluster menjadi terbelah antara pve1 (1 vote) dan pve2+pve3 (2 vote).
Yang terjadi adalah karena pve2+pve3 memiliki mayoritas vote, cluster tetap aktif dan VM dapat berjalan dengan normal. Namun pada pve1 karena kehilangan quorum, maka pve1 tidak diizinkan untuk menjalankan VM dan akhirnya “mengalah”.
Secara teknis, cluster memang “terbelah”. Namun kondisi split brain dicegah secara operasional oleh mekanisme quorum.

Jumlah Vote vs Jumlah Node
Sebenarnya, HA tidak bergantung pada jumlah node melainkan bergantung pada jumlah vote & quorum. Apabila kita menggunakan 2 node, kita bisa menambahkan satu vote lagi dengan qdevice
Dengan tambahan vote tersebut, cluster dengan 2 node jadi mendapatkan total vote (total) sejumlah 3
Penutup
Split brain merupakan risiko nyata di lingkungan cluster apabila konfigurasi atau rancangan sistem tidak dipikirkan dengan optimal.
Kondisi split brain dapat terjadi karena adanya gangguan komunikasi antar node. Cluster dengan anggota berjumlah genap lebih rentan dibandingkan yang berjumlah ganjil.
Maka dari itu, saat implementasi sistem, perlu perencanaan yang matang. Bukan hanya pada berapa banyak node yang dimiliki, tetapi bagaimana mekanisme pengambilan keputusan bekerja ketika terjadi masalah.
Untuk tulisan kali ini sampai di sini dulu ya. Sampai jumpa. Bye.
Written with StackEdit.