news 2026/4/3 7:37:44

【MyCat】第6章----HA 机制的 Mycat 高可用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【MyCat】第6章----HA 机制的 Mycat 高可用

文章目录

  • 6.1 高可用方案
  • 6.2 安装配置 HAProxy
    • 1、 安装 HAProxy
    • 2、 启动验证
  • 6.3 配置 Keepalived
    • 1、 安装 Keepalived
    • 2、 启动验证
  • 6.4 测试高可用
    • 1、 测试步骤

在实际项目中,Mycat 服务也需要考虑高可用性,如果 Mycat 所在服务器出现宕机,或 Mycat 服务故障,需要有备机提供服务,需要考虑 Mycat 集群

6.1 高可用方案

我们可以使用 HAProxy + Keepalived 配合两台 Mycat 搭起 Mycat 集群,实现高可用性。HAProxy实现了 MyCat 多节点的集群高可用和负载均衡,而 HAProxy 自身的高可用则可以通过 Keepalived 来实现

6.2 安装配置 HAProxy

1、 安装 HAProxy

#1准备好HAProxy安装包,传到/opt目录下 #2解压到/usr/local/src tar-zxvf haproxy-1.5.18.tar.gz-C/usr/local/src #3进入解压后的目录,查看内核版本,进行编译 cd/usr/local/src/haproxy-1.5.18uname-r make TARGET=linux310 PREFIX=/usr/local/haproxy ARCH=x86_64 # ARGET=linux310,内核版本,使用uname-r查看内核,如:3.10.0-514.el7,此时该参数就为linux310; #ARCH=x86_64,系统位数; #PREFIX=/usr/local/haprpxy #/usr/local/haprpxy,为haprpxy安装路径。 #4编译完成后,进行安装 make install PREFIX=/usr/local/haproxy #5安装完成后,创建目录、创建HAProxy配置文件 mkdir-p/usr/data/haproxy/vim/usr/local/haproxy/haproxy.conf #6向配置文件中插入以下配置信息,并保存 global log127.0.0.1local0 #log127.0.0.1local1 notice #log loghost local0 info maxconn4096chroot/usr/local/haproxy pidfile/usr/data/haproxy/haproxy.pid uid99gid99daemon #debug #quiet defaults log global mode tcp option abortonclose option redispatch retries3maxconn2000timeout connect5000timeout client50000timeout server50000listen proxy_status bind:48066mode tcp balance roundrobin server mycat_1192.168.140.128:8066check inter10s server mycat_2192.168.140.127:8066check inter10s frontend admin_stats bind:7777mode http stats enable option httplog maxconn10stats refresh30sstats uri/admin stats auth admin:123123stats hide-version stats adminifTRUE

2、 启动验证

#1启动HAProxy/usr/local/haproxy/sbin/haproxy-f/usr/local/haproxy/haproxy.conf #2查看HAProxy进程 ps-ef|grep haproxy #3打开浏览器访问 http://192.168.140.125:7777/admin #在弹出框输入用户名:admin密码:123123#如果Mycat主备机均已启动,则可以看到如下图

#4验证负载均衡,通过HAProxy访问Mycatmysql-umycat-p123456-h192.168.140.126-P48066

6.3 配置 Keepalived

1、 安装 Keepalived

