基於 Haproxy 構建負載均衡集羣

案例環境:html

主機            操做系統                     IP地址                  主要的軟件
----------------------------------------------------------------------------
Haproxy    CentOS6.6 x86_64   192.168.200.101  haproxy-1.4.24.tar.gz
Nginx1    CentOS6.6 x86_64   192.168.200.103  nginx-1.6.2.tar.gz
Nginx2    CentOS6.6 x86_64   192.168.200.104  nginx-1.6.2.tar.gzlinux

配置負載均衡服務器nginx

1.安裝Haproxy依賴包及源碼包編譯安裝c++

yum -y install gcc gcc-c++ make pcre-devel bzip2-develweb

2.將準備好的軟件包解壓vim

tar xf haproxy-1.4.24.tar.gz -C /usr/src/瀏覽器

3.編譯安裝bash

cd /usr/src/haproxy-1.4.24/服務器

make TARGET=linux26 && make install負載均衡

4.創建haproxy的配置目錄及文件

mkdir /etc/haproxy

cp examples/haproxy.cfg /etc/haproxy/

5.haproxy 配置文件修改

vim /etc/haproxy/haproxy.cfg

# this config needs haproxy-1.1.28 or haproxy-1.2.1

 
global
#   log 127.0.0.1   local0
#   log 127.0.0.1   local1 notice
     log /dev/log    local0 info
     log /dev/log    local0 notice
     maxconn 4096
     uid 99
     gid 99
     daemon
 
defaults
     log global
     mode    http
     option  httplog
     retries 3
     maxconn 4096
     contimeout  5000
     clitimeout  50000
     srvtimeout  50000
 
listen  webcluster 0.0.0.0:80
     option  httpchk GET /index .html
     balance roundrobin
     server  inst1 192.168.200.113:80 check inter 2000 fall 3
     server  inst1 192.168.200.114:80 check inter 2000 fall 3
 
listen admin_stats
     bind 0.0.0.0:8000
     mode http
     option httplog
     maxconn 100
     stats refresh 30s
     stats uri /stats
     stats realm Crushlinux\ Haproxy
         stats auth admin:admin
     stats hide-version
6.準備服務自啓動腳本
cp /usr/src/haproxy-1.4.24/examples/haproxy.init /etc/init.d/haproxy
ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
chmod +x /etc/init.d/haproxy
/etc/init.d/haproxy start
 
配置nginxWEB服務器
1.搭建Nginx1
(1.)軟件包安裝nginx
(2.)源碼包安裝nginx
2.建立測試頁
cd /usr/local/nginx/html/
echo "server 192.168.200.113" > index.html
3.起服務
/usr/local/nginx/sbin/nginx
4.查看80端口信息
netstat -anpt |grep :80
5.nginx2搭建方式同上,要修改測試頁
echo "server 192.168.200.114" > index.html
 
##nginx服務控制方式
/usr/local/nginx/sbin/nginx 啓動服務

killall -s HUP nginx 從新加載服務
killall -s QUIT nginx 退出服務

測試環境

用瀏覽器打開 http://192.168.200.111
打開一個新的瀏覽器再次訪問 http://192.168.200.111


能夠驗證兩次訪問到的結果分別爲:
server 192.168.200.113
server 192.168.200.114

 

Haproxy 日誌文件:

 1.添加日誌文件

vim /etc/haproxy/haproxy

# this config needs haproxy-1.1.28 or haproxy-1.2.1

 
global
     #log 127.0.0.1  local0
     #log 127.0.0.1  local1 notice
     
     log /dev/log    local0 info
     log /dev/log    local0 notice
2.重啓服務
service haproxy restart
3.修改rsyslog配置
 vim /etc/rsyslog.d/haproxy.conf
if ($programname == 'haproxy' and $syslogserverity-text == 'info' ) then - /var/log/haproxy/haproxy-info .log
&~
if ($programname == 'haproxy' and $syslogserverity-text == 'notice' ) then - /var/log/haproxy/haproxy-notice .log
&~  
4.重啓rsyslog服務
service rsyslog restart
5.查看日誌文件是否建立成功
ls -l /var/log/haproxy/haproxy-info.log
ls -l /var/log/haproxy/haproxy-notice.log
6.進入網頁進行狀態統計功能測試
相關文章
相關標籤/搜索