在Kubernetes上部署多个命名空间的唯一分蘖器

在Kubernetes上部署多个命名空间的唯一分蘖器,kubernetes,kubernetes-helm,Kubernetes,Kubernetes Helm,在找不到,Tiller是否能够在其他多个命名空间上安装图表 我希望kube系统名称空间上有一个舵柄,也有多个名称空间:名称空间A、名称空间B、名称空间C等等 最后,我希望可以将nginx部署到多个名称空间,如: helm init --service-account tiller --tiller-namespace kube-system helm install nginx --tiller-namespace kube-system --namespace namespaceA helm

在找不到,Tiller是否能够在其他多个命名空间上安装图表

我希望kube系统名称空间上有一个舵柄,也有多个名称空间:名称空间A、名称空间B、名称空间C等等

最后,我希望可以将nginx部署到多个名称空间,如:

helm init --service-account tiller --tiller-namespace kube-system
helm install nginx --tiller-namespace kube-system --namespace namespaceA
helm install nginx --tiller-namespace kube-system --namespace namespaceB
我想知道这是否可能,以及如何设置服务帐户、角色和角色绑定


谢谢

可以使用clustetRoles而不是角色来完成,这样您就可以在所有名称空间中授予权限。clusterrole、clusterrolebinding和serviceaccount代码为:

kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: tiller-manager
rules:
- apiGroups: ["", "batch", "extensions", "apps"]
  resources: ["*"]
  verbs: ["*"]
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: tiller-binding
subjects:
- kind: ServiceAccount
  name: tiller
  namespace: kube-system
roleRef:
  kind: ClusterRole
  name: tiller-manager
  apiGroup: rbac.authorization.k8s.io
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: tiller
  namespace: kube-system
如果只想向少数命名空间授予权限,则应在每个命名空间中创建如下角色绑定:

kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: tiller-binding
  namespace: namespaceA
subjects:
- kind: ServiceAccount
  name: tiller
  namespace: kube-system
roleRef:
  kind: ClusterRole
  name: tiller-manager
  apiGroup: rbac.authorization.k8s.io

谢谢你友好的指导。是的,简单的答案是使用ClusterRole。我更喜欢使用角色,因为Tiller ServiceAccount不应该操作kube系统命名空间上的资源。这有意义吗?种类:角色元数据:名称:namespaceA tiller manager命名空间:namespaceA(snip)---种类:RoleBinding元数据:名称:namespaceA tiller绑定命名空间:namespaceA主题:-种类:ServiceAccount名称:tiller命名空间:namespaceA(snip)是,您可以为每个命名空间定义一个role+roleBinding,或者只定义clusterRole并将其授予具有rolebindings的特定命名空间(请参阅我的最后一段代码)。结果将是相同的,clusterrole将只在具有RoleBinding的名称空间中工作。