Apa itu Load Balancing ??
Load balancing adalah konsep untuk menyeimbangkan beban pada infrastruktur teknologi informasi pada sebuah perusahaan atau instansi. agar seluruh departemen dapat memanfaatkan secara maksimal dan optimal. Jika skala jaringan makin besar maka semakin besar pula traffic yang didapatkan dan Load Balancing berguna sebagai penyeimbang beban apabila traffic semakin tinggi.
Salah satu solusi untuk Load Balancing yaitu HAProxy. HAProxy banyak digunakan karena cukup handal. Cara kerja HAProxy yaitu mendistribusikan traffic data ke berbagai server agar tidak terpusat sehingga tidak membebani.
Apa itu HAProxy ??
HAProxy sama seperti dengan Heartbeat hanya saja pada heartbeat tidak ada fasilitas berupa fitur Statistik menggunakan webbased html.
Pada dasarnya HAProxy sendiri memiliki beberapa fitur yaitu :
- Merupakan loadbalancing yang dapat dibuat master dan slave load balancing, sehingga apabila load balacing utama gagal/fail, maka load balancing cadangan dapat otomatis bekerja.
- Support loadbalancing untuk beberapa server
- Health status, untuk cek status server, yaitu Jika server dalam datacenter mati, maka trafik ke server tersebut otomatis dihentikan
- Dapat untuk loadbalancing aplikasi yang tidak support loadbalancing, maksudnya adalah aplikasi yang mengatur sesi user di server bersangkutan seperti ecommerce, shopping, dll
- Ada statistik yang mudah dibaca
Bisakah SMTP dibuat Load Balancing ??
Tentu saja bisa, HAProxy bukan saja bisa memberikan load balancing untuk web server saja seperti apache, akan tetapi untuk aplikasi SMTP seperti Postfix pun bisa, dalam tulisan ini saya menggunakan Linux SLES 11 SP3 sebagai uji coba.
Topologi
Instalasi HAProxy
Pada SLES, paket HAProxy terdapat pada repository yang ada pada http://software.opensuse.org/search. Caranya buka website tersebut lalu ketikkan paket yang akan di install (HAProxy). Pilih salah satu repositrory yang ada. kemudian tambahkan ke SLES. Masukkan perintah berikut :
zypper ar http://download.opensuse.org/repositories/home:/KGronlund/SLE_11_SP3/ haproxy zypper ref zypper in haproxy
Instalasi & Konfigurasi HAProxy Server
Setelah di install, HAProxy harus di konfigurasi. File konfigurasi HAProxy terdapat pada direktori “/etc/haproxy/haproxy.cfg“, Berikut konfigurasi yang ada pada file tersebut :
# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
user daemon
group daemon
daemon
log 127.0.0.1 daemon
maxconn 4096
chroot /var/lib/haproxy
defaults
log global
retries 2
timeout connect 3000
timeout server 5000
timeout client 5000
frontend ft_smtp
bind 0.0.0.0:25
mode tcp
no option http-server-close
timeout client 1m
log global
option tcplog
default_backend bk_postfix
backend bk_postfix
mode tcp
no option http-server-close
log global
option tcplog
timeout server 1m
timeout connect 5s
server postfix1 192.168.100.121:25 check
server postfix2 192.168.100.122:25 check
Instalasi & Konfigurasi SMTP Server
Install SMTP server dalah hal ini saya menggunakan postfix sebagai SMTP Server.
zypper in postfix
Buka “/etc/postfix/main.cf“, lalu edit skrip berikut :
inet_interfaces = localhost
Ubah menjadi :
inet_interfaces = all
Fungsinya agar semua interface yang terhubung pada Server SMTP dapat mengakses server SMTP. Setelah selesai Restart Service Postfix.
service postfix restart
Uji Coba
Akses IP Haproxy dengan port 25 menggunakan telnet untuk mengecek apakah sudah terhubung atau belum :
Loh ko Hostnamenya beda???, Hostname nya memang sengaja dibedakan untuk membuktikan apakah Load Balancing sudah berjalan dengan semestinya. Semoga bermanfaat :-).







Bagaimana ya caranya untuk mengirm email melalui php atau bahasa pemrograman lain?
jadi topoliginya -> client -> webserver (recive message) -> haproxy -> mail server?