iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >高可用 | Xenon:后 MHA 时代的选择
  • 332
分享到

高可用 | Xenon:后 MHA 时代的选择

高可用|Xenon:后MHA时代的选择 2017-12-14 19:12:08 332人浏览 绘本
摘要

开源 Mysql 高可用工具 Xenon 的简介及架构设计原理。 原创:知数堂 | mysql 高可用的选择 在 Mysql(5.5 及以下)传统复制的时代,MHA(Master High Availab

高可用 | Xenon:后 MHA 时代的选择

开源 Mysql 高可用工具 Xenon 的简介及架构设计原理。

原创:知数堂

| mysql 高可用的选择

在 Mysql(5.5 及以下)传统复制的时代,MHA(Master High Availability)在 MySQL 高可用应用中非常成熟。在 MySQL(5.6)及 GTID 时代开启以后,MHA 却没有与新的 MySQL 一起顺应时潮。

MHA 由日本 DeNA 公司 youshimaton 开发,他认为在 GTID 环境下 MHA 存在的价值不大,MHA 最近一次发版是 2018 年。现如今使用 MySQL 已离不开 GTID ,无论是从功能、性能角度,还是从维护角度,GTID 能具备更优异的表现,针对数据业务要求不高场景,常使用 GTID+ROW+Semi-Sync 方案。

MHA 活跃度

基于 MHA 和 GTID 发展现状,为适应 MySQL 版本更新的高可用业务场景,下面介绍一款可替代 MHA 的高可用方案:MySQL + Xenon

| 什么是 Xenon?

Xenon [ˈziːnɒn] (https://GitHub.com/radondb/xenon) 是一款由 RadonDB 开发团队研发并开源的新一代 MySQL 集群高可用工具。基于 Raft 协议进行无中心化选主,实现主从秒级切换;基于 Semi-Sync 机制,保障数据不丢失,实现数据强一致性。并结合 MySQL(5.7 及以上版本)并行复制特性,实现 Binlog 并行回放,大大降低从库延迟。

| Xenon 架构

  • 自动选主

基于 Raft(依赖于 GTID)自动选主,数据一致性依赖于增强半同步 Semi-Sync。

  • 故障自动切换

借助于配置项 leader-start-commandleader-stop-command 调用脚本完成故障切换,也可以结合 Consul,ZooKeeper 自由扩展。

  • Xtrabackup 备份调度集成

| Xenon 工作原理

结合架构图,可看出 Xenon 就是基于 Raft + Semi-Sync + GTID 实现的高可用,保证大多数节点接收到数据。

而 Raft 基于心跳管理,如果从节点超时收不到主的心跳,会尝试发起选举,若得到超过半数(非 IDLE 节点)的选票,则会当选为主节点。

下面以三节点(一主两从)Xenon 集群来简单说明工作原理。

{Leader, [GTID:{1,2,3,4,5}]

{Follower1, [GTID:{1,2,3,4,5}]

{Follower2, [GTID:{1,2,3}]

  1. 当 Leader 不可用时,Follower1 和 Follower2 立即参与竞选成为主节点。
  2. Xenon 校验 GTID 值较高的 Follower 成为新主节点,示例中 GTID 值较高的是 Follower1。
  3. 当 GTID 值最高的 Follower 被选举成为新主时,将结束竞选。示例中 Follower1 成为新主节点后,将会拒绝 Follower2 的选举。
  4. 自动完成主从切换。

| Xenon 企业级核心特性

  • 一主多从架构,确保金融级强一致性

    高可用架构大多采用一主两从的初始节点架构设计,并通过 MySQL 5.7 版本中的 Semi-Sync 特性实现数据的多副本同步复制,多个从节点的设置将极大的屏蔽掉单点故障带来的影响,确保至少一个从节点与主节点始终保持数据的完全一致,提供金融级数据强一致性。

  • 主副本秒级切换,确保业务高可用

    节点之间使用 Raft 协议进行管理,当主节点出现故障不可用时,集群会秒级响应并选出新的主节点(与主节点数据完全同步的从节点),并立即接管读写请求,确保业务的连续高可用。这一过程,无需设置后端集群中各节点的角色,一切由系统自动切换。集群中最多可以添加 6 个从节点,主节点可读可写,从节点设置为只读。同时,集群提供两个 VIP,分别是高可用读 IP 和高可用写 IP。读 IP 可将请求在所有节点之间进行负载分担,提供读取性能的同时,也消除了单点故障的影响,提供业务可靠性。写 IP 则始终指向主节点(Leader)。

  • 系统自动运维优化系统空间使用效率

    通过对 binlog 日志的保留周期 expire_logs_days 的配置(1~4 天),主节点会定期清理不再使用的 binlog 日志,其他从节点已复制完毕,提高系统的空间利用率。

| Xenon 的优势

相比 MHA,Xenon 的优势如下:

  • 多版本内核支持

支持 MySQL 5.6、5.7、8.0 内核版本。

  • 多平台支持

    支持物理机、虚拟机/云平台、容器/ kubernetes 平台部署。

  • 稳定性更好

    MySQL 新版本特性兼容。

  • 性能更佳

    与 GTID、MTS(并行复制) 结合,并行日志复制、并行日志回放。

  • 架构更简单

    不需要管理节点,机器成本更低。

  • 数据更安全

    增强半同步复制不会降级为异步,保证数据零丢失,不会存在 MHA 在 GTID 模式下丢数据的风险。

  • 故障修复全自动

    Xenon 对于故障节点会自动先自我修复。

  • 节点恢复快

    配合 Xtrabackup 等可以实现快速恢复。

  • 操作更简单,维护成本更低

  • 持续更新

    Xenon 由 RadonDB 数据库开发团队持续维护更新。

相关参考

Https://github.com/radondb/xenon/tree/master/docs

https://www.fatalerrors.org/a/separation-of-mha-atlas-for-mysql-high-availability.html

https://github.com/yoshinorim

https://code.Google.com/arcHive/p/mysql-master-ha/

https://dev.mysql.com/doc/refman/5.6/en/replication-gtids-concepts.html

| 预告

下一篇 Xenon 主题文章,搭建一套 Xenon+MySQL 高可用架构集群。

关于 RadonDB

RadonDB 开源社区是一个面向云原生、容器化的数据库开源社区, 为数据库技术爱好者提供围绕主流开源数据库(MySQL、postgresqlRedismongoDB、ClickHouse 等)的技术分享平台,并提供企业级 RadonDB 开源产品及服务。

目前 RadonDB 开源数据库系列产品已被 光大银行、浦发硅谷银行、哈密银行、泰康保险、太平保险、安盛保险、阳光保险、百年人寿、安吉物流、安畅物流、蓝月亮、天财商龙、罗克佳华、升哲科技、无锡汇跑体育、北京电信、江苏交通控股、四川航空、昆明航空、国控生物 等上千家企业及社区用户采用。

RadonDB 可基于云平台与 Kubernetes 容器平台交付,不仅提供覆盖多场景的数据库产品解决方案,而且提供专业的集群管理和自动化运维能力,主要功能特性包括:高可用主从切换、数据强一致性、读写分离、一键安装部署、多维指标监控&告警、弹性扩容&缩容、横向自由扩展、自动备份&恢复、同城多活、异地灾备 等。RadonDB 仅需企业及社区用户专注于业务层逻辑开发,无需关注集群高可用选型、管理和运维等复杂问题,帮助企业及社区用户大幅度提升业务开发与价值创新的效率!

GitHub:

https://github.com/radondb

微信群: 请搜索添加群助手微信号 radondb

您可能感兴趣的文档:

--结束END--

本文标题: 高可用 | Xenon:后 MHA 时代的选择

本文链接: https://www.lsjlt.com/news/8470.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 高可用 | Xenon:后 MHA 时代的选择
    开源 MySQL 高可用工具 Xenon 的简介及架构设计原理。 原创:知数堂 | MySQL 高可用的选择 在 MySQL(5.5 及以下)传统复制的时代,MHA(Master High Availab...
    99+
    2017-12-14
    高可用 | Xenon:后 MHA 时代的选择
  • css后代选择器的使用方法
    本篇内容主要讲解“css后代选择器的使用方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css后代选择器的使用方法”吧!代码如下:<style>....
    99+
    2022-10-19
  • css后代选择器的用法介绍
    这篇文章主要讲解了“css后代选择器的用法介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css后代选择器的用法介绍”吧!说明后代选择器必须用空格隔开。后代不仅仅是儿子, 也包括孙子/重孙...
    99+
    2023-06-20
  • css串联选择器和后代选择器的用法介绍
    本篇内容介绍了“css串联选择器和后代选择器的用法介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!串联选...
    99+
    2022-10-19
  • HTML后代选择器的功能怎么用
    本文小编为大家详细介绍“HTML后代选择器的功能怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“HTML后代选择器的功能怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
    99+
    2022-10-19
  • 租用香港服务器时如何选择可靠的机房
    租用香港服务器时选择可靠机房的方法:1、需要根据自身实际情况选择价格合理的产品,避免被低价格诱惑从而选择到劣质的服务器;2、选择一个拥有可靠硬件的大型计算机房,从而能够有效保障服务器的稳定性;3、选择与专业技术团队合作,确保服务器出现故障时...
    99+
    2022-10-16
  • phpcms v9后台添加文章时选择相关文章可调用其它模型信息的方法
    不过这个解决方法修改了一些文件,你可以根据自己的要求酌情使用。。我在这里也详细说一下解决思路,以便后来人参考学习。 phpcmsV9的相关文章,我们知道只有同模型的文章才可以选择。其他模型的文章是选择不成的,可以通过修改...
    99+
    2022-06-12
    phpcms 后台添加文章 相关文章 模型信息
  • 租用高防服务器的时候如何合理选择防御
    选择香港高防服务器的建议:1.租用香港高防服务器时选择合适业务的防御。2.租用香港高防服务器时选择合适的BGP线路。3. 租用香港高防服务器时选择合适的服务商以及一些资历深的机房比较好。具体分析如下:一、建议选择合适业务的防御很多用户在租用...
    99+
    2022-10-11
  • 阿里云高防服务器租用安全可靠的云服务器选择
    随着互联网的发展,越来越多的企业和个人开始将业务转移到云端。而阿里云作为全球领先的云计算服务提供商,其高防服务器租用服务受到了众多用户的青睐。本文将详细说明阿里云高防服务器租用的特点、优势和适用场景,帮助用户更好地选择和使用阿里云高防服务器...
    99+
    2023-10-31
    服务器 阿里 可靠
  • 魅族为什么用阿里云服务器云计算时代的智慧选择
    魅族作为中国知名手机品牌,一直致力于为用户带来高品质的产品和服务。然而,随着市场竞争的日益激烈,魅族也面临着诸多挑战,如何提高服务质量、降低成本、实现快速响应等成为了魅族需要解决的重要问题。本文将深入探讨魅族为什么选择使用阿里云服务器,以及...
    99+
    2023-10-30
    阿里 什么用 魅族
  • 企业在选择租用高防服务器时应该关注的方面有哪些
    企业在选择租用高防服务器时应该关注的方面:1.确定适合的机房。2.高防服务器带宽选择。3.高防服务器的防御大小。4.高防服务器提供商的技术能力。具体内容如下:一、无论是企业还是个人,在服务器租用的时候,首先是需要了解机房信息。需要清楚的知道...
    99+
    2022-10-21
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作