繁体   English   中英

Kubernetes MySQL复制-主服务主机查询

[英]Kubernetes MySQL replication - Master service host inquiry

我目前在Kubernetes集群上设置了具有异步复制功能的可工作的MySQL主服务器和从服务器。

我正在尝试计划一个紧急情况,如果主机崩溃了,从机将接走松弛,而其他情况则不会。 我认为第一步是检查Dockerfile和在Dockerfile中定义ENTRYPOINT的脚本。

当我kubectl get svc ,这就是我获得的有关服务的信息。 在此处输入图片说明

这告诉我在群集上,主服务器具有IP 10.0.156.209

现在,当我docker-entrypoint.sh MySQL 奴隶 Docker映像的帮助脚本docker-entrypoint.sh ,我注意到这一行有助于设置主从场景(我将其剪裁以突出显示这一点)

在此处输入图片说明

当我启动到Kubernetes上的slave pod时,环境变量$MYSQL_MASTER_SERVICE_HOST设置为10.0.156.209

在此处输入图片说明

我的问题: MySQL从属容器如何知道使用主服务器的群集IP作为$MYSQL_MASTER_SERVICE_HOST的值? 这是Kubernetes还是SQL?

谢谢 :)

这些环境变量由Kubernetes为每个服务自动创建。 请参阅: https//kubernetes.io/docs/concepts/services-networking/connect-applications-service/#environment-variables

当Pod在节点上运行时,kubelet为每个活动的Service添加一组环境变量。

另外,Kubernetes上的mysql是一个复杂的话题。 您可能不想推出自己的解决方案。 您看过Vitess吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM