go - 使用 helm go sdk 删除 Kubernetes 中的所有资源
问题描述
我正在广泛使用 helm go sdk。现在我不知道哪些资源仍然在集群中,并且会调用来完全清理它。
我可以得到 KubeClient,但只找到了期望资源的删除方法。
也许程序调用kubectl delete all --all
?最好包括命名空间资源本身。
还是我需要请求所有资源的名称然后删除它?
谢谢!
解决方案
这是为更好的可见性而发布的社区 wiki 答案。随意扩展它。
正如评论中已经提到的,列出所有资源的方法是使用适当的kubectl
命令。它背后的想法在这里得到了很好的解释:
kubectl api-resources
枚举集群中可用的资源类型。这意味着您可以将它与
kubectl get
实际列出命名空间中每种资源类型的每个实例:kubectl api-resources --verbs=list --namespaced -o name \ | xargs -n 1 kubectl get --show-kind --ignore-not-found -l <label>=<value> -n <namespace>
有了它,您将能够请求所有资源的名称,然后删除它们。
推荐阅读
- sql - SQL - 评估多行的最小值,然后过滤以显示唯一行列表?
- python - 进行预测时获得相同的输出
- java - 如何实现我的 JSON 格式为某种格式?
- azure - 开发者租户的图形 API 令牌
- android - 获取 ViewModel ViewModelProvider.Factory 和应用程序上下文
- python - 在 Yocto bitbake 中为 autotools 设置 python dist-packages 路径
- sql - 如何在特定范围内对相同键的记录进行分区并在sql中计算这些分区的数量?
- r - 使用 rvest 和 xpath 刮取价值
- java - 如何用默认包解压jar文件?
- asp.net - System.InvalidOperationException:方案已存在:Identity.Application