当前位置:首页 > Web开发 > 正文

后方两台realserver机器(192.168.1.150、192.168.1.151

2024-03-31 Web开发

操纵配景:
前方有一台haproxy代办代理机器(115.100.120.57/192.168.1.7),后方两台realserver机器(192.168.1.150、192.168.1.151,没有公网ip,部署了很多站点)
将域名解析到haproxy机器的公网ip,在haproxy配置文件里,按照域名转发至后端realserver上。

haproxy代办代理配置:按照域名进行转发(即后端机器不管部署几多个域名,都可以直接在haproxy配置文件里通过域名对域名方法直接指定)
nginx代办代理配置:按照端口进行转发(即后端机器部署多个域名时,在前面nginx配置里通过upstream负载到差此外端口上)
----------------------------------------------------------------------------------------------------------

下面是haproxy代办代理处事器上的操纵
(1)封锁SElinux、配置防火墙 (后端realserver机器的iptables防火墙可以限制只允许代办代理处事器访谒)
[[email protected] ~]# vim /etc/config/selinux
SELINUX=disabled
[[email protected] ~]# setenforce 0
[[email protected] ~]# getenforce

[[email protected] ~]# vim /etc/sysconfig/iptables
.......
-A INPUT -s 115.100.120.0/24 -d 224.0.0.18 -j ACCEPT                            #允许组播地点通信(这里,我将机器的公网和私网地点都放了)
-A INPUT -s 192.168.1.0/24 -d 224.0.0.18 -j ACCEPT
-A INPUT -s 115.100.120.0/24 -p vrrp -j ACCEPT                                       #允许 VRRP(虚拟路由器冗余协)通信
-A INPUT -s 192.168.1.0/24 -p vrrp -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT

[[email protected] ~]# /etc/init.d/iptables restart

(2)安置haproxy

1)安置编译工具
[[email protected] ~]# yum install gcc gcc-c++ make openssl-devel kernel-devel

2)安置 haproxy
下载 haproxy,放到/usr/local/src目录下
haproxy-1.5.14.tar.gz下载:https://pan.baidu.com/s/1jI8qiyy
提取暗码:u77d

[[email protected] ~]# cd /usr/local/src
[[email protected] src]# ls haproxy-1.5.14.tar.gz

[[email protected] ~]# tar zxvf haproxy-1.5.14.tar.gz
[[email protected] ~]# cd haproxy-1.5.14

接着进行haproxy的编译安置,haproxy编译没有configure,直接make->make install
[[email protected] haproxy-1.5.14]# make TARGET=linux26 CPU=x86_64 PREFIX=http://www.mamicode.com/usr/local/haprpxy USE_OPENSSL=1 ADDLIB=-lz
[[email protected] haproxy-1.5.14]# ldd haproxy | grep ssl
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f06ae977000)
[[email protected] haproxy-1.5.14]# make install PREFIX=http://www.mamicode.com/usr/local/haproxy

编译参数说明:
TARGET=linux26 : 使用 uname -r 检察内核,如:2.6.18-371.el5,此时该参数就为linux26
CPU=x86_64 : 使用 uname -r 检察系统信息,如 x86_64 x86_64 x86_64 GNU/Linux,此时该参数就为 x86_64
PREFIX : 后面跟的是haprpxy的安置路径
USE_OPENSSL=1 ADDLIB=-lz : 撑持ssl

3)设置 haproxy
[[email protected] src]# mkdir -p /usr/local/haproxy/conf
[[email protected] src]# mkdir -p /etc/haproxy
[[email protected] src]# cp /usr/local/src/haproxy-1.5.14/examples/haproxy.cfg /usr/local/haproxy/conf/haproxy.cfg
[[email protected] src]# ln -s /usr/local/haproxy/conf/haproxy.cfg /etc/haproxy/haproxy.cfg
[[email protected] src]# cp -r /usr/local/src/haproxy-1.5.14/examples/errorfiles /usr/local/haproxy/errorfiles
[[email protected] src]# ln -s /usr/local/haproxy/errorfiles /etc/haproxy/errorfiles
[[email protected] src]# mkdir -p /usr/local/haproxy/log
[[email protected] src]# touch /usr/local/haproxy/log/haproxy.log
[[email protected] src]# ln -s /usr/local/haproxy/log/haproxy.log /var/log/haproxy.log
[[email protected] src]# cp /usr/local/src/haproxy-1.5.14/examples/haproxy.init /etc/rc.d/init.d/haproxy
[[email protected] src]# chmod +x /etc/rc.d/init.d/haproxy
[[email protected] src]# chkconfig haproxy on
[[email protected] src]# ln -s /usr/local/haproxy/sbin/haproxy /usr/sbin

4)配置 haproxy.cfg 参数
[[email protected] src]# cp /usr/local/haproxy/conf/haproxy.cfg /usr/local/haproxy/conf/haproxy.cfg-bak
[[email protected] src]# vim /usr/local/haproxy/conf/haproxy.cfg           #可以直接粘贴进去使用
# this config needs haproxy-1.1.28 or haproxy-1.2.1

global
    log 127.0.0.1 local0 info           #在本机记录日志
    maxconn 65535                      #每个进程可用的最大连接数
    chroot /usr/local/haproxy         #haproxy 安置目录
    uid nobody                     #运行haproxy的用户uid(使用id号也行)
    gid nobody                    #运行haproxy的组uid(使用id号也行)
    daemon                         #以后台守护进程运行

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/32367.html