Для Kubernetes по умолчанию используется проверка работоспособности http при использовании AWS Балансировщик сетевой нагрузки, когда для externalTrafficPolicy установлено значение Local - PullRequest
1 голос
/ 22 апреля 2020

Я пытаюсь настроить AWS NLB для службы, работающей в кластере Kubernetes, с проверками работоспособности TCP для внутренней службы. Kubernetes всегда стремится создавать проверки работоспособности HTTP для любой службы, когда externalTrafficPolicy имеет значение Local и создает проверки работоспособности TCP, только если установлено значение Cluster

.metadata.annotations.service.beta.kubernetes.io/aws-load-balancer-type: "nlb"
.metadata.annotations.service.beta.kubernetes.io/aws-load-balancer-internal: "true"
.metadata.annotations.service.beta.kubernetes.io/aws-load-balancer-backend-protocol: tcp
.spec.ports.protocol: TCP
.spec.externalTrafficPolicy : **Cluster/Local**

Только когда я переключаю externalTrafficPolicy на Cluster с Local, я могу установить проверки работоспособности TCP для своих целевых групп, в противном случае он имеет тенденцию устанавливать проверку HTTP на / healthz, что не получится для меня.

Я пытаюсь избежать дополнительной балансировки нагрузки через kubeproxy с кластером externalTrafficPolicy, который может создать переход через границы узла.

Есть ли что-то, чего мне не хватает?

...