MySQL Load Balancing & Failover Menggunakan HAProxy
Requirements :
- Membutuhkan minimal 3 PC, 2 PC sebagai Database Server (node) dan 1 PC sebagai Server Manajemen (load balancer dan Manajemen node).
- Sistem Operasi untuk 2 PC sebagai Database Server (node) adalah Ubuntu Server 14.04.
- Sistem Operasi untuk 1 PC sebagai Server Manajemen adalah Elementary OS Luna.
- 2 PC sebagai Database Server (node) diharuskan sudah selesai dalam instalasi mysql-server jadi saya tidak akan lagi membahas tentang ini.
Instalasi Package :
- Instalasi HAProxy pada server manajemen dilakukan secara online, dalam melakukan instalasi disarankan untuk melakukan update terlebih dahulu dengan cara apt-get update. Kemudian barulah instal package HAProxy.
Konfigurasi :
- Node1 & Node2
Daftarkan user HAProxy ke node1 dan node2 yang bertugas untuk mengecek status dari kedua server tersebut.
Daftarkan user HAProxy yang memiliki hak akses selevel root.
- Server Manajemen
Install mysql-client.
Aktifkan HAProxy pada skrip init.
Konfigurasi pada file /etc/haproxy/haproxy.cnf, pada konfigurasi load balancing menggunakan algoritma round robin dengan weight default 1, jadi kedua server database diberikan tugas yang sama bobotnya. Untuk mengurangi interval failover dapat diset fastinter 1000 agar pengecekan status dapat dilakukan lebih cepat yaitu 1000 ms.
Kemudian daftarkan listen-stats agar bisa dimonitor melalui halaman web. Tulis konfigurasi untuk load balancing yang tertera sebagai berikut :
Jalankan HAProxy.
Pengujian :
Pengujian load balancing bisa berdasarkan permintaan variabel server id secara berulang-ulang
selain itu dapat juga dilihat melalui web
Pengujian Failover bisa berdasarkan permintaan variabel server id secara berulang-ulang dengan kondisi node1 atau node2 sedang dimatikan. Maka hasilnya akan dialihkan ke node yang sedang aktif contoh pada pengujian kali ini adalah node2 dengan server id = 14
0 comments:
Posting Komentar