首页 > 解决方案 > “cat /tmp/healthy”是配置 Kubernetes 命令探测的唯一方法吗?

问题描述

我试图准确了解 kubernetes 命令探针的工作原理,但文档对此非常枯燥。

我在 kubernetes 命令探针上找到的每个示例都给出了相同类型的代码:

livenessProbe:
    exec:
      command:
      - cat
      - /tmp/healthy

我似乎可以将任何命令传递给 exec 对象。所以我的问题是:

  1. 探针命令的其他好例子是什么?
  2. Kubernetes 将如何确定命令的结果是成功还是失败?

标签: kubernetes

解决方案


您可以将任何命令作为exec探针传递。

容器的健康状况由退出代码决定。如果命令成功,它会返回0,并且kubelet认为 Container 是活着且健康的。任何与退出代码不同的东西0都被认为是不健康的。

一些应用程序提供了用于健康检查的二进制文件/脚本。

例子:

exec当您需要使用预期健康的逻辑定义整个脚本时,使用探针也很有用。


推荐阅读