#1准备好Keepalived安装包,传到/opt目录下 #2解压到/usr/local/src tar-zxvf keepalived-1.4.2.tar.gz-C/usr/local/src #3安装依赖插件 yum install-y gcc openssl-devel popt-devel #3进入解压后的目录,进行配置,进行编译 cd/usr/local/src/keepalived-1.4.2./configure--prefix=/usr/local/keepalived #4进行编译,完成后进行安装 make&&make install #5运行前配置 cp/usr/local/src/keepalived-1.4.2/keepalived/etc/init.d/keepalived/etc/init.d/mkdir/etc/keepalived cp/usr/local/keepalived/etc/keepalived/keepalived.conf/etc/keepalived/cp/usr/local/src/keepalived-1.4.2/keepalived/etc/sysconfig/keepalived/etc/sysconfig/cp/usr/local/keepalived/sbin/keepalived/usr/sbin/#6修改配置文件 vim/etc/keepalived/keepalived.conf
#修改内容如下!ConfigurationFileforkeepalived global_defs{notification_email{xlcocoon@foxmail.com}notification_email_from keepalived@showjoy.comsmtp_server127.0.0.1smtp_connect_timeout30router_id LVS_DEVEL vrrp_skip_check_adv_addr vrrp_garp_interval0vrrp_gna_interval0}vrrp_instance VI_1{#主机配MASTER,备机配BACKUP state MASTER #所在机器网卡interfaceens33 virtual_router_id51#数值越大优先级越高 priority100advert_int1authentication{auth_type PASS auth_pass1111}virtual_ipaddress{#虚拟IP192.168.140.200}}virtual_server192.168.140.20048066{delay_loop6lb_algo rr lb_kind NAT persistence_timeout50protocol TCP real_server192.168.140.12548066{weight1TCP_CHECK{connect_timeout3retry3delay_before_retry3}}real_server192.168.140.12648600{weight1TCP_CHECK{connect_timeout3nb_get_retry3delay_before_retry3}}}

2、 启动验证

#1启动Keepalivedservice keepalived start #2登录验证 mysql-umycat-p123456-h192.168.140.200-P48066

6.4 测试高可用

1、 测试步骤

#1关闭mycat #2通过虚拟ip查询数据 mysql-umycat-p123456-h192.168.140.200-P48066

如果文章对你有一点点帮助,欢迎【点赞、留言、+ 关注】
您的关注是我创作的动力!若有疑问/交流/需求,欢迎留言/私聊!
多一个朋友多一条路!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/29 18:32:28

考研C语言专题练习

考研C语言专题练习 引言 这篇文章的本质是我学完考研C语言之后做的针对所学内容的练习题目 题目一:挂盐水 题目链接:http://oj.lgwenda.com/problem/1014 这是我的想法,得分50,我的问题在于代码逻辑完全误解了题目描述的滴水和停顿…

作者头像 李华
网站建设 2026/4/1 4:15:07

人群仿真软件:Vadere_(8).输出与分析

输出与分析 在人群仿真软件中,输出与分析是验证仿真结果的重要环节。通过合理的输出配置和数据分析,可以深入了解仿真过程中人群的行为模式、运动特征以及潜在的安全问题。本节将详细介绍如何配置输出、分析数据以及使用Vadere提供的工具进行结果可视化…

作者头像 李华
网站建设 2026/3/28 8:30:56

ssl免费证书与收费证书有什么区别

SSL免费证书与收费证书核心区别SSL免费与收费证书核心差异在安全等级、售后保障及企业适配性,均能实现网站HTTPS加密,但适用场景截然不同。免费证书多为DV型,仅验证域名归属,10分钟内快速签发,成本零门槛,适…

作者头像 李华
网站建设 2026/4/3 2:21:08

7个 Golang 官方文档没细说的高效技巧

Go 的语法确实简单,但要在生产环境写出高性能代码,光靠语法糖是不够的。但很多时候,写出能跑的代码只是及格线,写出高性能、内存友好且易于维护的代码才是真正的门槛。 为了省心,我最近把本地环境换成了 ServBay。它最…

作者头像 李华
网站建设 2026/4/1 23:14:56

Java毕设选题推荐:基于springboot的机器人家居健康预警系统基于SpringBoot与Vue的机器人健康预警系统设计与实现【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/3/31 4:30:09

游戏动漫创意团队协作实录:有度知识库如何激活IP资产

游戏动漫创意团队协作实录:有度知识库如何激活IP资产 游戏设计与动漫制作,是数字创意产业的两大核心驱动力。从概念的萌芽到IP的繁荣,再到最终在游戏研发与动漫制作过程中,团队经常需要处理海量的设计资产与复杂的协作流程。从策…

作者头像 李华