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