Kubernetes:healthCheckNodePort如何用于选择准备好的节点进行负载平衡

Kubernetes:healthCheckNodePort如何用于选择准备好的节点进行负载平衡,kubernetes,weave,internal-load-balancer,Kubernetes,Weave,Internal Load Balancer,我试图了解healthCheckNodePort是如何工作的。 API参考说明如下: healthCheckNodePort指定服务的healthcheck nodePort 另一个说: 最重要的是,Kubernetes服务控制器只添加这些节点 进入已准备就绪且可调度的负载平衡器后端配置 但我不清楚kubernetes如何实际使用此端口排除未准备就绪的节点。例如: 1-kubernetes是否使用支持服务的POD的readinessProbe来评估节点的就绪性?如果这些POD没有定义就绪性探测或

我试图了解healthCheckNodePort是如何工作的。 API参考说明如下:

healthCheckNodePort指定服务的healthcheck nodePort

另一个说:

最重要的是,Kubernetes服务控制器只添加这些节点 进入已准备就绪且可调度的负载平衡器后端配置

但我不清楚kubernetes如何实际使用此端口排除未准备就绪的节点。例如:

1-kubernetes是否使用支持服务的POD的readinessProbe来评估节点的就绪性?如果这些POD没有定义就绪性探测或使用非http探测(例如exec action),会发生什么情况

2-是否可以显示支持服务的就绪和可调度节点。我无法在kubectl Descripte svc中找到此类信息

3-我知道healthCheckNodePort仅在服务类型设置为loadBalcer且externalTrafficPolicy设置为local的情况下工作。那么,为什么我可以卷曲不承载支持我的服务的pod的节点并获得有效响应?即使我已经将externalTrafficPolicy设置为local,kubernetes似乎也会将请求重定向到pod

提前感谢您提供的任何提示或重定向到合适的文档


Abdelghani

这是一个非常普遍的问题,许多因素取决于您如何配置您的环境。您是否只使用了
负载平衡器
或“Ingress,第4层或第7层LB”。您能告诉我更多关于第3点的测试是如何运行的吗?是一个请求还是多个请求?你能分享一下你的测试清单吗?另外,您能否详细阐述/重新表述您的第一个和第二个问题?