为有状态集副本地址启用负载平衡和连接管理



对于statefulsets,我想知道是否可以将每个副本放在一个虚拟ip后面,也许可以使用一个服务,这样我们对每个副本主机名的连接和DNS行为就可以与对ClusterIP主机名的连接和DNS行为相同,这与我们对非headless服务的连接和行为相同。

当我们使用复制主机名时,我们似乎失去了虚拟ip提供的负载平衡和连接管理,这给我们的应用程序带来了问题。

您可以通过部署NodeLocal DNS Cache来改进DNS请求。这可能有助于减少平均DNS查找时间。本地DNS缓存可以与kube-DNS-ConfigMAP一起使用,以自动拾取存根域和上游名称服务器。

您可以在现有集群中启用此功能,添加参数为NodeLocalDNS=ENABLED的–更新插件,如下例所示:

gcloud container clusters update CLUSTER_NAME 
--update-addons=NodeLocalDNS=ENABLED

您可以在以下链接中找到有关此功能的更多信息:

此外,为了在使用StatefulSet时设置服务,您可以使用Pod标签,该标签允许您将服务附加到特定的Pod。

此外,您可以部署运行状况检查来检查您的后端是否响应流量。如果后端未响应,则将被标记为不健康,并且流量将由健康的后端处理

最新更新