RadonDB MySQL on Kubernetes 于 2 月 17 日发布了新版本 2.1.2 。该版本在节点的重建、增删等方面进行了全面升级。

致谢:

首先感谢 @andyli029 @acekingke @runkecheng @molliezhang 提交的修改。

什么是 RadonDB MySQL?

RadonDB MySQL 是一款基于 MySQL 的开源、高可用、云原生集群解决方案。支持一主多从高可用架构,并具备安全、自动备份、监控告警、自动扩容等全套管理功能。目前已经在生产环境中大规模的使用,用户包含 银行、保险、传统大企业等。服务高可用由已经开源的 MySQL 集群高可用组建 Xenon 来实现。

随着国内外云原生技术蓬勃发展,数据库容器化实现技术趋于成熟,各大 K8s 社区用户对 MySQL on K8s 高可用的需求呼声不断。社区决定将 RadonDB MySQL 完整的移植到 K8s 平台,并于 2021 年将其正式开源。项目意在为广大的 K8s 和 MySQL 开发者们,提供一款企业级的 MySQL on K8s 高可用方案

RadonDB MySQL Kubernetes 支持在 Kubernetes、KubeSphere、Rancher 等平台安装部署和管理,自动执行与运行 RadonDB MySQL 集群有关的任务。

RoadMap

  1. 支持更多方式的数据库备份恢复
  2. 支持更细粒度的配置更新
  3. 支持 MySQL 8.0
  4. 抽象完善外部调用 API
  5. 进一步提升服务质量,减少特殊场景下启停时间
  6. 完善周期调度 job 功能更高效支持重复工作
  7. StatefulSet 完善为 Multi StatefulSet
  8. 支持在线迁移
  9. 完善 e2e 测试框架,覆盖更多场景

项目地址

新版本功能一览

  1. 支持从已有节点克隆数据初始化
  2. 支持重建节点
  3. 支持显示节点 Raft 状态
  4. 增删节点不再触发滚动更新
  5. 支持一键配置镜像地址前缀
  6. 增加多平台部署文档
  7. 支持 e2e 测试框架

以下是完整 2.1.2 和 2.1.1 版本的 Release Notes。

2.1.2 Release Notes

Features

  • Clone init from follower node. #322
  • Support for manual repair invalid nodes. #331
  • Add E2E framework and simple testcase. #347
  • Support more node role labels. #334
  • Support unified setting images repository address. #378
  • Add tutorials of deploy radondb mysql on rancher. #338
  • Add tutorials of deploy radondb mysql on kubesphere. #152

Improvements

  • Upgrade E2E frame to Ginkgo v2. #360
  • Update the description about access radondb mysql. #340
  • Change the default path of the rbac proxy image. #146
  • Make the versions provided by helm repo and release consistent. #352
  • Add .gitignore about e2e logs and function. #381

Bug fixes

  • Fixed the cluster status cannot be changed after the POD exit abnormally. #366
  • Fixed the container time zone is not consistent with the host time zone . #329

2.1.1 Release Notes

Features

  • Support clone initial when add new pod. #250#291
  • Update replicas without restart. #282
  • Support display the raft status of the node in nodes.conditions. #284#285
  • charts: Support offline deployment. #300#301
  • workflow: Manage Chart using Helm repo. #290#294
  • workflow: Automatic code check and unit tests. #277
  • Makefile: Synchronize the generated files to Chart while generating CRD. #280

Improvements

  • syncer: Make Nodes.Conditions only show the condition of the presence node. #283#286
  • syncer: Keep PVC when closing the cluster. #304#308
  • syncer: Optimize update POD trigger conditions. #321
  • sidecar: Rewrite restore logic using golang. #292#293
  • container: Optimize the directive of Mysql liveness check. #305#318
  • Dockerfile: Provide backup of district/static:nonroot image. #287#296
  • docs: Update deployment document. #298

Bug fixes

  • Fix the setting method of innodb_buffer_pool_instance. #244#265
  • Fix bug of not effective version of mysql56. #203#217
  • Fix failed to restore from backup after extending pvc. #370#291
  • syncer: Fix bug of parallel updated nodes. #310#314
  • syncer: Fix operator restart when closing cluster. #312#315
  • container: Fix pod exception restart when high pressure. #305#318
  • docs: Fix check CRD about mysqluser. #281

欢迎大家下载体验!

参考及下载链接:

  1. Release Notes: https://github.com/radondb/radondb-mysql-kubernetes/releases
  2. RoadMap: https://github.com/radondb/radondb-mysql-kubernetes/readme.md

