Skip to content

radondb/radondb-mysql-kubernetes

Folders and files

NameName
Last commit message
Last commit date
Jul 11, 2023
Apr 1, 2024
Aug 30, 2023
Apr 29, 2024
Jan 22, 2025
Nov 4, 2024
Nov 4, 2024
Nov 4, 2024
Oct 11, 2023
Aug 26, 2022
Mar 1, 2024
Jan 22, 2025
Sep 29, 2021
Nov 21, 2024
Jul 13, 2023
Nov 4, 2024
Jul 11, 2023
Oct 18, 2022
Apr 29, 2024
Aug 13, 2024
Aug 13, 2024
Jun 12, 2024
Aug 13, 2024
Jun 12, 2024
Mar 12, 2021
Jun 12, 2024
Jul 11, 2023
Aug 25, 2022
Aug 25, 2022
Aug 13, 2024
Aug 30, 2023
Aug 30, 2023

Repository files navigation

English | 简体中文

banner

Open-source cloud-native database on Kubernetes

A+


What is RadonDB MySQL

RadonDB MySQL is an open-source, cloud-native, and high-availability cluster solution based on MySQL. It adopts the architecture of one leader node and multiple replicas, with management capabilities for security, automatic backups, monitoring and alerting, automatic scaling, and so on.

RadonDB MySQL Kubernetes supports installation, deployment and management of RadonDB MySQL clusters on Kubernetes, KubeSphere and Rancher, and automates tasks involved in running RadonDB MySQL clusters.

Features

🧠 High-availability MySQL: Automatic decentralized leader election, failover within seconds, and strong data consistency in cluster switching

✏️ Cluster management

💻 Monitoring and alerting

✍️ S3 backups and NFS backups

🎈 Log management

👨 Account management

🎨 Others

Architecture

  1. Automatic decentralized leader election by the Raft protocol

  2. Synchronizing data by Semi-Sync replication based on GTID mode

  3. Supporting high-availability through Xenon

banner

Roadmap

Version Features Mode
3.0 Automatic O&M
Multiple node roles
Disaster recovery
SSL transmission encryption
Operator
2.0 Node management
Cluster upgrade
Backup and recovery
Automatic failover
Automatic node rebuilding
Account management (API)
Operator
1.0 Cluster management
Monitoring and alerting
Log management
Account management
Helm

Quick start

👀 This tutorial demonstrates how to deploy a RadonDB MySQL cluster (Operator) on Kubernetes.

Preparation

📦 Prepare a Kubernetes cluster.

Steps

Step 1: Add a Helm repository.

helm repo add radondb https://radondb.github.io/radondb-mysql-kubernetes/

Step 2: Install Operator.

Set the release name to demo and create a Deployment named demo-mysql-operator.

helm install demo radondb/mysql-operator

Notice

This step also creates the CRD required by the cluster.

Step 3: Deploy a RadonDB MySQL Cluster.

Run the following command to create an instance of the mysqlclusters.mysql.radondb.com CRD and thereby create a RadonDB MySQL cluster by using the default parameters. To customize the cluster parameters, see Configuration Parameters.

kubectl apply -f https://github.com/radondb/radondb-mysql-kubernetes/releases/latest/download/mysql_v1alpha1_mysqlcluster.yaml

📖 For more information, see the documentation:

Who are using RadonDB MySQL

License

RadonDB MySQL is based on Apache 2.0 protocol. See License.

Welcome to join us ❤️

😊 Website: https://radondb.com/

😁 Forum: Please join the RadonDB section of kubesphere Developer Forum.

🦉 Community WeChat group: Please add the group assistant radondb to invite you into the group.

For any bugs, questions, or suggestions about RadonDB MySQL, please create an issue on GitHub or feedback on the forum.

Alt