在为网络负载平衡创建目标池时,有一个health check
选项。
还有一个livenessProbe
在容器规范中命名的属性。
活性探针检查配置它的容器是否仍在运行。如果 liveness 探测失败,kubelet 会杀死容器,容器将受到其重启策略的约束。通过配置 pod 配置的 template.spec.containers.livenessprobe 节来设置活动检查。
容器配置时是否不需要健康检查livenessProbe
?
据我了解,如果容器关闭,POD 将自动重启。在这种情况下,不需要进行健康检查。
NODE 宕机了怎么办?据我了解,kubernetes 将在另一个 NODE 中启动 POD,这意味着 POD 将再次重新启动。
在我看来,无论如何,配置 livenessProbe 时都不需要进行健康检查。
负载均衡器和 Kubernetes 的健康检查是分开的,您可能应该同时拥有这两者。
负载均衡器运行状况检查是为了让负载均衡器知道特定的后端 VM 可以提供流量。它适用于 Compute Engine 虚拟机级别,并将特定虚拟机标记为健康或不健康。因此,如果一个节点出现故障,它将知道不将流量引导到该特定节点。它用于在到达 Kubernetes 集群之前的流量。如果节点出现故障,Kubernetes 运行状况探测将无法帮助您,因为这仅适用于已进入集群的流量。Kubernetes 只能处理它可以看到的流量。
一旦流量进入集群,Kubernetes 就会将流量引导到容器中,一切都是健康的。如果没有健康检查,这将是处于运行状态的容器。即使您的容器可能正在运行,它也可能尚未准备好为流量提供服务。Liveliness/Readiness 探针为 Kubernetes 提供了一种了解容器是否已启动并准备好为流量提供服务的方法。