当前位置: 代码迷 >> 综合 >> Haproxy Nginx搭建Web集群部署
  详细解决方案

Haproxy Nginx搭建Web集群部署

热度:91   发布时间:2024-01-06 14:39:13.0

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 ,不断刷新浏览器测试负载均衡效果
在这里插入图片描述
在这里插入图片描述