Pada tutorial kali ini kita akan memanfaatkan LVS (Linux Virtual Server) sebagai load balancer native di CentOS/RHEL versi 8. LVS adalah sebuah software load balancer yang dikembangkan sejak tahun 1998 oleh Wenson Zhang dan kini oleh LinuxVirtualServer.org. Meskipun tak seterkenal NGINX maupu Apache Load Balancer, LVS juga tidak kalah performanya, karena memang ditujukan khusus sebagai load balancer sedari awal.
Cara Instalasi
Silakan install terlebih dahulu software ipvsadm
sudo yum install ipvsadm
kemudian lakukan enable IP Forwarding:
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf sudo sysctl -p
cek kembali,
sysctl net.ipv4.ip_forward
harusnya keluar net.ipv4.ip_forward = 1
lalu start service IPVSADM:
sudo touch /etc/sysconfig/ipvsadm sudo systemctl enable --now ipvsadm
Konfigurasi
Lanjutkan langkah instalasi diatas dengan konfigurasi dengan menghapus semua IP table rules yang ada:
sudo ipvsadm -C
bikin rule load balancing baru dengan pola:
ipvsadm -A -t (ServiceIP:Port) -s (Distribution method)
dimana distribution method yang ada adalah:
- rr untuk round robin
- wrr untuk weighted round robin
- lc untuk least connection
- wlc untuk weighted least connection
contohnya:
sudo ipvsadm -A -t 192.168.100.2:80 -s wlc
kemudian untuk server-server backend bisa gunakan sintaks:
sudo ipvsadm -a -t 192.168.100.2:80 -r 192.168.100.3:80 -m sudo ipvsadm -a -t 192.168.100.2:80 -r 192.168.100.4:80 -m
untuk mengecek rule yang sudah ditulis dengan perintah berikut:
sudo ipvsadm -l
buka port HTTP di firewall bawaan CentOS/RHEL:
sudo firewall-cmd --add-service=http --permanent sudo firewall-cmd --reload
Silakan cek video berikut gan: