helm install istio возвращает запрещенную ошибку

Я пытаюсь установить istio с помощью helm. Я получаю сообщение об ошибке «запрещено: попытка предоставить дополнительные привилегии». Я использую кластер Azure AKS.

Вот что я безуспешно пробовал.

  • Использование --set rbac.create = false
  • Использование нового кластера с выключенным RBAC
  • Создана привязка роли кластера для администратора кластера для текущего пользователя

[root @ 59373cb6f571 codebase] # helm install k8s / istio / helm / istio --name istio --namespace istio-system --set servicegraph.enabled = true --set grafana.enabled = true Ошибка: не удалось выпустить istio: clusterroles. rbac.authorization.k8s.io "istio-galley-istio-system" запрещен: попытка предоставить дополнительные привилегии: [{[] [admissionregistration.k8s.io] [проверка конфигурации веб-перехватчика] [] []} {[get ] [config.istio.io] [] [] []} {[список] [config.istio.io] [] [] []} {[смотреть] [config.istio.io ] [] [] []} {[get] [] [развертывания] [istio-galley] []} {[get] [] [endpoints] [istio-galley] []}] user = & {system: serviceaccount: kube-system: default 8134fa11-dd8d-11e8-967b-56582c65801d [system: serviceaccounts system: serviceaccounts: kube-system system: authenticated] map []} ownerrules = [] ruleResolutionErrors знак равно


person Param    schedule 01.11.2018    source источник


Ответы (1)


Судя по сообщениям об ошибках, Tiller, компонент helm, работающий в кластере, использует служебную учетную запись по умолчанию в пространстве имен kube-system для создания ресурсов в пространстве имен istio-system, но не имеет достаточных привилегий.

Таким образом, вы можете настроить Tiller для использования другой учетной записи службы и предоставить ей права администратора кластера для этой учетной записи службы или продолжить использование учетной записи службы по умолчанию и предоставить администратору кластера учетную запись службы по умолчанию. поскольку все поды, запускаемые в этом пространстве имен, по умолчанию будут использовать serviceaccount по умолчанию, предоставлять полные привилегии serviceaccount по умолчанию не рекомендуется.

например, отрывок из документа руля:

apiVersion: v1
kind: ServiceAccount
metadata:
  name: tiller
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: tiller
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount
    name: tiller
    namespace: kube-system
person Kun Li    schedule 01.11.2018
comment
К сожалению, это не сработало. Я попытался применить роль администратора кластера к обеим учетным записям службы tiller в пространствах имен kube-system и istio-system. Я также пробовал то же самое в обоих кластерах, то есть с включенным и отключенным RBAC. - person Param; 02.11.2018
comment
Прежде всего, tiller serviceaccount должен быть только в пространстве имен kube-system. Во-вторых, если вы устанавливаете tiller serviceaccount, вам следует настроить tiller pod для использования его в качестве serviceaccount. - person Kun Li; 02.11.2018
comment
Кроме того, вы должны создать привязку кластера. - person Kun Li; 02.11.2018
comment
Решено с помощью helm init --upgrade --service-account tiller - person c4f4t0r; 31.01.2020