首页 > 解决方案 > 使用helm安装clusterRole.yaml

问题描述

我目前正在使用kubectl create -f clusterRole.yaml,我想知道是否可以使用 helm 将它与我的图表一起自动安装。

我正在查看 helm 文档,它用于kubectl create -fclusterRole 文件。有什么理由不能通过 helm 来完成吗?是因为这涉及访问权限问题吗?

标签: kuberneteskubernetes-helm

解决方案


正如评论中已经提到的,您可以使用 helm chart 安装您的 RBAC 角色。事实上,许多 helm 图表确实在安装时配置了角色/集群角色。这是一个 Elasticsearch helm chart的示例,Role它在RoleBinding安装级别进行配置:

{{- 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 安装。


推荐阅读