Mengaktifkan Redundant Ring Protocol (RRP) Corosync di Proxmox VE (Dual-Network Ring)

Proxmox VE menggunakan Corosync untuk komunikasi dan sinkronisasi data cluster. Menggunakan satu jaringan untuk komunikasi cluster meningkatkan kerentanan terhadap kondisi split-brain apabila jaringan tersebut gagal. Redundant Ring Protocol adalah salah satu solusi untuk menjaga kestabilan cluster dengan menggunakan dua jalur komunikasi.

Infrastruktur yang Digunakan

Pada pengujian kali ini menggunakan tiga buah node Proxmox VE yang sudah tergabung ke dalam cluster.

  • zaidan-1 : 192.168.9.171. Rencana jaringan ke-dua: 10.0.0.11
  • zaidan-2 : 192.168.1.172. Rencana jaringan ke-dua: 10.0.0.12
  • zaidan-3 : 192.168.1.173. Rencana jaringan ke-dua: 10.0.0.13
  • host induk: 192.168.1.22

zaidan-1 s.d 3 merupakan nested host. Artinya ketiga host ini berada di dalam Proxmox VE. Pada Datacenter dari host induk saya juga menambahkan bridge baru dengan nama zvmbr1. Sebenarnya tidak perlu membuat bridge baru juga bisa. Bisa langsung saja menambahkan network device yang di-attach ke vmbr0.

Menambahkan Network Device (induk)

Untuk node zaidan-1 s.d. zaidan-3, tambahkan network baru dengan cara *pilih VM> Hardware> Add> Network Device*.
image host

Pada pengujian kali ini, network device untuk zaidan-1 s.d. zaidan-3 di-attach ke zvmbr1. Pilih Add untuk melanjutkan.
image host

Menambahkan Network Device (nested)

Sekarang, masuk ke web interface dari cluster nested (zaidan-cluster). Pilih salah satu node> System> Network.
image host

Pada gambar di atas kita bisa lihat bahwa node zaidan-1 sudah memiliki interface baru yaitu ens19. Lalu piilh Create> Linux Bridge.
image host

Konfigurasi Alamat IP Jaringan Kedua

Saat menambahkan Linux Bridge, isi alamat IP-nya dengan yang ingin kita inginkan untuk jaringan ke-dua. Misalnya kita gunakan alamat IP 10.0.0.11/24 untuk pengujian kali ini. Pada bagian Bridge ports juga isi dengan interface yang sesuai (ens19). Untuk gateway-nya tidak diisi.
image host

zvmbr1 sudah ditambahkan. Jangan lupa pilih Apply Configuration untuk menerapkan konfigurasi.
image host

Lakukan hal yang sama pada semua node. Pastikan semua node pada cluster sudah memiliki bridge baru.
image host

Uji Konektivitas

Pastikan setiap node dapat saling ping menggunakan alamat IP 10.0.0.x
image host

image host

image host

Uji ping dengan menggunakan IP 10.0.0.x sudah berhasil.

Konfigurasi Corosync

Setelah jaringan kedua berfungsi, kita perlu mengedit file /etc/pve/corosync.conf untuk menjadikan jaringan baru ini sebagai ring1. Filenya bisa diakses dari node mana saja di cluster.

Kita lihat bagian nodelist. Tambahkan parameter ring1_addr: 10.0.0.x (disesuaikan tiap node).
imgbox

image host

Dalam Corosync, parameter ini berfungsi untuk mendefinisikan alamat IP spesifik yang digunakan oleh node untuk melakukan komunikasi heartbeat di jaringan cluster.

Selain ring1_addr, ada parameter lain yang perlu diedit. Yaitu totem> config_version . Parameter ini berfungsi sebagai penanda waktu/timestamp/”nomor revisi” dari konfigurasi cluster dan juga untuk validasi update/perubahan dari Corosync.

Setiap kali kita melakukan perubahan pada file /etc/pve/corosync.conf, kita harus menaikkan nilai dari config_version sebanyak 1. Misalnya pada pengujian kali ini kita akan ubah nilainya dari 3 menjadi 4.
image host

Simpan file (Ctrl+X , Y kalau di Nano). Perubahan akan diterapkan secara otomatis.

Verifikasi dan Uji Coba

Kita bisa verifikasi status Corosync dengan perintah berikut:

corosync-cfgtool -s
image host

Kita juga bisa cek Datacenter> Cluster dan lihat pada Cluster Nodes sudah memiliki Link 0 & Link 1.
image host

Selain itu, ada skenario pengujian lain yang akan kita lakukan. Kita akan coba matikan salah satu jaringan dari node dan kita akan lihat apa yang terjadi.

Karena environment yang digunakan adalah nested, jadi saya bisa matikan salah satu jaringan dari Proxmox VE induk dengan cara pilih network device> Disconnect.
image host

Selanjutnya, kita coba akses web interface menggunakan IP yang jaringannya sudah dinonaktifkan. Tidak dapat memuat halaman.
image host

Kita coba masuk web interface menggunakan IP lain (misalnya 192.168.9.172). Kita bisa lihat meskipun alamat 192.168.9.171 jaringannya dimatikan, namun untuk koneksi/komunikasi cluster masih terdeteksi hidup (ditandai dengan warna hijau).

Penutup

Dengan menggunakan multiple networks pada Corosync/cluster, kita dapat meningkatkan stabilitas cluster Proxmox VE. Apabila salah satu jalur komunikasi mengalami gangguan, jalur komunikasi lain akan mengambil alih tanpa mengganggu operasi cluster.

Untuk tulisan kali ini sampai di sini dulu ya. Sampai jumpa. Bye.

By Zaidan

Leave a Reply

Your email address will not be published. Required fields are marked *