Haproxy & Nginx搭建Web集群部署
- 一、Haproxy应用
- 二、Haproxy调度算法
- 三、Haproxy搭建Web集群
-
- 1. 部署haproxy服务器
- 1.1 关闭防火墙,编译安装Haproxy
- 1.2 Haproxy服务器配置
- 2. 编译安装Nginx服务器
- 3. 启动Haproxy服务
- 4. 测试Web集群
一、Haproxy应用
二、Haproxy调度算法
三、Haproxy搭建Web集群
实验准备
主机 | 操作系统 | IP地址 | 软件包 |
---|---|---|---|
Haproxy-Server | CentOS7 | 192.168.117.10 | haproxy-1.5.19.tar.gz |
Nginx-Server1 | CentOS7 | 192.168.117.20 | nginx-1.12.0.tar.gz |
Nginx-Server2 | CentOS7 | 192.168.117.30 | nginx-1.12.0.tar.gz |
客户端 | CentOS7 | 192.168.117.40 |
1. 部署haproxy服务器
Haproxy-Server:192.168.117.10
1.1 关闭防火墙,编译安装Haproxy
systemctl stop firewalld
setenforce 0cd /opt
haproxy-1.5.19.tar.gzyum install -y pcre-devel bzip2-devel gcc gcc-c++ maketar zxvf haproxy-1.5.19.tar.gz
cd haproxy-1.5.19/
make TARGET=linux2628 ARCH=x86_64
make install
1.2 Haproxy服务器配置
mkdir /etc/haproxy
cp examples/haproxy.cfg /etc/haproxy/cd /etc/haproxy/
vim haproxy.cfg
配置文件解释:
#chroot /usr/share/haproxy
uid 99 #用户UID
gid 99 #用户GID
daemon #守护进程模式defaults
log global #定义日志为global配置中的日志定义
mode http #模式为http
option httplog #采用http日志格式记录日志
option dontlognull #不记录健康检查日志信息
retries 3 #检查节点服务器失败次数,连续达到三次失败,则认为节点不可用
redispatch #当服务器负载很高时,自动结束当前队列处理比较久的连接
maxconn 2000 #最大连接数
contimeout 5000 #连接超时时间
clitimeout 50000 #客户端超时时间
srvtimeout 50000 #服务器超时时间
2. 编译安装Nginx服务器
Nginx-Server1:192.168.117.20
Nginx-Server2:192.168.117.30
systemctl stop firewalld
setenforce 0
yum install -y pcre-devel zlib-devel gcc gcc-c++ make useradd -M -s /sbin/nologin nginx
cd /opt
tar zxvf nginx-1.12.0.tar.gz -C /opt/
cd nginx-1.12.0/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx
指定nginx安装路径,指定用户名、组名
make && make installln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
nginx #启动nginx 服务
Nginx-Server1:192.168.117.20
echo "this is qq web" > /usr/local/nginx/html/test.html
Nginx-Server2:192.168.117.30
echo "this is ww web" > /usr/local/nginx/html/test.html
3. 启动Haproxy服务
Haproxy-Server:192.168.117.10
cp /opt/haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy
cd /etc/init.d/
ls
chmod +x haproxy
chkconfig --add /etc/init.d/haproxy
ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
service haproxy start
4. 测试Web集群
在客户端使用浏览器打开 http://192.168.117.10/test.html ,不断刷新浏览器测试负载均衡效果