所以我想在k8s中部署一个主从MySQL集群。我发现了两种似乎很流行的方式:
哪种方法最常用?
此外,在有状态集中,如果我的MySQL主服务器死了,k8s会自动将从服务器提升为主服务器吗?
最后,当我的逻辑后端应用对MySQL集群执行操作(CRUD)时,k8如何知道要路由到哪个Pod,即写操作只能在向所有人发送读操作时才发送给主设备?
答案 0 :(得分:1)
用户可以基于StatefulSets在k8s中部署和维护一组高度可用的MySQL服务,该过程相对复杂。此过程要求用户熟悉各种k8s资源对象,了解许多MySQL操作细节并维护一组复杂的管理脚本。 Kubernetes运营商旨在降低在k8上部署复杂应用程序的门槛。
操作员隐藏了复杂应用程序的业务流程细节,并大大降低了在k8s中使用它们的阈值。如果需要部署其他复杂的应用程序,我们建议您使用操作员。
谈论使用StatefulSet时的主选举。 选择潜在的从站成为主站并不是一个自动过程-您必须使用Xtrabackup手动进行配置-这里是更多信息-setting_up_replication。
看看:cloning-existing-data,starting-replication,mysql-statefulset-operator。
有用的工具:vitess用于更好的MySQL网络管理,percona-xtradb-cluster用于提供卓越的性能,可伸缩性和工具。