Kubernetes按年龄对豆荚进行排序


Answers:


117

窗格具有状态,您可以使用该状态来查找startTime。

我猜是这样的 kubectl get po --sort-by=.status.startTime应该可以。

您也可以尝试:

  1. kubectl get po --sort-by='{.firstTimestamp}'
  2. kubectl get pods --sort-by=.metadata.creationTimestamp 谢谢@克里斯

显然在1.7版本中,sort-by也被破坏了。

https://github.com/kubernetes/kubectl/issues/43

错误报告如下:https : //github.com/kubernetes/kubernetes/issues/48602

这是PR:https : //github.com/kubernetes/kubernetes/pull/48659/files


@vjdhama有没有办法获取可以通过这种方式排序的事物的完整列表?
马修(马修)

完整的清单是什么意思?您的意思是所有类型的资源。
vjdhama

21
有没有一种方法可以反向排序?因此,例如,您可以观看kubectl,并在顶部获得最新的吊舱?
乔J

2
仅当我还包含-o json-o wide标志时,此方法才有效。经过1.7.x和1.9.x
sg

3
@JoeJ kubectl文档没有相反的顺序,但是您可以使用tail命令来实现。kubectl get pods --sort-by=.metadata.creationTimestamp | tail -r | head -n 1我曾经tail -r还原输出。然后head -n 1打印最新的pod
dmowzy

28
kubectl get pods --sort-by=.metadata.creationTimestamp

我得到error: unknown type *api.Pod, expected unstructured in map[reflect.Type]*printers.handlerEntry{}的响应
SG

这对于对ConfigMap进行排序很有用: kubectl get cm --sort-by=.metadata.creationTimestamp
Ivan Aracki

0

如果要根据年龄对它们进行反向排序:

kubectl get po --sort-by=.metadata.creationTimestamp -n <<namespace>> | tac


0

如果您尝试获取最新创建的Pod,则可以执行以下操作

kubectl get pods --sort-by=.metadata.creationTimestamp -o jsonpath='{.items[-1:].metadata.name}'

注意,-1:获取列表中的最后一项,然后我们返回窗格名称

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.