Assalamualaikum wr.wb
Pengertian Load Balancing
Load Balancing adalah teknik untuk membagi beban (load) ke dalam beberapa jalur atau link. Tujuan dari load balance ini agar tidak ada link yang mendapat beban yang lebih besar dari pada link lainnya. Diharapkan dengan membagi beban kedalam beberapa link tersebut, makan akan tercapai keseimbangan (balance) pada link link tersebut.
Load Balancing juga memiliki beberapa algoritma dalam membagi beban seperti
1. Roundrobin
Round robin merupakan pilihan default dan algoritma ini memilih server secara bergantian berurutan sehingga cenderung balance ke semua server yang ada di Backend.
2. Leastconn
Memilih server berdasarkan jumlah koneksi yang paling sedikit. Ini direkomendasikan untuk session yang lama. Namun server di Backend yang sama juga akan dirotasi pemilihannya seperti round robin.
3. Source
Memilih server mana berdasarkan source IP (Alamat IP Pengguna) yang di hash. Hal ini untuk memastikan pengguna tersebut mendapatkan server yang sama.
4. Sticky Session
Beberapa aplikasi membutuhkan penggunanya untuk terkoneksi / terhubung pada Backend server yang sama. Untuk keperluan persisten ini dibutuhkan yang namanya Sticky Session dengan parameter appsession pada Backend yang membutuhkannya.
1. Roundrobin
Round robin merupakan pilihan default dan algoritma ini memilih server secara bergantian berurutan sehingga cenderung balance ke semua server yang ada di Backend.
2. Leastconn
Memilih server berdasarkan jumlah koneksi yang paling sedikit. Ini direkomendasikan untuk session yang lama. Namun server di Backend yang sama juga akan dirotasi pemilihannya seperti round robin.
3. Source
Memilih server mana berdasarkan source IP (Alamat IP Pengguna) yang di hash. Hal ini untuk memastikan pengguna tersebut mendapatkan server yang sama.
4. Sticky Session
Beberapa aplikasi membutuhkan penggunanya untuk terkoneksi / terhubung pada Backend server yang sama. Untuk keperluan persisten ini dibutuhkan yang namanya Sticky Session dengan parameter appsession pada Backend yang membutuhkannya.
Langkah Langkah :
Pertama sekali kita perlu setting interfacesnya terlebih dahulu, jangan lupa kalo udah disetiing ip nya di restart.
Setelah itu, Install nginx dengan perintah apt-get install nginx
Selanjutnya kita jalankan nginx nya dengan perintah service nginx start lalu kita pastikan nginx sudah running/aktif dengan perintah
service nginx status
Setelah itu kita ubah halaman nginx dengan perintah nano /var/www/index.nginx-debian.html
Konfigurasi web 2
Sama seperti sebelumya, kita setting dulu interfacesnya
Sama seperti sebelumnya kita instal nginx nya
Kita jalan kan nginx nya, lalu kita pastikan sudah running/aktif
Setelah itu kita ubah halaman nginx dengan perintah nano /var/www/index.nginx-debian.html
Konfigurasi Haproxy pada Router Utama
Pertama kita setting interfacenya telebih dahulu
Setelah konfigurasi pada web1 dan web2 selanjutnya kita konfigurasi Haproxy nya, kita masukkan cd/dvd binary 3 Debian 8.11
Lalu kita install Haproxy dengan perintah apt-get install haproxy
Kemudian kita masuk ke nano /etc/haproxy/haproxy.cfg
Hilangkan tanda # pada CONFIG="/etc/haproxy/haproxy.cfg"
Menjadi seperti ini
Kemudian kita masuk ke
nano /etc/haproxy/haproxy.cfg
Tambahkan dibagian paling bawah
frontend header
bind *:80
mode http
default_backed footer
backend footer
balance roundrobin
mode http
server web1 192.168.40.2:80 check
server web2 192.168.40.3:80 check
Kalau udah kita restart haproxynya dengan perintah /etc/init.d/haproxy restart
Pengujian melalui Web Browser
Kita ketik ip address pada router yang mengarah ke internet
Wassalamualaikum, wr.wb