问题标签 [livenessprobe]

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 投票
1 回答
355 浏览

shell - 为 Redis 实例定制的 liveness probe

我需要更改我们的 Redis 实例的活性探针,并使其失败,以防它无法返回键(由于过载)。目前,我们只是检查它是否接受 TCP 连接。

我能想到的一种解决方案是从 exec 命令中设置和获取密钥。但我不知道该怎么做。命令可能是这样的:

如果命令集失败或花费太多时间,则 liveness 应该失败。

实现这一点的最佳方法是什么?

0 投票
2 回答
322 浏览

kubernetes - Redis 的不正确活性探测未失败

我已经为我的 Redis 实例配置了一个活动探针,以确保 Redis 能够检索密钥,以便能够将其称为“活动”。

_liveness.tpl

进行更改后,吊舱可以启动。但是,我想确保探针按预期工作。为此,我只是在 get 命令之前添加了一个删除命令。

当我直接在命令提示符中执行此命令时,我得到了预期的退出代码。

但问题是我的 pod 仍然能够启动。

我使用的 liveness probe 命令可以吗?如果是这样,我该如何验证?

0 投票
2 回答
286 浏览

kubernetes - 基于 Kubernetes 命令的活性探针

如官方文档中所述,我有一个文件,/tmp/healthy并且 YAML 可用

但在我的情况下,文件总是在这里,它将包含成功或失败之类的消息

有可能livenessProbe:command对这些消息采取行动吗?

0 投票
1 回答
275 浏览

python - Kubernetes 中是否有一个活性探针可以在 python 容器冻结时捕获?

我有一个运行无限循环的python程序,但是,每隔一段时间,代码就会冻结。不会引发任何错误或任何其他会提醒我出现问题的消息。我想知道 Kubernetes 是否有任何活性探针可以帮助捕获代码何时冻结,以便它可以杀死并重新启动该容器。

我有一个想法,让 python 代码在每次完成循环时生成一个定期日志。这样,我可以让活性探针每隔 30 秒左右检查一次日志文件,以查看文件是否已更新。如果在分配的时间之后文件还没有更新,则假定程序冻结并且容器被杀死并重新启动。

我目前正在使用以下 python 代码进行测试:

如果有人能告诉我如何实现这个日志想法,或者如果有更好的方法来做到这一点,我将不胜感激!我目前正在 Docker-Desktop 上为 Windows 10 使用 Kubernetes,如果这有所作为的话。此外,我对此还很陌生,所以如果你能将你的答案保持在“Kubernetes for dummy”级别,我将不胜感激。

0 投票
0 回答
858 浏览

spring-boot - 就绪探针发出停止服务错误

我已将 spring boot 更新为2.5.2from 2.1.8.RELEASE。在此之前,liveness 和 readiness 探测很好。现在更新 spring boot 后,我​​更新了我的应用程序属性文件:

我已分别为某些文档添加了最后 4 行。

在本地启动项目并从浏览器检查后:

http://localhost:8090/actuator/health/liveness{"status":"UP"}

http://localhost:8090/actuator/health/readiness给出{"status":"OUT_OF_SERVICE"}的是503状态。

在我的依赖项下的pom文件中:

0 投票
1 回答
47 浏览

kubernetes - k8s什么时候重试liveness probe?

我试图了解活动探测的重试行为,从文档中不清楚。

我将举例说明。考虑以下活动探测规范

让我们假设服务已关闭

预期哪种行为?

或者

0 投票
0 回答
25 浏览

kubernetes - 如何为 /health 创建一个新的接受者线程池

我想使用 /health 进行活跃度和就绪度探测。我想为 dropwizard 应用程序中的连接创建一个不同的线程池。

另外,我想了解如果我使用管理端口而不是 /health 的服务端口,行为会如何。

0 投票
1 回答
98 浏览

python - 将活性探针添加到 Rest API

我有一个休息 API(基于 Python)。底层逻辑调用刷新某些物化视图的 Oracle 过程。该应用程序托管在 Openshift 容器平台上。现在有时应用程序会卡在这一步(刷新物化视图)。如果应用程序在此步骤停留一段时间(例如 2 小时),是否有办法在此处添加活性探针以重新启动容器。

0 投票
1 回答
235 浏览

linux - 如何否定要在 Kubernetes livenessProbe 中使用的退出代码状态?

如何否定要使用的退出代码状态Kubernetes livenessProbe

我将使用该grep命令,我想在下面做一个检查。

  • 返回退出值 0,如果grep没有命中
  • grep如果命中则返回退出值 1

由于通常情况下,如果有命中,grep 将返回 0,我可以否定这个,如下所示?

0 投票
0 回答
60 浏览

python - openshift liveness probe 检测长时间运行的进程

我有一个 python 数据加载服务。该服务中的步骤之一是刷新多个 Oracle 物化视图。我们注意到该服务经常卡在这一步,并且在重新启动(pod)后问题得到解决。我想在这里配置一个基于命令的 openshift liveness probe。目的是检测服务是否在此步骤停留超过 x 小时,如果是,则探测失败并重新启动 Pod。该服务没有 http 访问权限。

我们在这里运行的脚本中使用了大量的日志记录。有没有办法轮询 openshift 部署日志(最新的)并查找某些消息。

例子:

msg1 标志着潜在问题步骤的开始。我打算编写一个轮询日志并查找 msg2 的命令(因为它标志着完成,退出状态为 0),如果超过 5 小时没有找到 msg2,它必须返回非零退出状态,导致探测失败。

我该如何实施?这是最好的方法吗?