Ошибка при установке prometheus для мониторинга кластера Kubernetes

#kubernetes #prometheus #prometheus-operator

#kubernetes #prometheus #prometheus-оператор

Вопрос:

Я устанавливаю prometheus для мониторинга K8S, но я столкнулся с этой ошибкой. Можете ли вы мне помочь? Большое вам спасибо!!

 helm version
Client: amp;version.Version{SemVer:"v2.13.0", 
GitCommit:"79d07943b03aea2b76c12644b4b54733bc5958d6", GitTreeState:"clean"}
Server: amp;version.Version{SemVer:"v2.13.0", 
GitCommit:"79d07943b03aea2b76c12644b4b54733bc5958d6", GitTreeState:"clean"}

helm install stable/prometheus-operator --name prometheus-operator --namespace monitoring

Error: customresourcedefinitions.apiextensions.k8s.io "alertmanagers.monitoring.coreos.com" is forbidden: User "system:serviceaccount:kube-system:default" cannot delete resource "customresourcedefinitions" in API group "apiextensions.k8s.io" at the cluster scope
  

Комментарии:

1. похоже, что ресурс customresourcedefinitions уже существует и не может быть удален пользователем, указанным в ошибке. можете ли вы попытаться удалить его вручную и попытаться установить снова?

2. извините, но вы знаете, как удалить его вручную? извините, я всего лишь новичок

3. попробуйте — kubectl получить customresourcedefinitions, а затем -kubectl удалить customresourcedefinitions <имя>

4.Я пытался удалить customresourcedefinitions, но он по-прежнему не работает с тем же уведомлением kubectl get customresourcedefinitions No resources found.

Ответ №1:

Это типичная ситуация, когда Tiller (серверная часть программы установки Helm) развертывается без учетной записи службы, имеющей соответствующую роль кластера (администратор кластера).

Сначала вам необходимо исправить настройку Helm, чтобы иметь возможность продолжить установку prometheus-operator, как описано здесь, или выполнив приведенные ниже команды напрямую, одну за другой:

  1. kubectl create serviceaccount --namespace kube-system tiller
  2. kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
  3. kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'

Комментарии:

1. Да, это сработало. Большое вам спасибо. Еще одна ссылка на reference (Включить Helm в вашем кластере) docs.bitnami.com/kubernetes/how-to /…