RadonDB MySQL on K8s 2.1.2 发布!的更多相关文章

  1. 容器化 | 在 K8s 上部署 RadonDB MySQL Operator 和集群

    作者:程润科 数据库研发工程师 编辑:张莉梅 高级文档工程师 视频:钱芬 高级测试工程师 本文将演示在 Kubernetes 上部署 RadonDB MySQL Kubernetes 2.X(Oper ...

  2. 通过搭建MySQL掌握k8s(Kubernetes)重要概念(上):网络与持久卷

    上一篇"通过实例快速掌握k8s(Kubernetes)核心概念"讲解了k8s的核心概念,有了核心概念整个骨架就完整了,应付无状态程序已经够了,但还不够丰满.应用程序分成两种,无状态 ...

  3. 通过搭建MySQL掌握k8s(Kubernetes)重要概念(下):参数配置

    本文通过搭建MySQL环境来了解k8s的重要概念,包括持久卷,网络和参数配置.这是下篇,专门讲解参数配置.如果你有些地方不能完全看明白,请先看上篇"通过搭建MySQL掌握k8s(Kubern ...

  4. k8s:py项目发布完整流程

    k8s:py项目发布流程 1. 编写Dockerfile # cat Dockerfile FROM python:3.6-slim USER root RUN apt-get update & ...

  5. 详解k8s零停机滚动发布微服务 - kubernetes

    1.前言 在当下微服务架构盛行的时代,用户希望应用程序时时刻刻都是可用,为了满足不断变化的新业务,需要不断升级更新应用程序,有时可能需要频繁的发布版本.实现"零停机"." ...

  6. Linux 服务器 MySql的安装和网站的发布

    Linux安装MySql,并配置能通过自己的电脑连接服务器的数据库 昨天安装的MySql,今天上午配置MySql能使用本机连接服务器数据库,服务器时DigitalOcean的,提供了很全面很专业的文档 ...

  7. 云原生生态周报 Vol.9| K8s v1.15 版本发布

    本周作者 | 衷源.心贵 业界要闻 1.Kubernetes Release v1.15 版本发布,新版本的两个主题是持续性改进和可扩展性.(https://github.com/kubernetes ...

  8. mysql 5.6.33发布

    2016-09-06,mysql 5.6.33社区版发布,修复的bug越发减少,而且基本上都是较少使用的特性.

  9. 基于 K8s 做应用发布的工具那么多, 阿里为啥选择灰姑娘般的 Tekton ?

    作者 | 邓洪超,阿里云容器平台工程师, Kubernetes Operator 第二人,云原生应用标准交付与管理领域知名技术专家   导读:近年来,越来越多专门给 Kubernetes 做应用发布的 ...

随机推荐

  1. PAT 乙级 1002. 写出这个数 (20)(C语言描述)

    读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10100. 输出格式:在一行内输出n的各位数字之和的每 ...

  2. 面渣逆袭:Java并发六十问,快来看看你会多少道!

    大家好,我是老三,面渣逆袭 继续,这节我们来盘一盘另一个面试必问知识点--Java并发. 这篇文章有点长,四万字,图文详解六十道Java并发面试题.人已经肝麻了,大家可以点赞.收藏慢慢看!扶我起来,我 ...

  3. css中两种居中方式text-align:center和margin:0 auto 的使用场景

    关于使用text-align:center和margin:0 auto 两种居中方式的比较 前言:最近由于要学习后端,需要提前学习一部分前端知识,补了补css知识,发现狂神在讲这一部分讲的不是特别清楚 ...

  4. Python SQL execute加参数的原理

    在Python中,当用pymysql库,或者MySQLdb库进行数据库查询时,为了防止sql注入,可以在execute的时候,把参数单独带进去,例如: def execute_v1(): config ...

  5. golang中的goroutine

    1. 概念 go中可以并发执行的活动单元称为goroutine当一个go程序启动时,一个执行main function的goroutine会被创建,称为main goroutinego func() ...

  6. java ++ -- 异或 短路与 短路或 三目条件

    public class Demo { public static void main(String[] args) { int i1 = 12, i2 = 20; int i = (i2++); S ...

  7. Error:(3, 21) java: 程序包javax.servlet不存在的解决方法

    采用 https://blog.csdn.net/GK666_/article/details/106442929得到解决

  8. 在js中如何区分深拷贝与浅拷贝?

    一.自我理解 简单来讲就是:深拷贝层层拷贝,浅拷贝只拷贝第一层. 在深拷贝中,新对象中的更改不会影响原对象,而在浅拷贝中,新对象中的更改,原对象中也会跟着改. 在深拷贝中,原对象与新对象不共享相同的属 ...

  9. Vue3.2中的setup语法糖,保证你看的明明白白!

    vue3.2 到底更新了什么? 根据原文内容的更新的内容主要有以下 5 块: 1.SSR:服务端渲染优化.@vue/server-renderer包加了一个ES模块创建, 与Node.js解耦,使在非 ...

  10. python 小兵(2)

    while 条件: 结构体 if=条件: 等于 while 条件: 结构体 else: print(int(Ture))    1 print(int(False))   0 切片顾头不顾尾 prin ...