[ Miroslav Strugarevic @ 16.04.2008. 14:19 ] @
HAProxy je brz i stabilan HTTP load balancer. U ovom HOWTO ću opisati kako instalirati i podesiti HAProxy da radi balancing na dva web servera. Koristio sam sledeći software: CentOS-5.1 i HAProxy 1.2.17. Lista servera: Code: 1. balancer (server na kome se vrti HAProxy) 2. www01 (prvi apache httpd server) 3. www02 (drugi apache httpd server) Ovako izgleda /etc/hosts (u mom slučaju): Code: 192.168.22.100 balancer.sajt.com balancer 192.168.22.101 www01.sajt.com www01 192.168.22.102 www02.sajt.com www02 192.168.22.111 www.sajt.com www Na server-u (balancer) uradite sledeće: # wget http://haproxy.1wt.eu/download/1.2/src/haproxy-1.2.17.tar.gz # tar xzvf haproxy-1.2.17.tar.gz # cd haproxy-1.2.17 # make # cp haproxy /usr/sbin/haproxy # cd examples/ # cp haproxy.init /etc/init.d/haproxy # chmod +x /etc/init.d/haproxy # groupadd haproxy # useradd -g haproxy -s /bin/false -d /home/haproxy haproxy # mkdir /etc/haproxy/ # touch /etc/haproxy/haproxy.cfg # chown haproxy:haproxy -R /etc/haproxy/ # ifconfig eth0:0 192.168.22.111 netmask 255.255.255.0 # echo "ifconfig eth0:0 192.168.22.111 netmask 255.255.255.0" >> /etc/rc.local # chkconfig haproxy on Sada prelazimo na konfiguraciju HAProxy servera. U fajl /etc/haproxy/haproxy.cfg ubacite sledeće: Code: global maxconn 4096 uid 500 gid 500 daemon defaults mode http stats uri /haproxy-stats option httplog option dontlognull retries 3 redispatch maxconn 2000 contimeout 5000 clitimeout 50000 srvtimeout 50000 listen webcluster 192.168.22.111:80 cookie SERVERID rewrite balance roundrobin server web01 192.168.22.101:80 cookie web01 check inter 2000 rise 2 fall 5 server web02 192.168.22.102:80 cookie web02 check inter 2000 rise 2 fall 5 Nakon toga pokrenite HAProxy: # /etc/init.d/haproxy check # /etc/init.d/haproxy start Na serverima web01 i web02 uradite sledeće: # touch /var/www/html/index.html # echo `hostname` >> /var/www/html/index.html # /etc/init.d/httpd start # chkconfig httpd on Sada otvorite u Firefox-u virtuelnu ip adresu 192.168.22.111 (u mom slučaju): ![]() Kada uradite refresh stranice dobićete nešto ovog tipa: ![]() Probajte da ugasite apache na jednom od web servera: # /etc/init.d/httpd stop Videćete da će HAProxy prosleđivati zahteve samo "živim" serverima. Možete da vidite i HAProxy statistike na stranici (/haproxy-stats): ![]() Ako neko ima nešto da izmeni ili doda slobodno. Za više informacija posetite sajt: http://haproxy.1wt.eu/ [Ovu poruku je menjao Miroslav Strugarevic dana 16.04.2008. u 17:32 GMT+1] |