Rabu, 26 Juni 2024

LOAD BALANCER DEBIAN 11 DENGAN HAPROXY

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 robin

root@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 Hash

root@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

HAPROXY STATS DEBIAN 11

          Halo teman-teman pada chapter kali ini kita akan belajar untuk membuat haproxy stat, pada chapter sebelumnya kita sudah mencoba lo...