![](/img/trans.png)
[英]When building a cloud function with retries enabled, how can I implement an incremental back-off?
[英]How do I keep a Kubernetes pod running with no http endpoint? (prevent back-off)
我有一个用例(至少现在)我需要一个 k8s pod 在没有 HTTP 或 TCP 端点的情况下熬夜。 我尝试了以下部署...
apiVersion: apps/v1
kind: Deployment
metadata:
name: node-deployment
labels:
app: node-app
spec:
selector:
matchLabels:
app: node-app
template:
metadata:
labels:
app: node-app
spec:
containers:
- name: node-server
image: node:17-alpine
exec:
command: ["node","-v"]
livenessProbe:
exec:
command: ["node","-v"]
initialDelaySeconds: 5
periodSeconds: 5
readinessProbe:
exec:
command: ["node","-v"]
initialDelaySeconds: 5
periodSeconds: 5
但过了一会儿,它停止了 pod 并出现以下错误......
警告 BackOff 5s (x10 over 73s) kubelet, minikube Back-off 重启失败的容器
吊舱状态显示...
node-deployment-58445f5649-z6lkz 0/1 CrashLoopBackOff 5(103s 前)4m47s
我知道它正在运行,因为我在kubectl logs <node-name>
中看到了版本。 如何让图像保持没有长时间运行的进程? 这甚至可能吗?
容器的进程简单地退出了,如果您在终端中运行node -v
也会发生同样的情况。
不确定您提供的用例是否是您的真实用例(我看不出有任何理由将节点版本作为应用程序),所以..
如果你真的想拥有这个版本,你可以将命令更改为
["watch","-n1","node","-v"]
所以它会每秒打印一次节点版本
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.