kubernetes 使用kubectl [duplicate]列出给定命名空间中的所有对象

qlzsbp2j  于 12个月前  发布在  Kubernetes
关注(0)|答案(4)|浏览(99)

此问题在此处已有答案

Listing all resources in a namespace(14个答案)
20天前关闭。
我想列出Kubernetes中特定命名空间中存在的所有对象。

kubectl get all -n <namespace>

字符串
上面的命令没有列出给定命名空间中所有可用的对象。有没有一种方法可以使用kubectl列出它们?
我可以通过将它们传递给kubectl来列出所有我想要的对象。但我不想这样。

kubectl -n <namespace> get deployment,rs,sts,ds,job,cronjobs -oyaml

qij5mzcb

qij5mzcb1#

首先,以下规则决定资源是否属于all类别。
以下是将新资源添加到kubectl get all输出的规则。

  • 没有群集作用域资源
  • 没有命名空间管理级别资源(限制、配额、策略、

授权规则)

  • 没有可能无法恢复的资源(机密和PVC)
  • 被认为与#3“相似”的资源应被分组为

相同(Map)

回答您的问题这是从rcorre's Answer

kubectl api-resources --verbs=list --namespaced -o name \
  | xargs -n 1 kubectl get --show-kind --ignore-not-found -l <label>=<value> -n <namespace>

字符串
最后,如果您想在所有类别中添加自定义资源,则需要在CRD规范中提供这些字段。custom-resource-definitions:categories

# categories is a list of grouped resources the custom resource belongs to.
    categories:
    - all

5t7ly7z5

5t7ly7z52#

也许你可以试试这个:

kubectl get `kubectl api-resources -o name | tr '\n' ',' | sed 's/.$//'`

字符串
来源:Github

vd2z7a6w

vd2z7a6w3#

列出命名空间中的所有对象:

kubectl get all -n=<namespace>

字符串

mi7gmzs6

mi7gmzs64#

试试看:

kubectl -n your_namespace get all

字符串

相关问题