1. 程式人生 > >Centos7中搭建haproxy實現代理服務

Centos7中搭建haproxy實現代理服務

配置文件 火墻 db2 .html 代理服務 mount cas entos module

haproxy提供高可用性、負載均衡以及基於TCP(第四層)和HTTP(第七層)應用的代理,支持虛擬主機;
haproxy特別適用於那些負載特別大的web站點,這些站點通常又需要會話保持或七層處理。haproxy運行在時下的硬件上,完全可以支持數以萬計的並發連接,提供更加穩定高效的代理服務。

實驗環境:haproxy代理服務器IP 192.168.60.136
                節點服務器1IP 192.168.60.135
                節點服務器2IP  192.168.60.143

技術分享圖片

手工編譯nginx的過程不在贅述,請看我另一篇博客詳解
手工編譯nginx博客地址:http://blog.51cto.com/13760226/2158459

haproxy https://pan.baidu.com/s/1o6266kAIwcaVxjKdCNZNQw 密碼:vxxz
nginx https://pan.baidu.com/s/13G9Mc3uX5dgYMYh4RflcWQ 密碼:vtkv

下面我們開始搭建haproxy
1、關閉防火墻,安裝編譯環境

技術分享圖片
2、掛載宿主機,進行解壓
技術分享圖片
技術分享圖片

3、cd /opt/haproxy-1.5.19
    make TARGET=linux26

4、安裝

技術分享圖片

5、創建目錄,復制配置文件

技術分享圖片

6、對配置文件進行修改

vim haproxy.cfg /修改配置文件
chroot /usr/share/haproxy /刪除,不禁錮家目錄

redispatch /刪除再發送功能
技術分享圖片

7、復制啟動腳本以及haproxy命令腳本並啟動

技術分享圖片

8、nginx站點添加首頁內容

技術分享圖片
技術分享圖片

9、測試

技術分享圖片

end:代碼隨筆記

1、代理服務器地址 192.168.60.135
節點服務器地址 192.168.60.136
節點服務器地址2 192.168.60.143
節點服務器使用nginx
2、代理服務器使用haporxy實現代理功能
=========================節點服務器======================

systemctl stop firewalld.service

systemctl disable firewalld.service

setenforce 0

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

useradd -M -s /sbin/nologin nginx

mkdir /opt/abc

mount.cifs //192.168.10.3/linuxbage /opt/abc

cd /opt/abc/rhel7/Y2C7

tar zxf nginx-1.12.0.tar -C /opt

cd /opt/nginx-1.12.0.

./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module

make && make install

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

vim /etc/init.d/nginx

#!/bin/bash
chkconfig: - 99 20
description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
$PROG
;;
stop)
kill -s QUIT $(cat $PIDF)
;;
restart)
$0 stop
$0 start
;;
reload)
kill -s HUP $(cat $PIDF)
;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
exit 0

chmod +x /etc/init.d/nginx
chkconfig --add nginx
chkconfig --level 35 nginx on
chkconfig --list nginx
service nginx start
service nginx stop

cd /usr/local/nginx/html

echo "this is web1" >index.html

第二臺節點服務器一樣

==========================haporxy=====================
yum install -y pcre-devel bzip2-devel gcc gcc-c++

systemctl stop firewalld.service

systemctl disable firewalld.service

setenfoce 0

mount.cifs //192.168.10.3/linuxbage /opt/abc

cd /opt/abc/rhel7/Y2C7

tar zxf haproxy-1.5.19.tar -C /opt

cd /opt/haproxy-1.5.19.

make TARGET=linux26

make install

mkdir /etc/haproxy //創建一個目錄給放haproxy配置文件

cp examples/haproxy.cfg /etc/haproxy/ //復制配置文件

cd /etc/haproxy/

vim haproxy.cfg /修改配置文件
chroot /usr/share/haproxy /刪除,不禁錮家目錄
redispatch /刪除再發送功能

刪除所有listen項目

listen webcluster 0.0.0.0:80
option httpchk GET /index.html //訪問的頁面
balance roundrobin
server inst1 192.168.100.26:80 check inter 2000 fall 3
server inst2 192.168.100.27:80 check inter 2000 fall 3

cp /opt/haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy /復制啟動腳本到init

chmod +x /etc/init.d/haproxy

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

ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy //建立軟連接命令腳本能被系統識別

service haproxy start

使用代理服務器的IP進行訪問

Centos7中搭建haproxy實現代理服務