本文作者:丁辉
部署 Mysql 主从
创建命名空间
1 | kubectl create ns mysql |
主节点配置
- 编辑 mysql 配置文件
1 | vi my.cnf |
1 | [mysqld] |
1 | kubectl create configmap mysql-master-conf --from-file=./my.cnf -n mysql |
- 编辑 Yaml
1 | vi mysql-master.yaml |
1 | apiVersion: apps/v1 |
1 | kubectl apply -f mysql-master.yaml |
从节点配置
- 编辑 mysql 配置文件
1 | vi my.cnf |
1 | [mysqld] |
1 | kubectl create configmap mysql-slave-conf --from-file=./my.cnf -n mysql |
- 编辑 Yaml
1 | vi mysql-slave.yaml |
1 | apiVersion: apps/v1 |
1 | vi mysql-slave.yaml |
配置主从同步
- 登录主节点
1 | kubectl exec -it mysql-master-0 -n mysql bash |
- 登录数据库
1 | mysql -u root -ppassword |
- 配置
1 | CREATE USER 'slave'@'%' IDENTIFIED WITH mysql_native_password BY 'slave'; |
- 登录从节点
1 | kubectl exec -it mysql-slave-0 -n mysql bash |
- 登录数据库
1 | mysql -u root -ppassword |
- 配置
1 | CHANGE MASTER TO |
- 开启主从同步
1 | start slave; |
- 查看同步状态
1 | show slave status\G; |
查看到这两个参数为 Yes 则代表配置成功
- Slave_IO_Running: Yes
- Slave_SQL_Running: Yes
- 登录主节点,创建数据库
1 | create database console; |
从节点查看仓库是否已同步