如何否定要在 Kubernetes livenessProbe 中使用的退出代码状态?
How to negate exit code status to be used in Kubernetes livenessProbe?
如何取消要在 Kubernetes
livenessProbe
中使用的退出代码状态?
我将使用 grep
命令,我想做下面的检查。
- Return 退出值 0,如果
grep
没有命中
- Return 退出值 1,如果
grep
命中
因为正常情况下,如果有命中,grep 会 return 0,我可以取消它吗,如下所示?
!$(cat filet.txt | grep keyword)
是的,你可以试试
示例:
livenessProbe:
exec:
command:
- /bin/bash
- -c
- cat filet.txt | grep keyword
initialDelaySeconds: 10
periodSeconds: 10
如果有帮助你应该结账
-v, --invert-match
Invert the sense of matching, to select non-matching lines.
你也可以试试-c
echo 'Test' | grep -c T
1
echo 'Test' | grep -c N
0
shell 脚本
#!/bin/sh
if [ $(echo 'Test' | grep -c T) ]; then
exit 1
else
exit 0
fi
最简单的方法是编写 shell 脚本并根据需要管理活跃度的退出代码 0 或 1,并根据该活跃度重新启动 pod。
livenessProbe:
exec:
command:
- /bin/sh
- -c
- /home/test/health.sh
如何取消要在 Kubernetes
livenessProbe
中使用的退出代码状态?
我将使用 grep
命令,我想做下面的检查。
- Return 退出值 0,如果
grep
没有命中 - Return 退出值 1,如果
grep
命中
因为正常情况下,如果有命中,grep 会 return 0,我可以取消它吗,如下所示?
!$(cat filet.txt | grep keyword)
是的,你可以试试
示例:
livenessProbe:
exec:
command:
- /bin/bash
- -c
- cat filet.txt | grep keyword
initialDelaySeconds: 10
periodSeconds: 10
如果有帮助你应该结账
-v, --invert-match
Invert the sense of matching, to select non-matching lines.
你也可以试试-c
echo 'Test' | grep -c T
1
echo 'Test' | grep -c N
0
shell 脚本
#!/bin/sh
if [ $(echo 'Test' | grep -c T) ]; then
exit 1
else
exit 0
fi
最简单的方法是编写 shell 脚本并根据需要管理活跃度的退出代码 0 或 1,并根据该活跃度重新启动 pod。
livenessProbe:
exec:
command:
- /bin/sh
- -c
- /home/test/health.sh