【问题标题】:why run exec command?为什么要运行 exec 命令?
【发布时间】:2016-04-26 10:20:46
【问题描述】:

这个错误的原因是什么?我不明白。命令运行两个 pod 但不运行 ubuntu pod?

vagrant@vagrant:~$ kubectl get po
名称 就绪 状态 重新开始 年龄
cassandra-2p4m0 0/1 运行 1 1d
k8s-master-127.0.0.1 3/3 运行 6 1d
nginx-app-6q4cn 1/1 运行 0 1h
nginx-i3bja 1/1 运行 4 1d
ubuntu-app-nuuyh 0/1 运行 11 1h
vagrant@vagrant:~$ kubectl exec -ti cassandra-2p4m0 -- /bin/sh
#ls
bin dev kubernetes-cassandra.jar 媒体 proc run.sh srv usr
boot etc lib mnt root sbin sys var
cassandra_data home lib64 opt 运行 selinux tmp
# 出口
vagrant@vagrant:~$ kubectl exec -ti nginx-i3bja -- /bin/sh
#ls
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
# 出口
vagrant@vagrant:~$ kubectl exec -ti ubuntu-app-nuuyh -- /bin/sh
错误:执行远程命令时出错:在容器中执行命令时出错:找不到容器(“ubuntu-app”)

【问题讨论】:

  • 看起来您的应用可能处于崩溃循环中(注意 RESTARTS:11)。它告诉你它找不到应用程序。尝试使用 kubectl describe pod 或 kubectl logs 来帮助调试崩溃的原因。
  • 尝试 kubectl logs -f <your_pod_name> 看看 pod 内部发生了什么以及它崩溃的原因。
  • 请求日志时,您的 pod 可能没有任何正在运行的容器。使用kubectl logs -p <pod_name> 查看上次退出容器的日志。
  • 您的 ubuntu pod 中似乎没有正在运行的容器。

标签: ubuntu docker kubernetes


【解决方案1】:

答案已经在 cmets 中了。 “get pods”输出中的 11 次重新启动表明您的容器反复崩溃。您不能执行到死容器中。

使用“kubectl logs --previous ubuntu-app-nuuyh”查看日志以确定为什么“kubectl get pod -o yaml ubuntu-app-nuuyh”没有提供足够的信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多