我有一个在kubernetes中运行的mysql pod,该服务公开为ClusterIP。当我在kubernetes中grep服务时,我得到
MYSQL_SERVICE_SERVICE_HOST=10.152.183.135
我目前正在将此作为环境变量传递到后端的deployment.yml
文件中,并使用os.getenv()
函数访问它是Python后端。
我可以直接在python中将此主机名称为mysql_host = "{}".format(MYSQL_SERVICE_SERVICE_HOST)
吗,这样就不需要将其作为env变量传递了。谁能帮帮我?
答案 0 :(得分:2)
假设Python也在同一Kubernetes集群中运行。您不需要传递MySQL主机名。您应该能够使用MySQL服务名称从Python Pod访问MySQL服务。
使用以下格式
<mysql-service-name>.<namespace>.svc.cluster.local