什么是适用于后台进程的Kubernetes livenessProbe命令?
我们有一个使用SQS队列中的消息的NodeJS进程。由于这是一个后台工作,我们不公开任何HTTP端点,因此活跃性命令似乎是执行活跃性检查的更合适的方法。一个“足够好”的命令设置应该是什么样子的,才能真正检查进程是否处于活动状态并正常运行?NodeJS进程是否应该接触文件以更新其编辑的时间,并通过活动检查来验证这一点?我在网上看到的例子似乎与实际过程脱节,例如他们检查文件是否存在。
发布于 2020-11-16 08:10:05
您可以使用exec命令使用活跃度。
Here就是一个例子:
apiVersion: v1
kind: Pod
metadata:
labels:
test: liveness
name: liveness-exec
spec:
containers:
- name: liveness
image: k8s.gcr.io/busybox
args:
- /bin/sh
- -c
- touch /tmp/healthy; sleep 30; rm -rf /tmp/healthy; sleep 600
livenessProbe:
exec:
command:
- cat
- /tmp/healthy
initialDelaySeconds: 5
periodSeconds: 5要执行探测,kubelet将在目标容器中执行命令
/tmp/。如果命令成功,它将返回0,并且kubelet认为容器是活动的和健康的。如果该命令返回一个非零值,kubelet将终止容器并重新启动它。
https://stackoverflow.com/questions/64851064
复制相似问题