Halo teman-teman pada kali ini kita akan belajar load balancer menggunakan haproxy pada debian 11, sebelum ke tutorial kita kenalkan singkat apa itu load balancer...
Load balance adalah metode pendistribusian traffic ke beberapa server yang fungsinya untuk menjaga request client agar bisa tetap dilayani oleh server. HAProxy adalah open source software untuk melakukan load balancing pada layer 4 (TCP) dan layer 7 (HTTP)
Type – type load balance :
1.round robin : mengarahkan traffic ke server utama kemudian traffic berikutnya diarahkan ke server kedua, dan berlaku seterusnya
2. least connection : sama seperti roundrobin namun dengan kelebihan yaitu jika sebuah server memiliki traffic yang besar maka permintaan data akan didistribusikan ke server yang lebih luang.
3. IP Hash / mode source : menjamin client mendapat server yang sama ketika melakukan request
Topologi yang kita gunakan pada lab ini, kita menggunakan VirtualBox sebagai platform virtualization

# preparing dan cek connection
# setting hosts ke semua vm nano /etc/hosts # tambahkan ip lokal dan hostname nya 192.168.100.48 srv-debian 192.168.100.50 srv-debian2 192.168.100.52 srv-debian3
# ping dari srv-debian3 root@srv-debian3:~# ping srv-debian -c 2 PING srv-debian (192.168.100.48) 56(84) bytes of data. 64 bytes from srv-debian (192.168.100.48): icmp_seq=1 ttl=64 time=3.12 ms 64 bytes from srv-debian (192.168.100.48): icmp_seq=2 ttl=64 time=0.522 ms
root@srv-debian3:~# ping srv-debian2 -c 2 PING srv-debian2 (192.168.100.50) 56(84) bytes of data. 64 bytes from srv-debian2 (192.168.100.50): icmp_seq=1 ttl=64 time=2.30 ms 64 bytes from srv-debian2 (192.168.100.50): icmp_seq=2 ttl=64 time=0.561 ms root@srv-debian3:~# ping srv-debian3 -c 2 PING srv-debian3 (192.168.100.52) 56(84) bytes of data. 64 bytes from srv-debian3 (192.168.100.52): icmp_seq=1 ttl=64 time=0.043 ms 64 bytes from srv-debian3 (192.168.100.52): icmp_seq=2 ttl=64 time=0.065 ms
# siapkan web server di srv-debian dan srv-debian2 root@srv-debian:~# nano /var/www/html/index.html <center><h1> hi, ini web server 1 </h1><center> root@srv-debian2:~# nano /var/www/html/index.html <center><h1> hi, ini web server 1 </h1><center>
|
Konfigurasi Haproxy
# install haproxy di srv-debian3 root@srv-debian3:~# apt install haproxy -y
HAProxy mode round robinroot@srv-debian3:~# cd /etc/haproxy/ root@srv-debian3:/etc/haproxy# cp haproxy.cfg haproxy.cfg.backup root@srv-debian3:/etc/haproxy# ls errors haproxy.cfg haproxy.cfg.backup
# edit file haproxy root@srv-debian3:/etc/haproxy# nano haproxy.cfg # tambahkan script frontend sysadmin bind *:80 bind *:443 default_backend kits option forwardfor
backend kits balance roundrobin server srv-debian 192.168.100.48:80 check server srv-debian2 192.168.100.50:80 check
root@srv-debian3:/etc/haproxy# systemctl restart haproxy.service
# verifikasi # curl (ip srv-debian3) --- > maka server akan berpindah traffic secara bergantian root@srv-debian3:/etc/haproxy# curl 192.168.100.52 <center><h1> hi, ini web server 1 </h1><center> root@srv-debian3:/etc/haproxy# curl 192.168.100.52 <center><h1> hai, ini web server 2 </h1><center> root@srv-debian3:/etc/haproxy# curl 192.168.100.52 <center><h1> hi, ini web server 1 </h1><center> root@srv-debian3:/etc/haproxy# curl 192.168.100.52 <center><h1> hai, ini web server 2 </h1><center>
|
akses web server

Ketika di refresh akan berganti server kedua

HAProxy mode source atau IP Hashroot@srv-debian3:/etc/haproxy# nano haproxy.cfg
# line 44 : ubah mode round robin jadi source balance source
# verifikasi root@srv-debian3:/etc/haproxy# curl 192.168.100.52 <center><h1> hi, ini web server 1 </h1><center> root@srv-debian3:/etc/haproxy# curl 192.168.100.52 <center><h1> hi, ini web server 1 </h1><center> root@srv-debian3:/etc/haproxy# curl 192.168.100.52 <center><h1> hi, ini web server 1 </h1><center>
Direfresh berkali kali pun server akan mendapat server yang sama
|

Okee konfigurasi load balance kita sudah selesai, see you next chapter...
Tidak ada komentar:
Posting Komentar