程润科
数据库研发工程师,目前从事 RadonDB MySQL Kubernetes 研发,热衷于研究数据库内核、K8s 相关技术。
张莉梅
高级文档工程师,目前负责数据库产品文档开发、维护和管理工作。
本文将演示如何在 KubeSphere[1] 上部署 RadonDB MySQL on Kubernetes 2.1.2,快速实现高可用的 MySQL on K8s。
部署准备
- 确保已启用 OpenPitrix 系统[2]
- 创建一个企业空间、一个项目和一个用户供本操作使用[3]
- 安装过程中,请以 admin 身份登录控制台,在企业空间 demo 中的 demo-project 项目中进行操作
- 确保 KubeSphere 项目网关已开启外网访问[4]
动手实验
1、添加应用仓库
- 输入 radondb-mysql-operator 作为应用仓库名称。
- 输入 https://radondb.github.io/radondb-mysql-kubernetes/ 作为仓库的 URL,并点击验证以验证 URL,在 URL 旁边呈现一个绿色的对号,验证通过后,点击确定继续。
2、部署 RadonDB MySQL Operator
更新 Operator
若已在 KubeSphere 部署过历史版本 Operator,可以选择如下方式更新到最新版本。
参考如上步骤,安装最新版本 Operator 。
执行如下命令更新 CRD 版本。如下示例为更新 CRD 到 2.1.2 版。
kubectl apply -f https://raw.githubusercontent.com/radondb/radondb-mysql-kubernetes/v2.1.2/charts/mysql-operator/crds/mysql.radondb.com_mysqlclusters.yaml
3、部署 RadonDB MySQL 集群
可任选一个 RadonDB MySQL 配置示例[5] 部署,或自定义配置部署。
以 mysql_v1alpha1_mysqlcluster.yaml 模版为例,创建一个 RadonDB MySQL 集群。
kubectl apply -f https://github.com/radondb/radondb-mysql-kubernetes/releases/latest/download/mysql_v1alpha1_mysqlcluster.yaml --namespace=<project_name>
注意
未指定项目时,集群将被默认安装在 kubesphere-controls-system 项目中。若需指定项目,安装命令需添加 --namespace=<project_name>。
预期结果
$ kubectl apply -f https://github.com/radondb/radondb-mysql-kubernetes/releases/latest/download/mysql_v1alpha1_mysqlcluster.yaml --namespace=demo-project
mysqlcluster.mysql.radondb.com/sample created
kubectl get statefulset,svc
预期结果
$ kubectl get statefulset,svc
NAME READY AGE
statefulset.apps/sample-mysql 3/3 10m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/default-http-backend ClusterIP 10.96.69.202 <none> 80/TCP 3h2m
service/sample-follower ClusterIP 10.96.9.162 <none> 3306/TCP 10m
service/sample-leader ClusterIP 10.96.255.188 <none> 3306/TCP 10m
service/sample-mysql ClusterIP None <none> 3306/TCP 10m
部署校验
在 demo-project 项目中,查看 RadonDB MySQL 集群状态。
至此,完成在 KubeSphere 中部署 RadonDB MySQL 集群。
参考引用
[1]:KubeSphere:https://kubesphere.com.cn
[2]:OpenPitrix:https://kubesphere.io/zh/docs/pluggable-components/app-store
[3]:创建操作:https://kubesphere.io/zh/docs/quick-start/create-workspace-and-project
[4]:项目网关:https://kubesphere.io/zh/docs/project-administration/project-gateway
[5]:配置示例:https://github.com/radondb/radondb-mysql-kubernetes/blob/main/config/samples
来源:https://www.cnblogs.com/radondb/p/15935332.html
图文来源于网络,如有侵权请联系删除。