Kubernetes 按年龄排序 pods
Kubernetes sort pods by age
我可以按名称对我的 Kubernetes pods 进行排序:
kubectl get pods --sort-by=.metadata.name
如何使用 kubectl
按年龄对它们(或其他资源)进行排序?
Pods 有状态,你可以用它来找出开始时间。
我想 kubectl get po --sort-by=.status.startTime
应该可以。
您也可以试试:
kubectl get po --sort-by='{.firstTimestamp}'
.
kubectl get pods --sort-by=.metadata.creationTimestamp
谢谢@chris
显然在 Kubernetes 1.7 版本中,排序方式也被破坏了。
https://github.com/kubernetes/kubectl/issues/43
这是错误报告:https://github.com/kubernetes/kubernetes/issues/48602
这是公关:https://github.com/kubernetes/kubernetes/pull/48659/files
kubectl get pods --sort-by=.metadata.creationTimestamp
如果要按年龄倒序排列:
kubectl get po --sort-by=.metadata.creationTimestamp -n <<namespace>> | tac
如果您正在尝试获取最近创建的 pod,您可以执行以下操作
kubectl get pods --sort-by=.metadata.creationTimestamp -o jsonpath='{.items[-1:].metadata.name}'
注意 -1:
获取列表中的最后一项,然后我们 return pod 名称
如果您只想要 most-recently-created pod 的名称;
POD_NAME=$(kubectl get pod --sort-by=.metadata.creationTimestamp -o name | cut -d/ -f2 | tail -n 1)
echo "${POD_NAME}"
我想查看过去 24 小时内更新的所有 pods。这非常有效,并且不依赖于特定版本的 Kubernetes 或 Kubernetes 除了 get pods:
之外的高级参数
kubectl get pods | awk '{print " : " }' | grep -E ':\s([1-9]|[12][0-4])h$' | sort -k3,3
我可以按名称对我的 Kubernetes pods 进行排序:
kubectl get pods --sort-by=.metadata.name
如何使用 kubectl
按年龄对它们(或其他资源)进行排序?
Pods 有状态,你可以用它来找出开始时间。
我想 kubectl get po --sort-by=.status.startTime
应该可以。
您也可以试试:
kubectl get po --sort-by='{.firstTimestamp}'
.kubectl get pods --sort-by=.metadata.creationTimestamp
谢谢@chris
显然在 Kubernetes 1.7 版本中,排序方式也被破坏了。
https://github.com/kubernetes/kubectl/issues/43
这是错误报告:https://github.com/kubernetes/kubernetes/issues/48602
这是公关:https://github.com/kubernetes/kubernetes/pull/48659/files
kubectl get pods --sort-by=.metadata.creationTimestamp
如果要按年龄倒序排列:
kubectl get po --sort-by=.metadata.creationTimestamp -n <<namespace>> | tac
如果您正在尝试获取最近创建的 pod,您可以执行以下操作
kubectl get pods --sort-by=.metadata.creationTimestamp -o jsonpath='{.items[-1:].metadata.name}'
注意 -1:
获取列表中的最后一项,然后我们 return pod 名称
如果您只想要 most-recently-created pod 的名称;
POD_NAME=$(kubectl get pod --sort-by=.metadata.creationTimestamp -o name | cut -d/ -f2 | tail -n 1)
echo "${POD_NAME}"
我想查看过去 24 小时内更新的所有 pods。这非常有效,并且不依赖于特定版本的 Kubernetes 或 Kubernetes 除了 get pods:
之外的高级参数kubectl get pods | awk '{print " : " }' | grep -E ':\s([1-9]|[12][0-4])h$' | sort -k3,3