我将头盔部署到隔离的名称空间
删除名称空间会删除其中的所有资源-掌舵部署除外
删除helm部署会删除其中的所有资源-除了名称空间
我必须这样做,这似乎是多余的:
helm del `helm ls NAMESPACE --short` --purge
kubectl delete namespace NAMESPACE
Id只是删除我的命名空间并清除头盔部署-这可能吗?
答案 0 :(得分:3)
删除名称空间会删除其中的所有资源-掌舵部署除外
这不可能(删除名称空间意味着删除其中的所有内容,没有任何例外),并且必须表示代表Helm的部署概念的状态不存在于该名称空间中。 Helm将这些作为配置映射存储在TILLER_NAMESPACE
中。参见here和here。
毫不奇怪,如果您使用helm
创建一些资源,然后“深入了解”并直接通过kubectl
删除这些资源,那么Helm的世界状况将不会导致该部署消失。
删除helm部署会删除其中的所有资源-除了名称空间
这听起来像是预期的行为。大概是用kubectl
带外创建了名称空间,它不是Helm部署的一部分。因此,删除Helm部署不会删除该命名空间。
如果您kubectl create namespace NS
和helm install CHART --namespace NS
,那么清理它就不足为奇了,您需要先发布helm delete
,然后再命名空间kubectl delete
。
我能想到的唯一方法是让Helm图表本身创建一个名称空间,并在该名称空间内创建所有后续的基于名称空间的资源。 Here是一个看起来可以做到这一点的例子。
答案 1 :(得分:1)
创建了一个PR来清理从helm部署的所有资源。跟随链接-> https://github.com/helm/helm/issues/1464
希望在将来的版本中能够解决