kubernetes - 检查哪个部署(如果有)正在使用 secret

标签 kubernetes kubernetes-helm kubernetes-secrets

我正在替换一个 Kubernetes secret ,我想确保我正在捕获集群中所有使用它的地方。

有没有一种方法可以在不阅读所有使用 K8s 或 helm 的部署 YAML 的情况下判断?

我们在同一个集群上部署了多项服务并共享 secret 。一些使用 Helm,一些不使用。

最佳答案

您可以通过几种不同的方式使用 secret ,它并不总是绑定(bind)为卷。因此,最方便的方法是检查所有可以在其规范中使用 secret 的对象的 secret 命名空间。

对于手动检查,这里有两个命令,一个用于检查 k8s 对象中的某些 secret 名称引用,第二个帮助找到包含 secret 引用的对象。

kubectl get deployments,statefulsets,daemonsets,cronjobs,jobs,pods -n namespace-name -o yaml | grep  secret_name

kubectl get deployments,statefulsets,daemonsets,cronjobs,jobs,pods -n namespace-name -o yaml | grep -i -e "^ name:"  -e "^  kind" -e secret_name

注释可以通过 grep -v annotation -v last-applied 删除,或者更简单 grep -v "\"kind"

关于kubernetes - 检查哪个部署(如果有)正在使用 secret ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69253006/

相关文章:

kubernetes - 从 kubectl 输出显示失败的 pod

docker - Kubernetes:如何自动清理未使用的镜像

kubernetes - kubernetes PersistentVolumes 的最大存储容量是多少

kubernetes-helm - 如何访问 values.yaml Helm chart 中的虚线变量

kubernetes-helm - kubernetes-helm 模板可以使用变量吗?

kubernetes-helm - 引用先前在 HELM values.yaml 中声明的值

kubernetes - 尝试在 kubernetes 中创建 secret 时遇到一些问题

linux - Simatic IoT2040 上的 Kubernetes

kubernetes - 如何从 Kubernetes 中的 secret 挂载单个文件?

kubernetes - 如何使用 Kubeseal 密封 helm-template secret?