簡體   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