English | 简体中文
Open-source cloud-native database on Kubernetes
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
-
Automatic decentralized leader election by the Raft protocol
-
Synchronizing data by Semi-Sync replication based on GTID mode
-
Supporting high-availability through Xenon
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:
- Deploy RadonDB MySQL on Kubernetes
- Deploy RadonDB MySQL on KubeSphere
- Deploy RadonDB MySQL on Rancher
- All documents
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.