Не удалось создать Прометей в кластере K8S - PullRequest
0 голосов
/ 04 февраля 2019

Я пытаюсь установить Prometheus на свой кластер K8S

, когда я запускаю команду

kubectl get namespaces

Я получил следующее пространство имен:

default       Active   26h
kube-public   Active   26h
kube-system   Active   26h
monitoring    Active   153m
prod          Active   5h49m

Теперь яхочу создать Prometheus с помощью

helm install stable/prometheus --name prom -f k8s-values.yml

, и я получил ошибку:

Ошибка: выпуск демо-версии не удалось: пространства имен "по умолчанию" запрещены:Пользователь "system: serviceaccount: kube-system: default" не может получить ресурс "пространства имен" в группе API "" в пространстве имен "default"

, даже если я переключусь на monitoring ns, я получилта же ошибка,

k8s-values.yml выглядит следующим образом

rbac:
  create: false
server:
  name: server

  service:
    nodePort: 30002
    type: NodePort

Есть идеи, чего здесь не хватает?

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

Посмотрите на оператора Прометей, чтобы ускорить все сервисы мониторинга из стека Прометей.полезна ссылка ниже https://github.com/coreos/prometheus-operator/tree/master/contrib/kube-prometheus/manifests

все манифесты перечислены там.просмотрите эти файлы и разверните все, что вам нужно для мониторинга в вашем кластере k8s

0 голосов
/ 04 февраля 2019

Вы получаете эту ошибку, потому что используете RBAC без предоставления необходимых разрешений.

Дайте разрешениям румпеля: взято из https://github.com/helm/helm/blob/master/docs/rbac.md

Пример: учетная запись службы с ролью кластера-администратора В rbac-config.yaml:

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

Примечание: роль администратора кластерасоздается по умолчанию в кластере Kubernetes, поэтому вам не нужно определять его явно.

$ kubectl create -f rbac-config.yaml
serviceaccount "tiller" created
clusterrolebinding "tiller" created
$ helm init --service-account tiller

Создайте учетную запись службы для Prometheus: Измените значение rbac.create на true:

rbac:
  create: true
server:
  name: server

  service:
    nodePort: 30002
    type: NodePort
...