吊舱之间的亲和力和反亲和力。确保webapp连接到本地Redis缓存

时间:2019-09-03 19:59:33

标签: kubernetes kubernetes-service

在有关kubernetes的亲和力和反亲和力规则的文档中,有一个web application and a local redis cache周围的实用用例。

  1. redis部署已配置PodAntiAffinity,以确保调度程序不会将副本放置在单个节点上。
  2. Web应用程序部署具有Pod关联性,以确保使用带有标签存储(Redis)的Pod调度应用程序。

要从Web应用程序连接到Redis,我们必须定义一个服务。

问题:我们如何确定Web应用程序将始终使用位于同一节点而不是另一个节点上的Redis?如果我从Kubernetes v1.2中阅读了version compatibility,那么kube-proxy的 iptables模式就会成为默认

在阅读有关iptable mode for kube-proxy的文档时,它默认为 ,iptables模式下的kube-proxy 随机选择后端

所以我对这个问题的回答是: 不,我们不确定。如果您想确保将redis和webapp放在一个pod中?

1 个答案:

答案 0 :(得分:1)

这可以在(redis)服务中配置,但通常不建议这样做:

  

spec.externalTrafficPolicy设置为值Local只会将请求代理到本地端点,而不会将流量转发到其他节点

这是一个复杂的主题,请在此处阅读更多内容: