咱们曾经介绍了如何在 Kubernetes 和 KubeSphere 上部署 RadonDB MySQL 集群。本文将演示如何在 Rancher[1] 上部署 RadonDB MySQL Kubernetes 2.2.0[2],疾速取得一套 MySQL 容器化集群。
部署筹备
- 已部署 Rancher 集群 [3]
- MySQL 客户端(非必须)
本文中 Rancher 语言环境为中文。
部署步骤
1、增加 Helm 仓库
登录 Rancher 治理控制台后,点击 指标集群 > 利用及利用市场 > Chart 仓库 ,创立一个新的仓库。
自定义仓库名称 mysql-operator,指标可抉择 http(s) 形式,配置索引 URL 为:https://radondb.github.io/rad…
点击 创立 ,返回仓库列表页面。当仓库状态切换为 Active
,示意仓库失常运行。
2、部署 Operator
一个 Rancher 集群仅需部署一次 RadonDB MySQL Operator。点击 利用和利用市场 > Charts,进入 Charts 列表页面。搜寻到 mysql-operator,进入部署 Operator 页面,可抉择 mysql-operator Charts 版本 (省略,默认部署最新版 2.2.0)。
装置
步骤 1:填写名称,勾选在装置前自定义 Helm 选项,点击下一步。
步骤 2:自定义编辑利用 YAML,点击下一步。
步骤 3:确认其余部署选项,点击装置。
装置实现后,跳转到 已装置的利用 治理页面。能够在下方列表中看到利用的状态,资源,存活工夫等。
3、部署 RadonDB MySQL 集群
部署集群能够通过命令或者导入 YAML 的形式(视频中演示的形式)。
通过命令形式
在集群治理页面,点击右上角 Kubectl 命令图标。在命令窗口,输出创立集群命令。
如下示例,部署一个三节点的样例集群。
# Run kubectl commands inside here
# e.g. kubectl get all
$ cat <<EOF | kubectl apply -f-
apiVersion: mysql.radondb.com/v1alpha1
kind: MysqlCluster
metadata:
name: sample
spec:
replicas: 3
EOF
回车执行命令,回显提醒 created 则部署胜利。预期回显信息示例:
mysqlcluster.mysql.radondb.com/sample created
通过导入 YAML 形式
在 Rancher 集群治理页面,点击右上角 YAML 导入图标。在弹出的窗口中,导入批改后的 YAML 文件。
YAML 文件可参考 RadonDB MySQL 集群配置样例 [4]。批改 YAML 文件中配置参数值,请参见配置参数 [5]。
4、部署验证
在集群治理页面,抉择 服务发现 > 服务 ,进入服务列表页面。
找到部署的集群,查看服务状态。状态为 Active
,示意服务失常运行。
点击服务名称,进入服务详情页面,查看 Pod 状态。状态为 Active
,示意 Pod 失常运行。
在正在运行的 Pod 行,点击 Execute Shell,开展 Pod 命令窗口。执行如下命令并输出明码,验证数据库连贯状态。
$ mysql -u root -p
拜访 RadonDB MySQL
- 当客户端与数据库部署在不同 Rancher 集群,请 在 Rancher 中设置 Load Balancer 和 Ingress Controller[6]。
更多拜访形式,请参见 Kubernetes 拜访集群中的应用程序 [7]。
- 当客户端与数据库部署在同一 Rancher 集群内,可抉择应用
service_name
或者clusterIP
形式,拜访 RadonDB MySQL。
阐明:RadonDB MySQL 提供 Leader 服务和 Follower 服务用于别离拜访主从节点。Leader 服务始终指向主节点(读写),Follower 服务始终指向从节点(只读)。
以下为客户端与数据库在同一 Rancher 集群内,拜访 RadonDB MySQL 的形式。
1、service_name 形式
连贯 Leader 服务 (RadonDB MySQL 主节点)
$ mysql -h <leader_service_name>.<namespace> -u <user_name> -p
用户名为 radondb_usr
,release 名为 sample
,RadonDB MySQL 命名空间为 default
,连贯示例如下:
$ mysql -h sample-leader.default -u radondb_usr -p
连贯 Follower 服务 (RadonDB MySQL 从节点)
$ mysql -h <follower_service_name>.<namespace> -u <user_name> -p
用户名为 radondb_usr
,release 名为 sample
,RadonDB MySQL 命名空间为 default
,连贯示例如下:
$ mysql -h sample-follower.default -u radondb_usr -p
2、clusterIP 形式
RadonDB MySQL 的高可用读写 IP 指向 Leader 服务的 clusterIP
,高可用只读 IP 指向 Follower 服务的 clusterIP
。
$ mysql -h <clusterIP> -P <mysql_Port> -u <user_name> -p
以下示例用户名为 radondb_usr
,Leader 服务的 clusterIP 为 10.10.128.136
,连贯示例如下:
$ mysql -h 10.10.128.136 -P 3306 -u radondb_usr -p
视频演示 demo 请至 B 站搜寻【RadonDB】
援用链接
1.Rancher:https://rancher.com
2.RadonDB MySQL Kubernetes 2.2.0:https://github.com/radondb/ra…
3. 疾速搭建:https://rancher.com/docs/ranc…
4.YAML 集群样例:https://github.com/radondb/ra…
5. 配置参数:https://github.com/radondb/ra…
6.Set Up Load Balancer and Ingress Controller within Rancher:https://rancher.com/docs/ranc…
7. 拜访集群中的应用程序:https://kubernetes.io/zh-cn/d…