Semua ada Ilmunya

Slackware Load Balancing



Sudah sering kita mengenal istilah load balancing yang ada pada mesin Mikrotik, mungkin tidak ada salahnya jika load balancing di terapkan “kembali” pada mesin Linux.

Secara umum load balancing sendiri adalah teknik untuk mendistribusikan dua jalur koneksi yang masuk pada sebuah router/server dan kemudian jalur koneksi tersebut di atur sedemikian rupa sehingga menjadi seimbang, jika salah satu koneksi mengalami overload maka koneksi yang satunya lagi akan digunakan.

Berikut step by step konfigurasi load balancing pada Linux Slackware.

1. Pertama-tama tambahkan value pada /etc/iproute2/rt_tables yang berguna untuk mendefinisikan akses keluar dan masuknya sebuah koneksi.
root@zero:/# mcedit /etc/iproute2/rt_tables
#
# reserved values
#
255     local
254     main
253     default
252     isplokal
251     speedy
0       unspec
#
# local
#
#1      inr.ruhep

2. Asumsi IP dari isplokal adalah 202.192.40.54 mask /29 dan IP dari telkom speedy adalah 192.168.17.253 mask /24, buat script sebagai berikut.
root@zero:/# mcedit /etc/rc.d/rc.balance
#!/bin/bash
# Script Load Balancing
# Edited by gaus, watdefak@gmail.com
# Routing Koneksi Satu
# IP ISP LOKAL 202.192.40.54 dengan netmask 255.255.255.248 (/29) pada interfaces eth0.
ip route add 202.192.40.0/29 dev eth0 src 202.192.40.54 table isplokal
# Gateway ISP LOKAL adalah 202.192.40.53
ip route add default via 202.192.40.53 table isplokal
sleep 1
# Routing Koneksi Dua
# IP SPEEDY 192.168.17.253 dengan netmask 255.255.255.0 (/24) pada interfaces eth1.
ip route add 192.168.17.0/24 dev eth1 src 192.168.17.253 table speedy
# Gateway ISP SPEEDY adalah 192.168.17.254
ip route add default via 192.168.17.254 table speedy
sleep 1
# Hapus Default Routing Jika Ada
ip route del default
sleep 1
# Adding Routing Table
# Tambahkan rule untuk ISP LOKAL dan SPEEDY
ip rule add from 202.192.40.54 table isplokal
ip rule add from 192.168.17.253 table speedy
sleep 1
# Routing Load Balancing
# Tambahkan routing (gateway) untuk kedua ISP (ISP LOKAL dan SPEEDY)
# di masing-masing interfaces (eth0 dan eth1).
ip route add default scope global nexthop via 202.192.40.53 dev eth0 weight 1 \
nexthop via 192.168.17.254 dev eth1 weight 1
sleep 1
# IPTABLES
/etc/rc.d/rc.iptables
# EoF

root@zero:/# chmod +x /etc/rc.d/rc.balance (chmod 755 sama aja)

3. Kemudian buat script rc.iptables yang akan di panggil dari script rc.balance, sbb:
root@zero:/# mcedit /etc/rc.d/rc.iptables
#!/bin/bash
IPTAB=/usr/sbin/iptables
#
# LOAD MODULES
echo “Loading IPTABLES modules”
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter
/sbin/modprobe ipt_conntrack
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_irc
/sbin/modprobe ip_conntrack_irc
$IPTAB -X
$IPTAB -F
$IPTAB -t nat -X
$IPTAB -t nat -F
$IPTAB -t mangle -X
$IPTAB -t mangle -F
#
# Allow Established Connections
$IPTAB -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
$IPTAB -A OUTPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
#
# IP ISP LOKAL dan SPEEDY pada masing-masing interfaces
$IPTAB -t nat -A POSTROUTING -o eth0 -j SNAT –to 202.192.40.54
$IPTAB -t nat -A POSTROUTING -o eth1 -j SNAT –to 192.168.17.253

Jangan lupa di chmod biar jalan (root@zero:/# chmod +x /etc/rc.d/rc.iptables)

4. Jalankan script /etc/rc.d/rc.balance
root@zero:/# /etc/rc.d/rc.balance

5. Ketik perintah ip r l untuk melihat hasil dari script diatas

6. Jika Hasil perintah nmr 5 seperti dibawah ini:
default
nexthop via 202.192.40.53 dev eth0 weight 1
nexthop via 192.168.17.254 dev eth1 weight 1
maka koneksi load balancing sudah bisa digunakan.

masukan perintah
/etc/rc.d/rc.balance pada /etc/rc.d/rc.local</div>
untuk secara otomatis dijalankan pada saat booting awal.

Sumber : Forum devilzc0de

0 comment:

Posting Komentar