HAProxy高可用负载均衡集群搭建

HAProxy简介

HAProxy的安装与配置

HAProxy的安装

HAProxy主配置文件

启动haproxy

服务端配置

HAProxy的测试

负载均衡测试

故障切换测试

HAProxy监控页面的查看


HAProxy简介

HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速且可靠的一种解决方案。支持4-7层的网络交换,即覆盖所有的TCP协议。也就是说,HAProxy甚至还支持MySQL的负载均衡。

HAProxy的安装与配置

HAProxy的安装

[root@CentOS7 ~]# tar zxvf haproxy-2.0-dev2.tar.gz
[root@CentOS7 ~]# cd haproxy-2.0-dev2/
[root@CentOS7 ~]# unmae -a            获取Linux内核版本(3.0以上版本使用linux2628参数)
[root@CentOS7 haproxy-2.0-dev2]# make -j 4TARGET=linux2628 PREFIX=/usr/local/haproxy
[root@CentOS7 haproxy-2.0-dev2]# make install PREFIX=/usr/local/haproxy

注:所有设备均关闭防火墙和SELINUX

[root@CentOS7 ~]# systemctl stop firewalld
[root@CentOS7 ~]# setenforce 0

HAProxy主配置文件

[root@CentOS7 ~]# vim /usr/local/haproxy/conf/haproxy.cfg 
global                                           
    log 127.0.0.1 local2                          日志配置
    maxconn 4086                                  用于设定最大并发连接数
    chroot /usr/local/haproxy                     修改haproxy的工作目录
    uid 99                                        以指定UID运行haproxy(99为nobody用户)
    gid 99                                        同UID,不过指定的组名
    daemon                                        以后台形式运行haproxy
    nbproc 1                                      指定启动的haproxy进程的个数,最大不能超过 
                                                  物理CPU的核心数
    pidfile /usr/local/haproxy/logs/haproxy.pid   pid进程文件位置

defaults
    log global                                                  
    log 127.0.0.1 local3                    设定日志文件级别      
    mode http                               设定实例的工作模式(有tcp/http/health三种)
    retries 2                               失败重连次数
    option httplog                          日志类别,记载http日志
    option httpclose                        每次请求完毕后主动关闭http通道
    option dontlognull                      不记录空连接产生的日志
    option forwardfor                       如果后端服务器需要获得客户端真实IP需要配置 
                                            的参数,可以从HTTP Header中获得客户端IP
    option redispatch                       当对应的服务器宕机时,强制定向到其他可用的服务器
    option httpchk GET /index.html          健康检测       
    timeout connect 5000ms                  连接超时时间
    timeout client 30000ms                  客户端超时时间
    timeout server 30000ms                  服务端超时时间
    timeout check 2000                      检测超时时间
    balance roundrobin                      定义负载均衡算法
    stats uri /haproxy-stats                haproxy监控页面的访问地址

frontend http                               前端配置,用于定义一系列监听的套接字
    bind 0.0.0.0:80                         发起http请求到80端口,会被转发到设置的IP及端口
    default_backend http_back               转发到后端,需写上后端名称

backend http_back                           定义后端的服务器
    server s1 192.168.73.156:80 weight 1 minconn 1 maxconn 3 check inter 40000
    server s2 192.168.73.154:80 weight 1 minconn 1 maxconn 3 check inter 40000

启动haproxy

服务端配置

Server1:
[root@Server1 ~]# yum -y install httpd
[root@Server1 ~]# echo 192.168.73.156 >> /var/www/html/index.html
[root@Server1 ~]# systemctl start httpd

Server2:
[root@Server2 ~]# yum -y install httpd
[root@Server2 ~]# echo 192.168.73.154 >> /var/www/html/index.html 
[root@Server2 ~]# systemctl start httpd

HAProxy的测试

负载均衡测试

故障切换测试

将Server1节点服务停止,此时访问将只能看到“192.168.73.154”了。如果将其重新启动,会自动加入到集群中去。

HAProxy监控页面的查看

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值