0
点赞
收藏
分享

微信扫一扫

0656-6.2.0-如何配置Haproxy高可用

作者:冉南阳


1

文档编写目的


Fayson在之前的文章有提到《​​如何使用HAProxy实现HiveServer2负载均衡​​》《​​如何使用HAProxy实现Impala的负载均衡​​》集群采用了haproxy保证了集群服务的高可用,但是Haproxy本身并没有实现热备,在Haproxy服务器出现问题时,需要手动切换。本文主要介绍如何采用keepalived解决实在Haproxy高可用。


  • 测试环境:

1.RedHat7.2

2.CDH6.2.0


2

操作步骤

2.1

安装配置Haproxy


两个节点都安装Haproxy


yum -y install haproxy


0656-6.2.0-如何配置Haproxy高可用_配置文件


两个节点配置Haproxy


0656-6.2.0-如何配置Haproxy高可用_高可用_02


两个节点启动并加入开机自启


0656-6.2.0-如何配置Haproxy高可用_负载均衡_03

0656-6.2.0-如何配置Haproxy高可用_负载均衡_04


界面查看两个节点配置是否正确,访问是否正常


0656-6.2.0-如何配置Haproxy高可用_高可用_05

0656-6.2.0-如何配置Haproxy高可用_高可用_06


2.2

安装keepalived


两个节点都安装


yum -y install keepalived


0656-6.2.0-如何配置Haproxy高可用_配置文件_07

0656-6.2.0-如何配置Haproxy高可用_配置文件_08


添加到开机自启动


0656-6.2.0-如何配置Haproxy高可用_高可用_09

0656-6.2.0-如何配置Haproxy高可用_配置文件_10


2.3

配置HA


1.两个节点同时配置

编辑脚本/etc/keepalived/haproxy_check.sh,脚本内容如下(haproxy_check.sh),两个节点都需要该脚本。


#!/bin/bash
A=`ps -C haproxy --no-header | wc -l`
if [ $A -eq 0 ];then
/etc/init.d/haproxy start
sleep 3
if [ `ps -C haproxy --no-header | wc -l ` -eq 0 ];then
/etc/init.d/keepalived stop
fi
fi


0656-6.2.0-如何配置Haproxy高可用_配置文件_11


增加执行权限


chmod +x /etc/keepalived/haproxy_check.sh


0656-6.2.0-如何配置Haproxy高可用_高可用_12

0656-6.2.0-如何配置Haproxy高可用_负载均衡_13


2.节点cdh234.macro.com配置Keepalived

修改配置文件/etc/keepalived/keepalived.conf,配置vip为192.168.0.245


0656-6.2.0-如何配置Haproxy高可用_配置文件_14


启动Keepalived服务


systemctl start keepalived


0656-6.2.0-如何配置Haproxy高可用_负载均衡_15


vip已绑定成功


0656-6.2.0-如何配置Haproxy高可用_高可用_16


cdh235.macro.com节点ping 192.168.0.245


0656-6.2.0-如何配置Haproxy高可用_负载均衡_17


停止Keepalived服务后查看192.168.0.245已从网卡ens192解绑


0656-6.2.0-如何配置Haproxy高可用_配置文件_18


3.节点cdh235.macro.com配置Keepalived

修改配置文件/etc/keepalived/keepalived.conf,配置vip为192.168.0.245


0656-6.2.0-如何配置Haproxy高可用_配置文件_19


启动Keepalived服务


systemctl start keepalived


0656-6.2.0-如何配置Haproxy高可用_负载均衡_20


vip已绑定成功


0656-6.2.0-如何配置Haproxy高可用_高可用_21


cdh234.macro.com节点ping 192.168.0.245


0656-6.2.0-如何配置Haproxy高可用_负载均衡_22


2.4

验证Keepalived服务IP漂移


两个节点同时起Keepalived


0656-6.2.0-如何配置Haproxy高可用_负载均衡_23

0656-6.2.0-如何配置Haproxy高可用_高可用_24


只有其中一个节点cdh235.macro.com绑定了vip 192.168.0.245


0656-6.2.0-如何配置Haproxy高可用_高可用_25

0656-6.2.0-如何配置Haproxy高可用_配置文件_26


停止cdh235.macro.com的服务Keepalived,cdh235.macro.com解绑vip,cdh234.macro.com绑定vip


0656-6.2.0-如何配置Haproxy高可用_高可用_27

0656-6.2.0-如何配置Haproxy高可用_高可用_28


2.5

验证Haproxy的高可用


vip绑定在cdh234.macro.com节点上

0656-6.2.0-如何配置Haproxy高可用_负载均衡_29


使用vip:1080/stats访问Haproxy的web界面成功


0656-6.2.0-如何配置Haproxy高可用_配置文件_30


停止cdh234.macro.com节点的Haproxy,vip已没有绑定;vip 绑定到节点cdh235.macro.com


0656-6.2.0-如何配置Haproxy高可用_高可用_31

0656-6.2.0-如何配置Haproxy高可用_配置文件_32


依然可以访问


0656-6.2.0-如何配置Haproxy高可用_高可用_33


举报

相关推荐

0 条评论