我有一个kind: Namespace
模板yaml,如下所示,
apiVersion: v1
kind: Namespace
metadata:
name: {{ .Values.namespace }}
namespace: ""
当且仅当以上命名空间(helm install
)在尖峰的kubernets集群中没有退出时,我如何使{{ .Values.namespace }}
创建上述命名空间({{ .Values.namespace }}
)
答案 0 :(得分:23)
此功能在掌舵> = 3.2(Pull Request)中实现
除了--create-namespace
之外,还使用--namespace <namespace>
答案 1 :(得分:10)
我建议尽可能避免将名称空间创建为图表内容的一部分,并由头盔管理。带有helm install
选项的--namespace=<namespace_name>
应该为您自动创建一个名称空间。您可以使用{{ .Release.Namespace }}
在图表中引用该名称空间。当前只有一个在公共头盔/图表存储库中创建名称空间的示例,它使用a manual flag for checking whether to create it
答案 2 :(得分:6)
由于版本不同,Helm 命令存在一些差异。
对于 Helm 2,只需使用 --namespace;对于 Helm 3,需要使用 --namespace 和 --create-namespace。
Helm 2 示例:
helm install stable/nginx-ingress --name ingress-nginx --namespace ingress-nginx --wait
Helm 3 示例:
helm install ingress-nginx stable/nginx-ingress --namespace ingress-nginx --create-namespace --wait