HAproxy负载均衡

目录

一、什么是HAproxy

二、搭建HAProxy负载均衡环境

三、软件安装及配置

1、HAProxy安装及配置

1.1下载haproxy-1.7.2.tar.gz安装包

1.2解压安装包进入目录haproxy-1.7.2/下

1.3编译安装

1.4建立配置文件

1.5添加为系统服务

1.6填写配置文件内容

1.7启动HAProxy服务

2、httpd安装及配置

1.1安装httpd服务(两天web服务器都要安装)

1.2启动httpd服务

 四、验证


一、什么是HAproxy

        HAProxy是一种自由,快速,可靠的开源软件,用于高可用性负载平衡和代理。它可以在单个服务器上平衡多个Web服务器的负载,以提高可靠性,性能和可扩展性。HAProxy支持多种负载平衡算法,包括轮询,加权轮询,IP哈希和基于URI的哈希。它还支持SSL和TLS终止,会话保持,健康检查和故障转移。由于其卓越的性能和可靠性,HAProxy常用于高流量的Web应用程序,例如大型电子商务网站和社交媒体平台。

二、搭建HAProxy负载均衡环境

  • 需要3台服务器如下表格(一台haproxy服务器,两台web服务器)
  • 所有服务器关闭防火墙及IP地址确保能联网
服务器操作系统网络参数/主机名安装服务/安装方法
HAproxyCentOS7192.168.115.200/haproxyhaproxy/源码安装
Web1CentOS7192.168.115.201/web1httpd/yum安装
Web2CentOS7192.168.115.202/web2httpd/yum安装

三、软件安装及配置

  1、HAProxy安装及配置

    1.1下载haproxy-1.7.2.tar.gz安装包

wget https://www.haproxy.org/download/1.7/src/haproxy-1.7.2.tar.gz

    1.2解压安装包进入目录haproxy-1.7.2/下

tar xf haproxy-1.7.2.tar.gz

cd haproxy-1.7.2/

    1.3编译安装

  • 编译前查看本机内核版本号(我的是3.10)
查看内核版本的命令:uname -r
#编译
make PREFIX=/usr/local/haproxy TARGET=linux2628 
#安装
make install PREFIX=/usr/local/haproxy

     1.4建立配置文件

  • 从haproxy的源码包中的examples下的init.haproxy中获得配置文件的路径“/etc/haproxy/haproxy.cfg”
mkdir /etc/haproxy

touch /etc/haproxy/haproxy.cfg -p

     1.5添加为系统服务

  • 复制脚本的时候一定不要改名否则会出错
cp /root/haproxy-1.7.2/examples/haproxy.init /etc/init.d/haproxy

chmod +x /etc/init.d/haproxy

vim  /etc/init.d/haproxy

#修改: 35行 内容为 BIN=/usr/local/haproxy/sbin/$BASENAME

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

     1.6填写配置文件内容

  • 七层负载配置
global #全局属性
    daemon  #以daemon方式在后台运行
    maxconn 256  #最大同时256连接
    pidfile /home/ha/haproxy/conf/haproxy.pid  #指定保存HAProxy进程号的文件
 
 
defaults #默认参数
    mode http  #http模式
    timeout connect 5000ms  #连接server端超时5s
    timeout client 50000ms  #客户端响应超时50s
    timeout server 50000ms  #server端响应超时50s
 
 
frontend http-in #前端服务http-in
    bind *:80  #监听8080端口
    default_backend servers  #请求转发至名为"servers"的后端服务
 
 
backend servers #后端服务servers
    server server1 127.0.0.1:80 maxconn 32
    server server2 127.0.0.1:80 maxconn 32   
#backend servers中两个后端服务,名字叫server1、server2,起在本机的80端口,HAProxy同时最多向这
个服务发起32个连接

#配置监控页面(只能配置在七层负载均衡下)
listen stats                  #定义监控页面    
bind *:1080                   #绑定端口1080    
stats refresh 30s             #每30秒更新监控数据    
stats uri /stats              #访问监控页面的uri    
stats realm HAProxy\ Stats    #监控页面的认证提示    
stats auth admin:admin        #监控页面的用户名和密码
  • 四层负载配置
global #全局属性
    daemon  #以daemon方式在后台运行
    maxconn 256  #最大同时256连接
    pidfile /home/ha/haproxy/conf/haproxy.pid  #指定保存HAProxy进程号的文件
 
 
defaults #默认参数
    mode tcp                #tcp模式
    timeout connect 5000ms  #连接server端超时5s
    timeout client 50000ms  #客户端响应超时50s
    timeout server 50000ms  #server端响应超时50s
 
 
frontend http-in #前端服务http-in
    bind *:80  #监听8080端口
    default_backend servers  #请求转发至名为"servers"的后端服务
 
 
backend servers #后端服务servers
    balance  roundrobin  #轮询
	#balance  source     #保持会话
    server server1 127.0.0.1:80 maxconn 32
    server server2 127.0.0.1:80 maxconn 32   
#backend servers中两个后端服务,名字叫server1、server2,起在本机的80端口,HAProxy同时最多向这
个服务发起32个连接

    1.7启动HAProxy服务

service haproxy  start
service haproxy  stop
service haproxy  restart  | reload
也可以使用systemctl进行启停

  2、httpd安装及配置

    1.1安装httpd服务(两天web服务器都要安装)

yum -y install    httpd

#添加主页文件
#web1服务器
echo web1 > /var/www/html/index.html
#web2服务器
echo web2 > /var/www/html/index.html

    1.2启动httpd服务

systemctl start httpd

 四、验证

  • 在客户端验证是否能负载均衡访问
curl 192.168.115.201:80

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值