Kubernetes HAProxy 2.0.2不是创建';srv';适用于服务中的所有吊舱

Kubernetes HAProxy 2.0.2不是创建';srv';适用于服务中的所有吊舱,kubernetes,haproxy,Kubernetes,Haproxy,我正试图在K8S集群内使用HAProxy实现一些基于cookie的会话粘性。我使用的是2.0.2-alpine图像 在这个环境中,我有10个虚拟web应用程序状态集的pod(都是活动的和就绪的),HAProxy通过以下后端指向它们的服务: backend within_session log global mode http option log-health-checks option httpchk GET /isalive balance roundrobin dy

我正试图在K8S集群内使用HAProxy实现一些基于cookie的会话粘性。我使用的是2.0.2-alpine图像

在这个环境中,我有10个虚拟web应用程序状态集的pod(都是活动的和就绪的),HAProxy通过以下后端指向它们的服务:

backend within_session
  log global
  mode http
  option log-health-checks
  option httpchk GET /isalive
  balance roundrobin
  dynamic-cookie-key XXXXX
  cookie SESSION_COOKIE rewrite nocache dynamic
  option httpclose
  server-template srv 10 _http._tcp.dummywebapplication-service.mynamespace.svc.cluster.local resolvers k8s check
虽然我将“srv”设置为最多10个,并且我有10个吊舱在运行,但HAProxy只创建了4个“srv”

你知道是什么引起的吗

以下是相关的HAProxy日志:

<133>Jul 23 08:09:04 haproxy[7]: within_session/srv1 changed its FQDN from (null) to dummywebapplication-0.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:09:54 haproxy[7]: within_session/srv2 changed its FQDN from (null) to dummywebapplication-1.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:10:24 haproxy[7]: within_session/srv3 changed its FQDN from (null) to dummywebapplication-2.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:11:14 haproxy[7]: within_session/srv4 changed its FQDN from (null) to dummywebapplication-3.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:11:54 haproxy[7]: within_session/srv3 changed its FQDN from (null) to dummywebapplication-4.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:13:14 haproxy[7]: within_session/srv2 changed its FQDN from (null) to dummywebapplication-6.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:14:44 haproxy[7]: within_session/srv2 changed its FQDN from (null) to dummywebapplication-8.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:20:04 haproxy[7]: within_session/srv1 changed its FQDN from (null) to dummywebapplication-6.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:20:04 haproxy[7]: within_session/srv2 changed its FQDN from (null) to dummywebapplication-1.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
<133>Jul 23 08:20:04 haproxy[7]: within_session/srv3 changed its FQDN from (null) to dummywebapplication-5.dummywebapplication-service.mynamespace.svc.cluster.local by 'SRV record'
Jul 23 08:09:04 haproxy[7]:在会话中/srv1通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-0.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:09:54 haproxy[7]:在会话中/srv2通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-1.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:10:24 haproxy[7]:在会话中/srv3通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-2.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:11:14 haproxy[7]:在会话中/srv4通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-3.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:11:54 haproxy[7]:在会话中/srv3通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-4.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:13:14 haproxy[7]:在会话中/srv2通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-6.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:14:44 haproxy[7]:在会话中/srv2通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-8.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:20:04 haproxy[7]:在会话内/srv1通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-6.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:20:04 haproxy[7]:在会话中/srv2通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-1.dummywebapplication-service.mynamespace.svc.cluster.local
Jul 23 08:20:04 haproxy[7]:在会话中/srv3通过“SRV记录”将其FQDN从(null)更改为dummywebapplication-5.dummywebapplication-service.mynamespace.svc.cluster.local

考虑到前4行有srv1-4,之后srv ID被重新使用。

可接受的有效载荷大小8192
添加到“左轮手枪”中解决了该问题。

您使用哪种版本的haproxy?Hi@Aleksandar,HAProxy v2.0.2有趣的是,有一些缺少的数字,如
dummywebapplication-7..
您是否从srv记录中获得所有pod IP?所有吊舱都处于就绪状态吗?使用以下命令,您可以检查所有pod是否有ip
kubectl get ep dummywebapplication服务--namespace=mynamespace
@Aleksandar是的,我得到了完整的podlist@Aleksandar重要的是要说他们都准备好了并且还活着