我正在将Traefik 2.1与kubernetes CRD一起使用。我的设置与user guide非常相似。在我的应用程序中,我在部署上定义了livenessProbe和readinessProbe。我以为traefik会将请求路由到kubernetes负载均衡器,而kubernetes会知道pod是否准备就绪。如果livenessProbe失败,Kubernetes也将重新启动容器。 kubernetes CRD是否有默认的healthCheck? Traefik是使用kubernetes服务提供的负载平衡器,还是获得服务下方Pod的IP并直接路由到它们?是否建议对Traefik CRD一起使用healthCheck?有没有一种方法不必为readinessProbe和Traefik CRD healthCheck重复配置?谢谢
答案 0 :(得分:2)
是否有针对Kubernetes CRD的默认运行状况检查?
否
Traefik是否使用kubernetes服务提供的负载平衡器, 还是在服务和路线下方获得了Pod的IP 直接给他们?
不。它直接从端点对象获取IP
有没有一种方法不必为readinessProbe重复配置 和Traefik CRD healthCheck吗?
Traefik会在活动性/就绪性探针失败时看到终结点对象没有IP的情况下将更新其配置。因此,您可以在Pod上配置就绪性和活动性探针,并期望traefik能够做到这一点。
有没有一种方法不必为readinessProbe重复配置 和Traefik CRD healthCheck
使用CRD方法的好处是其本质上是动态的。即使您将CRD与CRD提供的运行状况检查机制一起使用,对于kubernetes重启Pod并不会从使用与之相对应的kubernetes服务的其他Pod发送流量到Pod来说,仍然需要Pod的活动性和冗余性探针那些豆荚。