使用haproxy搭建web羣集

使用haproxy搭建web羣集

  • haproxy提供高可用性、負載均衡以及基於TCP和HTTP應用的代理,支持虛擬主機,它是免費、快速並且可靠的一種解決方案。haproxy運行在當前的硬件上,完全可以支持數以萬計的併發連接。並且它的運行模式使得它可以很簡單安全的整合進您當前的架構中, 同時可以保護你的web服務器不被暴露到網絡上。

結構拓補圖

使用haproxy搭建web羣集

實驗環境

主機 操作系統 IP地址 主要軟件
haproxy服務器 CentOS7.3x86_64 192.168.100.101/24 haproxy-1.5.19.tar.gz
web服務器1 CentOS7.3x86_64 192.168.100.102/24 nginx-1.12.0.tar.gz
web服務器2 CentOS7.3x86_64 192.168.100.103/24 nginx-1.12.0.tar.gz

安裝配置web服務器

  • 兩臺web服務器的安裝配置過程相同,主要對其設置不同測試首頁來區分兩臺web服務器。

安裝編譯環境包pcre-devel bzip2-devel gcc gcc-c++;

yum install pcre-devdl zlib-devel gcc gcc-c++ make -y

創建nginx用戶 ,解壓nginx壓縮包,並進行編譯安裝;

useradd -M -s /sbin/nologin nginx

mkdir /opt/abc #創建掛載點

mount.cifs //192.168.100.3/rhel7 /opt/abc #將宿主機的相關軟件包掛載

tar zxvf nginx-1.12.0.tar.gz -C /opt #解壓nginx壓縮包

cd /nginx-1.12.0

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

make && make install

添加測試首頁(分別在兩臺web服務器中添加測試首頁);

cd /user/local/nginx/hatml

echo "this is web1 test" > test.html #web1服務器測試首頁內容

echo "this is web2 test" > test.html #web2服務器測試首頁內容

建立軟連接,使系統識別nginx命令,啓動nginx;

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ #使系統識別nginx命令

nginx #啓動

關閉防火牆和安全功能;

systemctl stop firewalld.service #關閉防火牆

setenforce 0 #關閉安全功能

安裝配置haproxy服務

安裝編譯環境包pcre-devel bzip2-devel gcc gcc-c++ make;

yum install pdre-devel bzip2-devel gcc gcc-c++ make

解壓haproxy壓縮包,並進行編譯安裝;

mkdir /opt/abc #創建掛載點

mount.cifs //192.168.100.3/rhel7 /opt/abc #將宿主機中的相關軟件包掛載

tar zxvf haproxy-1.2.19.tar.gz -C /opt #解壓haproxy服務壓縮包

cd /opt/haproxy-1.5.19

make TARGET=linux26 #64爲系統

make install

建立haproxy的配置文件,並將進行編輯;

mkdir /etc/harpoxy

cp examples/haproxy.cfg /etc/haproxy #將haproxy.cfg文件複製到配置文件

cd /etc/haproxy

vim haproxy.cfg #編輯配置文件

刪除以下語句
chroot /usr/share/haproxy
redispatch                  

添加
listen  webcluster 0.0.0.0:80
        option httpchk GET /test.html
        balance roundrobin
        server inst1 192.168.100.102:80 check inter 2000 fall 3     #節點1服務器
        server inst2 192.168.100.103:80 check inter 2000 fall 3     #節點2服務器

將haproxy的啓動腳本複製到/etc/init.d中,建立軟連接便於系統所識別;

cp /opt/haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy #將haproxy的啓動腳本複製到/etc/init.d中

chmod +x haproxy

chkconfig --add /etc/init.d/haproxy

ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy #建立軟連接便於系統所識別

關閉防火牆和安全功能;

systemctl stop firewalld.service

setenforce 0

登錄驗證

  • haproxy服務器做爲負載均衡服務器,客服機瀏覽器只需訪問haproxy服務器的IP地址時進行刷新,便可訪問到兩臺web服務器的不同此時首頁。

使用haproxy搭建web羣集使用haproxy搭建web羣集

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章