我想要一个命令来检查在我尝试过的Pod中是否存在ping实用程序
kubectl exec -it auxiliary-etcd-ubuntu -n kube-system -c etcd-auxiliary-0 ping -c 1 127.0.0.1 ; echo $?
响应是
Error from server (BadRequest): container 1 is not valid for pod auxiliary-etcd-ubuntu
1
还有其他更好的方法来只是检查ping实用程序是否已经存在或已安装在kubernetes容器中。
谢谢。
答案 0 :(得分:3)
如果您只想检查POD
内是否存在/已安装命令
kubectl exec -it auxiliary-etcd-ubuntu -- which ping ; echo $?
这将为您提供退出状态1
(如果不存在)。
也
kubectl exec -it auxiliary-etcd-ubuntu -- whereis ping
这将提供安装位置的路径。
答案 1 :(得分:2)
尝试以下命令
(time (some-work))
答案 2 :(得分:1)
您的命令不正确,无法识别在pod内运行的命令(ping -c 1 127.0.0.1 ; echo $?
)和在主机上运行的命令(kubectl exec -it auxiliary-etcd-ubuntu -n kube-system -c etcd-auxiliary-0
)之间的区别。正确的命令将是:
kubectl exec -it auxiliary-etcd-ubuntu -n kube-system -c etcd-auxiliary-0 -- ping -c 1 127.0.0.1 ; echo $?
以上命令将起作用。