我目前正在使用kubectl create -f clusterRole.yaml
,我想知道我是否可以使用helm自动安装它与我的图表。
我正在查看helm文档,它使用kubectl create -f
作为clusterRole文件。有什么原因不能通过helm来完成吗?是因为这涉及访问权限问题吗?
正如在评论中已经提到的,您可以使用您的舵图安装您的RBAC角色。事实上,许多掌舵图确实在安装时配置了角色/clusterrole。下面是一个在安装级别配置Role
和RoleBinding
的Elasticsearch helm chart示例:
{{- if .Values.rbac.create -}}
{{- $fullName := include "elasticsearch.uname" . -}}
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: {{ $fullName | quote }}
labels:
heritage: {{ .Release.Service | quote }}
release: {{ .Release.Name | quote }}
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
app: {{ $fullName | quote }}
rules:
- apiGroups:
- extensions
resources:
- podsecuritypolicies
resourceNames:
{{- if eq .Values.podSecurityPolicy.name "" }}
- {{ $fullName | quote }}
{{- else }}
- {{ .Values.podSecurityPolicy.name | quote }}
{{- end }}
verbs:
- use
{{- end -}}
另一个使用clusterRole的例子可以在这里找到。
总而言之,如果你的上下文允许你安装所需的rbac或kubectl
的任何其他东西,那么基本上你可以用helm来做。