【问题标题】:Error when install prometheus to monitor Kubernetes Cluster安装prometheus监控Kubernetes集群报错
【发布时间】:2019-07-31 06:10:36
【问题描述】:

我正在安装 prometheus 来监控 K8S,但我遇到了这个错误。 你能帮助我吗? 非常感谢!!

helm version
Client: &version.Version{SemVer:"v2.13.0", 
GitCommit:"79d07943b03aea2b76c12644b4b54733bc5958d6", GitTreeState:"clean"}
Server: &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

【问题讨论】:

  • 看起来资源customresourcedefinitions 已经存在并且不能被错误中指定的用户删除。你可以尝试手动删除它并尝试重新安装吗?
  • 抱歉,您知道如何手动删除吗?对不起,我只是一个初学者
  • 尝试 - kubectl get customresourcedefinitions 然后 -kubectl delete customresourcedefinitions
  • 我试图删除 customresourcedefinitions 但它仍然无法使用相同的通知 kubectl get customresourcedefinitions No resources found.

标签: kubernetes prometheus prometheus-operator


【解决方案1】:

这是部署 Tiller(Helm 设置的服务器端)而没有具有适当集群角色 (cluster-admin) 的服务帐户的典型情况。

您需要先修复您的 Helm 设置,才能继续进行 prometheus-operator 安装,如 here 所述,或者直接逐个运行以下命令:

  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"}}}}'

【讨论】:

猜你喜欢
  • 2020-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-17
  • 2020-05-06
  • 1970-01-01
  • 2019-10-05
  • 1970-01-01
相关资源
最近更新 更多