一、命令测试
ls /data;
if [ $? -eq 0 ]; then
echo "succeed"
else
echo "failed"
fi
ls -l /data;
if [ $? -eq 0 ]; then
echo "succeed"
else
echo "failed"
fi
sh -c "du -sh /data";
if [ $? -eq 0 ]; then
echo "succeed"
else
echo "failed"
fi
touch /data/touch.txt;
if [ $? -eq 0 ]; then
echo "succeed"
else
echo "failed"
fi
二、探针配置
- touch命令
livenessProbe:
exec:
command:
- touch
- /data/touch.txt
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 10
readinessProbe:
exec:
command:
- touch
- /data/touch.txt
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 10
- ls命令
注意
ls -l /data
命令部分失败的情况,若/data
盘符可以正常挂载但是某个文件无法正常访问,探针仍然返回失败(shell命令执行结果),此时可将-l
参数去掉直接使用ls /data
,即可成功。
livenessProbe:
exec:
command:
- "sh"
- "-c"
- "ls -l /data"
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 10
readinessProbe:
exec:
command:
- "sh"
- "-c"
- "ls -l /data"
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 10
- du命令
若
/data
盘符可以正常挂载但是某个文件无法正常访问,探针仍然返回失败
livenessProbe:
exec:
command:
- "du -sh /data"
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 10
readinessProbe:
exec:
command:
- "du -sh /data"
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 10