专栏首页Hadoop实操0656-6.2.0-如何配置Haproxy高可用

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

两个节点配置Haproxy

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

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

2.2

安装keepalived

两个节点都安装

yum -y install keepalived

添加到开机自启动

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

增加执行权限

chmod +x /etc/keepalived/haproxy_check.sh

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

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

启动Keepalived服务

systemctl start keepalived

vip已绑定成功

cdh235.macro.com节点ping 192.168.0.245

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

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

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

启动Keepalived服务

systemctl start keepalived

vip已绑定成功

cdh234.macro.com节点ping 192.168.0.245

2.4

验证Keepalived服务IP漂移

两个节点同时起Keepalived

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

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

2.5

验证Haproxy的高可用

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

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

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

依然可以访问

本文分享自微信公众号 - Hadoop实操(gh_c4c535955d0f)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-06-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • LVS-4.负载调度

    三种IP负载均衡技术解决了系统的可伸缩性和透明性。如何通过负载调度器将请求高 效地分发到不同的服务器执行,使得由多台独立计算机组成的集群系统成为一台虚拟服务器;...

    悠扬前奏
  • SAP Netweaver的负载均衡消息服务器 vs CloudFoundry的App Router

    起到负载均衡的消息服务器(Message Server)在图中没有得到体现。然后,消息服务器在我们每天用SAPGUI工作中扮演着重要的角色。

    Jerry Wang
  • Nginx配置upstream实现负载均衡

    如今负载均衡初步完毕了。upstream依照轮询(默认)方式进行负载,每一个请求按时间顺序逐一分配到不同的后端服务器。假设后端服务器down掉。能自己主动剔除。...

    程序员小明
  • springboot整合ActiveMQ 2(主备模式,负载均衡)

      单个 MQ 节点总是不可靠的,一旦该节点出现故障,MQ 服务就不可用了,势必会产生较大的损失。这里记录 activeMQ 如何开启主从备份,一旦 maste...

    用户2038589
  • Cloud Foundry Session Affinity(Sticky Session)的实现

    版权声明:本文为博主汪子熙原创文章,未经博主允许不得转载。 https://jerry.blog....

    Jerry Wang
  • SpringBoot应用和PostgreSQL数据库部署到Kubernetes上的一个例子

    版权声明:本文为博主汪子熙原创文章,未经博主允许不得转载。 https://jerry.blog....

    Jerry Wang
  • SpringBoot应用和PostgreSQL数据库部署到Kubernetes上的一个例子

    版权声明:本文为博主汪子熙原创文章,未经博主允许不得转载。 https://jerry.blog....

    Jerry Wang
  • kubernetes 基本技术概述铺垫

    比如,你可能创建了一个"tier"和“app”标签,通过Label(tier=frontend, app=myapp)来标记前端Pod容器,使用Label(ti...

    Devops海洋的渔夫
  • LVS-2.体系结构

    这里介绍LVS集群的通用体系结构,设计原则和相应特点;LVS集群应用于建立可伸缩的Web,Media,Cache和Mail等网络服务。

    悠扬前奏
  • Cloud Foundry Session Affinity(Sticky Session)的实现

    版权声明:本文为博主汪子熙原创文章,未经博主允许不得转载。 https://jerry.blog.csdn.net/article/detai...

    Jerry Wang

扫码关注云+社区

领取腾讯云代金券