问题标签 [readinessprobe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
161 浏览

kubernetes - 准备就绪探测失败是否有可能将 pod 标记为不健康?

我们的一个应用程序服务 pod 正在重新启动,最后指定的原因是“错误”,因为 143 错误代码。

之前的容器日志的最后一百行没有显示错误。唯一的错误参考是 pod 描述中的 Readiness 探测条目。然而,根据我在搜索中看到的所有参考资料,就绪探测中的故障应该只会阻止流量路由到 pod 实例。是否存在重复的就绪探测失败会导致 Kubernetes pod 被标记为不健康并重新启动的场景?

吊舱说明

0 投票
1 回答
71 浏览

c# - 如何检查服务总线上的就绪探测?

我有一个 ASP.NET Core 3.1 应用程序在 kubernetes 的 docker 容器上运行。它由两个服务组成,它们通过 Azure 服务总线将数据从一个发送到另一个。很想在服务总线上检查就绪探针?我试图在https://docs.microsoft.com/en-us/dotnet/api/microsoft.servicebus?view=azure-dotnet上找到一个 API,但没有找到任何合适的功能。你用它吗?有必要吗?

0 投票
1 回答
808 浏览

http - 在 TCP 探测和 HTTP 探测之间进行选择以了解 Kubernetes 中的活跃性和就绪性

为了简单起见,我认为最好只检查 kubernetes 中的 TCP 端口的活跃性和准备情况,因为它不需要了解健康检查端点(HTTP 路径),而只需要了解端口号。非常感谢任何关于仅依赖 TCP 端口进行服务健康检查的缺点的指南,请假设 pod 不是其他服务的代理,并且所有业务逻辑都在 pod 本身中。

https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/

0 投票
1 回答
869 浏览

kubernetes - Kubernetes 准备检查应该检查什么

我了解如何在 kubernetes 中设置就绪探针,但是关于调用就绪探针时微服务应实际检查的内容是否有任何最佳实践?两个具体例子:

  1. 一个面向数据库的微服务,如果没有正常运行的数据库连接,几乎所有功能都将不起作用。在这里,我认为 ping 数据库是合理的,如果 ping 失败,则准备检查失败。这是推荐的吗?
  2. 一个使用 N 个其他微服务的微服务,但如果无法连接到任何一个微服务,仍然可以让大部分功能正常工作。在这里,我认为检查与支持服务的连接是不明智的。在这种情况下,假设没有广泛的“启动”或“热身”处理,活跃度和就绪度是等价的。正确的?

谢谢

0 投票
1 回答
1468 浏览

kubernetes - Kubernetes Liveness and Readiness 是否检查 python 是否正在运行?

我有一个简单的问题,但我找不到正确的答案。

我有几个 pod 在 kubernetes 的 python 中运行我的应用程序。我还没有实现 liveness 和 readiness。当我与我的领导交谈时,他告诉我,我必须创建 liveness 和 readiness 以检查并在必要时重新启动我的 pod,我必须找到一种方法来检查 python 是否也在运行,因为它可能会卡住,容器可能会显示一切正常。

我很困惑,因为我的活力和准备会这样做。我必须使用命令创建它,因为这个微服务没有端点或健康检查,因为它们只是工作人员。

我该怎么做的任何线索?或者一个很好的答案可以解释 liveness 和 readiness 检查 python 是否正在运行。

非常感谢!

0 投票
1 回答
540 浏览

kubernetes - 如何快速使 Kubernetes 就绪探测失败?

万一我的集群中的 pod 出现故障,它需要大约 15 秒或更长时间才能通过就绪探测逻辑来确定故障,由于调用失败而不被接受(因为 kubernetes 没有识别出 pod 故障,所以它会将流量发送到失败的pod / 我的意思是失败的 pod 仍在 cluster-P 服务端点中)。

请在此处建议,如何立即使就绪探测失败或如何在失败时立即删除端点,而无需将 periodSeconds 减少到 5 秒以下。

下面是我的配置:

提前致谢。

0 投票
1 回答
485 浏览

kubernetes - istio 异常值检测和就绪探针之间的差异

我是 istio 和 k8s 的新手,最近我一直在探索 istio 异常值检测,我对一些事情有点困惑。如果我错了,请纠正我:

1.异常值检测是基于pods,readiness探针是基于容器吗?但实际上两者都会从“lb”(svc 或子网的连接池)中删除不健康的 pod

2.我能想到的最好的场景是,我们可以配置我们的就绪探测让我们说 30 秒的间隔,但是当异常值检测到 5** 时,异常值检测会将不健康的 pod 从池中取出。

3.异常检测会在 BaseEjectionTime 之后重新添加 pod,我假设情况是这样的,从池中挑选出一个 pod,然后 liveness probe 显示不健康并重新启动容器。在这一切之后,吊舱又恢复了健康并重新添加到池中?

4. 理想情况下,如果就绪探测每秒运行一次且没有误报,这是否与异常值检测一样有效?还是因为它需要与 apiserver 通信,并且可能存在网络延迟和调度程序问题等等等等,所以 istio 更高效?

5.只是好奇他们两个如何在生产中协同工作,有什么最佳实践吗?

任何意见/想法表示赞赏,谢谢大家!

0 投票
1 回答
98 浏览

kubernetes - 如何将用户请求重定向到 Kubernetes 中的另一个部署?

我有以下情况,

我在 Kubernetes 上有两个部署,我的第一个部署由于某些问题需要关闭,用户请求需要路由到第二个部署,然后第一个部署将关闭,一旦第二个部署启动并运行。

我如何将用户请求从第一个路由到第二个?我知道有准备情况和活动​​性检查,但我将如何在脚本中具体指定将请求发送到第二个部署。

根据我有限的知识,我相信可能还有其他一些方法可以将流量从第一次部署重新路由到第二次部署。另外,我的用户请求是从用户发送到 Kubernetes 系统的连续视频图像。

谢谢,非常感谢您的帮助。

0 投票
1 回答
167 浏览

kubernetes - 即使 http url 不正确,Openshift 就绪和活跃度探测也永远不会失败

我在 OpenShift Pod 中运行 Spring Boot 2.0.0 应用程序。为了执行就绪和活跃度探测,我依赖于 spring boot 执行器健康检查。我的应用程序属性文件具有以下属性:

以下是readiness和liveness探针的相关配置。

我的期望是,我的准备和活跃度探测应该会因这些随机 url 而失败,但它们会成功。不知道我在这里缺少什么。请帮助。

0 投票
1 回答
639 浏览

kubernetes - Kubernetes http 探测是否遵循重定向?

根据文档:https ://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/

任何大于或等于 200 且小于 400 的代码都表示成功。任何其他代码都表示失败。

所以如果容器返回301探测,探测应该成功。但我有一个容器,情况并非如此。使用 CURL 我得到301了,但探测失败了503。重定向的目标不可用。

在 Openshift 3.11 中使用以下探针进行了测试: