如何连接 Kubernetes 中的不同部署?
How to connect different deployments in Kubernetes?
我有两个后端部署,REST 服务器和一个数据库服务器,每个都 运行 在某些特定端口上。 REST 服务器内部调用数据库服务器。
现在如何在我的 REST 服务器部署中引用我的数据库服务器部署,以便它们可以相互通信?
- 将您的部署公开为服务。例如,kubectl 暴露...
- Connect/Allow 这些通过创建网络策略进行通信。
(数据库的)服务对象将为您提供一个虚拟(稳定)IP。根据服务类型,您的其余代码可以通过 clusterIP/externalName/externalIP/DNS.
调用数据库
首先,为您的数据库服务器定义一个服务,它将创建一种负载均衡器(在大多数情况下基于 iptables 的内部 kube 集成)。这样,您就可以通过服务名称或 fqdn 来引用它,例如 mydbsvc.namespace.svc.cluster.local
。这将 return "Cluster IP" 到那个负载均衡器。
那么这只是一个常规应用程序配置的问题,将其指向 mydbsvc
上的数据库,最好是通过环境变量,例如 DB_HOST=mydbsvc 在您的 REST [=18= 中设置] 部署清单(pod 模板环境)
我有两个后端部署,REST 服务器和一个数据库服务器,每个都 运行 在某些特定端口上。 REST 服务器内部调用数据库服务器。
现在如何在我的 REST 服务器部署中引用我的数据库服务器部署,以便它们可以相互通信?
- 将您的部署公开为服务。例如,kubectl 暴露...
- Connect/Allow 这些通过创建网络策略进行通信。
(数据库的)服务对象将为您提供一个虚拟(稳定)IP。根据服务类型,您的其余代码可以通过 clusterIP/externalName/externalIP/DNS.
调用数据库首先,为您的数据库服务器定义一个服务,它将创建一种负载均衡器(在大多数情况下基于 iptables 的内部 kube 集成)。这样,您就可以通过服务名称或 fqdn 来引用它,例如 mydbsvc.namespace.svc.cluster.local
。这将 return "Cluster IP" 到那个负载均衡器。
那么这只是一个常规应用程序配置的问题,将其指向 mydbsvc
上的数据库,最好是通过环境变量,例如 DB_HOST=mydbsvc 在您的 REST [=18= 中设置] 部署清单(pod 模板环境)