使用HAProxy搭建Web羣集

HAProxy是目前比較流行的一種羣集調度工具,同類羣集調度工具備不少,如LVS和Nginx。相比較而言,LVS性能最好,可是搭建相對複雜,Nginx的upstream模塊支持羣集功能,可是對羣集節點的健康檢查功能不強,性能沒有HAProxy好。

實驗環境:

主機 操做系統 IP地址 主要軟件
HAProxy服務器 CentOS7-3 192.168.1.60 haproxy-1.5.19.tar.gz
Nginx服務器1 CentOS7-3 192.168.1.61 nginx-1.12.0.tar.gz
Nginx服務器2 CentOS7-3 192.168.1.61 nginx-1.12.0.tar.gz
客戶端 Windows7 192.168.1.66 IE瀏覽器

實驗部署:

一. 節點服務器1

1.安裝所需軟件包

#yum install pcre-devel zlib-devel gcc gcc-c++ make –y

2.新建管理用戶nginx

#useradd –M –s /sbin/nologin nginx

3.解壓Nginx軟件包至/opt目錄下

#tar zxvf nginx-1.12.0.tar.gz –C /opt/          //保證在由此軟件包的目錄下

4.在nginx-1.12.0的目錄下進行配置

#cd nginx-1.12.0/
#./configure \
--prefix=/usr/local/nginx \         //安裝目錄
--user=nginx \                  //用戶
--group=nginx                   //用戶組

5.編譯及安裝

#make && make install

6.添加主頁文件

#cd /usr/local/nginx/html
#echo 「this is benet web」>test.html

7.創建軟鏈接方便管理

#ln –s /usr/local/nginx/sbin/nginx /usr/local/sbin

8.啓動nginx

#nginx

9.關閉防火牆和加強安全功能

#systemctl stop firewalld.service
#setenforce 0

10.測試

使用HAProxy搭建Web羣集
使用HAProxy搭建Web羣集

二. 節點服務器2

節點服務器2的配置過程總體與節點服務器1相同,僅需注意主頁設置與節點服務器1的區分。

測試:

三. HAProxy服務器

1.安裝所需軟件包

#yum install –y pcre-devel bzip2-devel gcc gcc-c++ make

2.解壓軟件包至/opt目錄下(保證在有此軟件包的目錄下)

#tar zxvf haproxy-1.5.19.tar.gz –C /opt/

3.編譯及安裝

#cd /opt/haproxy-1.5.19
#make TARGET=linux26
#make install

4.建立配置文件存放目錄

#mkdir /etc/haproxy

5.拷貝配置模板文件至存放目錄下

#cp examples/haproxy.cfg /etc/haproxy/

6.修改配置文件

#cd /etc/haproxy/
#vim haproxy.cfg
刪除全部listen項目並刪除如下語句
chroot /usr/share/haproxy
redispatch
添加
listen webcluster 0.0.0.0:80
     option httpchk GET /test.html          //檢查系統的test.html文件
     balance roundrobin                 //負載均衡調度算法使用輪詢算法
     server inst1 192.168.1.61:80 check inter 2000 fall 3       //定義在線節點
     server inst2 192.168.1.62:80 check inter 2000 fall 3

7.建立自啓動腳本

#cp /opt/haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy
#chmod +x /etc/init.d/haproxy                   //賦予可執行權限
#chkconfig –add /etc/init.d/haproxy             //加入系統服務
#ln –s /usr/local/sbin/haproxy /usr/sbin/haproxy

8.啓動haproxy

#service haproxy start

9.關閉防火牆和加強安全功能

#systemctl stop firewalld.service
#setenforce 0

10.在客戶端win7上測試:

使用HAProxy搭建Web羣集
使用HAProxy搭建Web羣集

四. 添加日誌功能

1. 編輯配置文件

#vim /etc/haproxy/haproxy.cfg
log  /dev/log   /local0 info
log  /dev/log   /local0 notice              //將配置文件裏global下面的兩行進行替換

2. 重啓haproxy

#service haproxy restart

3. 修改rsyslog配置

#vim /etc/rsyslog.d/haproxy.conf
if ($programname == 'haproxy' and $syslogseverity-text == 'info')
then -/var/log/haproxy/haproxy-info.log
&~
if ($programname == 'haproxy' and $syslogseverity-text == 'notice')
then -/var/log/haproxy/haproxy-notice.log
&~

4. 重啓系統日誌服務

#systemctl restart rsyslog.service

5. 測試日誌信息

#tail –f /var/log/haproxy/haproxy-info.log
相關文章
相關標籤/搜索