当前位置: 首页 > Linux

K8S实战(7)-有状态应用的MySQL集群

时间:2023-04-06 20:01:50 Linux

前言本节使用StatefulSet控制器部署一个MySQL集群,然后进行宕机测试,观察集群能否恢复正常使用,不丢失数据。实现的集群具有以下特点:是一个主从复制的MySQL集群,有1个master节点,多个slave节点,slave节点可以水平扩展所有写操作,master节点只能进行读操作,更新可以更新在所有节点上执行History20200615-FirstDraft-ZuoChengli原文地址-https://blog.zuolinux.com/2020/06/15/statefulset-mysql-cluster.html所需服务资源所需资源有:一个ConfigMap,两个服务,一个StatefulSetConfigMapkubectlapply-fhttps://k8s.io/examples/application/mysql/mysql-configmap.yamlServicekubectlapply-fhttps://k8s.io/examples/application/mysql/mysql-services.yamlMySQLStatefulSetwgethttps://k8s.io/examples/application/mysql/mysql-statefulset.yaml修改mysql-statefulset.yaml,使用上一节中创建的NFS动态存储卷volumeClaimTemplates:-metadata:name:dataannotations:volume.beta。kubernetes.io/storage-class:managed-nfs-storagespec:accessModes:["ReadWriteOnce"]resources:requests:storage:1Gi创建MySQL有状态应用程序kubectlapplymysql-statefulset.yaml写入数据测试写入数据kubectlrunmysql-client--image=mysql:5.7-i--rm--restart=Never--mysql-hmysql-0.mysql<