kubernetes kubectl按类型获取秘密?

nat*_*ate 4 kubernetes kubectl

我想运行kubectl并获取类型= X的所有机密。这可能吗?

即如果我想获取所有秘密,其中type = tls

kubectl get secrets --type=tls什么?

小智 12

字段选择器怎么样:

$ kubectl get secrets --field-selector type=kubernetes.io/tls
Run Code Online (Sandbox Code Playgroud)


Phi*_*p C 6

接受的答案当然有效,但我有兴趣找到一个grep更少的解决方案。这是我的贡献。

$ kubectl get secret -o=jsonpath='{.items[?(@.type=="Opaque")].metadata.name}'
dummy-secret mysecretdelete
Run Code Online (Sandbox Code Playgroud)


Ric*_*ico 5

你可以做到的jsonpath。像这样:

$ kubectl get secret -o=jsonpath='{range .items[*]}{.metadata.name} {.type}{"\n"}{end}' | grep -i tls
Run Code Online (Sandbox Code Playgroud)

例如,要获取所有类型Opaque机密:

$ kubectl get secret -o=jsonpath='{range .items[*]}{.metadata.name} {.type}{"\n"}{end}' | grep Opaque
dummy-secret Opaque
mysecretdelete Opaque
Run Code Online (Sandbox Code Playgroud)