首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >k8s命令健康探针的最佳实践

k8s命令健康探针的最佳实践
EN

Stack Overflow用户
提问于 2020-07-16 03:50:11
回答 1查看 1.5K关注 0票数 0

我有一个员工舱,它订阅一个服务队列。我们需要定义活性探针来监测工人的健康状况。worker pod不公开任何HTTP或TCP端口。因此,我使用命令检查工人的健康状况。就像这样。

代码语言:javascript
复制
  livenessProbe:
  exec:
    command:
    - cat
    - log/healthy-2020-07-16-03.log

每5s,工人荚将输出健康信息到日志文件。日志文件名格式是健康的-YYYY-MM-DD-HH.log。每个日志信息都是这样的:

代码语言:javascript
复制
{"message":"Thu Jul 16 2020 03:23:30 GMT+0000 (Coordinated Universal Time) health","level":"notice","Env":"local","Service":"myservice","timestamp":"2020-07-16T03:23:30.008Z"}

因此,我需要检查日志时间戳和健康消息。

我的问题是:

  1. 我的方法是否遵循k8s健康探针的最佳实践?
  2. k8s支持更强大的命令吗?python脚本或jq。我需要解析JSON并验证时间戳和消息吗?
  3. 对于worker pod,我们不需要定义就绪探测,因为它不与k8s服务或端点绑定,对吗?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-16 04:38:08

我的方法是否遵循k8s健康探针的最佳实践?

k8s支持更强大的命令吗?python脚本或jq。我需要解析JSON并验证时间戳和消息吗?

实际上,exec探测将作为容器中的命令行运行。更多细节这里。因此,运行任何类似于python脚本或jq的操作都取决于您。但是,您必须确保在探测中运行的命令可以在容器中执行。例如,您希望为探测运行python脚本,确保容器已经安装了python,并且脚本也存在于容器中。

对于worker pod,我们不需要定义就绪探测,因为它不与k8s服务或端点绑定,对吗?

这取决于您的用例和您的服务的工作方式。

一篇很好的文章这里解释了就绪性和活性探测。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62927103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档