有没有办法获取有关已被删除的Kubernetes pod的一些细节(已停止,替换为新版本)。
我正在调查bug。我有我的pod名称的日志。该pod不再存在,它被另一个(具有不同的配置)替换。新pod与旧的pod位于同一名称空间,复制控制器和服务中。
像
这样的命令kubectl get pods
kubectl get pod <pod-name>
仅适用于当前的pod(实时或已停止)。
如何获得有关旧豆荚的更多详情?我想看看
答案 0 :(得分:9)
从今天起,kubectl get pods -a
已过时,因此您无法删除已删除的广告连播。
但是,您可以做的是获取最近删除的pod名称的列表-过去最多1个小时,除非您通过运行以下命令更改kubernetes事件的ttl
-
kubectl get event -o custom-columns=NAME:.metadata.name | cut -d "." -f1
然后,如果有的话,您可以调查日志记录管道中的其他问题。
答案 1 :(得分:2)
据我所知,删除pod后,您可能无法获取pod详细信息。我可以知道什么是用例?
示例:
答案 2 :(得分:1)
您可以尝试kubectl logs --previous
列出以前停止的广告连播的日志
http://kubernetes.io/docs/user-guide/kubectl/kubectl_logs/
您可能还想查看这些调试提示 http://kubernetes.io/docs/user-guide/debugging-pods-and-replication-controllers/
答案 3 :(得分:1)
如果您的容器以前曾崩溃过,则可以通过以下方式访问先前容器的崩溃日志:
kubectl日志-上一个$ {POD_NAME} $ {CONTAINER_NAME}
答案 4 :(得分:1)
有一种方法可以找出删除吊舱的原因以及删除吊舱的人。
找出某物的唯一方法是将k8的ttl
设置为大于默认值1h并搜索事件:
kubectl get event -o custom-columns=NAME:.metadata.name | cut -d "." -f1
答案 5 :(得分:0)
有这面旗帜:
-a, - show-all = false:打印时,显示所有资源(默认隐藏终止的pod。)
但是这对老豆荚的所有情况都没有帮助。
答案 6 :(得分:-4)
kubectl get pods -a
如果您正在搜索此
,您将获得正在运行的广告连播和已终止广告连播的列表答案 7 :(得分:-4)
如果您想查看所有先前删除的pods
,并且尝试获取先前的pods
。
命令行:
kubectl describe services
您将获得所有pod的详细信息,因为每种服务都有一个或多个pod,并且它们具有唯一的ip地址
在这里您可以检查Pod的生命周期以及Pod有哪些阶段。 https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle