1 Star 0 Fork 0

liboshuai01/k8s-stack

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

前提准备

修改.env文件中配置的变量为自定义内容,如安装的命名空间、helm实例名称、char版本号等(可选)。

安装应用

bash install.sh

验证应用

初步验证

bash status.sh

进阶验证

1. 获取root用户密码

MYSQL_ROOT_PASSWORD=$(kubectl get secret --namespace mysql my-mysql-replication -o jsonpath="{.data.mysql-root-password}" | base64 -d)

2. 启动MySQL客户端Pod

kubectl run my-mysql-replication-client --rm --tty -i --restart='Never' --image  docker.io/bitnami/mysql:8.0.37-debian-12-r2 --namespace mysql --env MYSQL_ROOT_PASSWORD=$MYSQL_ROOT_PASSWORD --command -- bash

3. 连接MySQL主节点

mysql -h my-mysql-replication-primary.mysql.svc.cluster.local -uroot -p"$MYSQL_ROOT_PASSWORD"

4. 连接MySQL从节点

mysql -h my-mysql-replication-secondary.mysql.svc.cluster.local -uroot -p"$MYSQL_ROOT_PASSWORD"

5. k8s 内部访问 MySQL 实例

# <service>.<namespace>.svc.cluster.local:3306
- 主节点:my-mysql-replication-primary.mysql.svc.cluster.local:3306
- 从节点:my-mysql-replication-secondary.mysql.svc.cluster.local:3306

监控验证

1. 访问prometheus/targets页面,查看mysql-exporter是否正常 scrape metrics

2. 访问grafana并导入面板14057,查看mysql-exporter的dashboard是否正常显示。

更新应用

修改.envinstall.sh文件中的内容,后重新执行install.sh脚本即可。

卸载应用

1. 执行卸载脚本

bash uninstall.sh

2. (可选)删除pvc

# 加载变量
source .env

# 查看pvc
kubectl get pvc -n ${NAMESPACE}

# 删除pvc(可能有多个pvc要删除)
kubectl delete pvc [pvc名称] -n ${NAMESPACE}

更详细的教程请查看:K8s采用Helm部署mysql-replication

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/liboshuai01/k8s-stack.git
git@gitee.com:liboshuai01/k8s-stack.git
liboshuai01
k8s-stack
k8s-stack
master

搜索帮助