Kubernetes 部署 MySQL 集群

Kubernetes 部署 MySQL 高可用读写分离

简介: 在有状态应用中,MySQL是我们最常见也是最常用的。本文我们将实战部署一个一组多从的MySQL集群。

一、配置准备

configMap

cat > mysql-configmap.yaml << EOF 
apiVersion: v1
kind: ConfigMap
metadata:
  name: mysql
  labels:
    app: mysql
data:
  master.cnf: |
    # Apply this config only on the master.
    [mysqld]
    log-bin
  slave.cnf: |
    # Apply this config only on slaves.
    [mysqld]
    super-read-only
EOF

configMap可以将配置文件和镜像解耦开。 上面的配置意思是,创建一个master.cnf文件配置内容为:log-bin,即开启bin-log日志,供主节点使用。 创建一个slave.cnf文件配置内容为:super-read-only,设为该节点只读,供备用节点使用。

service

StatefulSet

二、创建所需资源

三、测试主库

进入pod进行操作

创建库、表

插入数据

四、测试备库

连接mysql-1

查看库、表结构

五、测试mysql-read服务

循环中运行 SELECT @@server_id

六、扩缩容

https://www.oiox.cn/ https://www.chenby.cn/ https://cby-chen.github.io/ https://blog.csdn.net/qq_33921750 https://my.oschina.net/u/3981543 https://www.zhihu.com/people/chen-bu-yun-2 https://segmentfault.com/u/hppyvyv6/articles https://juejin.cn/user/3315782802482007 https://cloud.tencent.com/developer/column/93230 https://www.jianshu.com/u/0f894314ae2c https://www.toutiao.com/c/user/token/MS4wLjABAAAAeqOrhjsoRZSj7iBJbjLJyMwYT5D0mLOgCoo4pEmpr4A/

CSDN、GitHub、知乎、开源中国、思否、掘金、简书、腾讯云、今日头条、个人博客、全网可搜《小陈运维》

文章主要发布于微信:《Linux运维交流社区》

最后更新于