Как следить за внешним сервисом у Прометея-оператора - PullRequest
2 голосов
/ 02 июля 2019

Я пытаюсь контролировать внешний сервис (который является экспортером метрики кассандры) в Прометей-оператор. Я установил Прометей-оператор с помощью руля 2.11.0. Я установил его с помощью этого 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.yml
helm init --service-account tiller --history-max 200
helm install stable/prometheus-operator --name prometheus-operator --namespace monitoring

Далее, основываясь на статье: как контролировать внешнюю службу

Я пытался сделать шаги, описанные в нем. Как и предполагалось, я создал Endpoints, Service и ServiceMonitor с меткой для существующего Prometheus. Вот мои файлы yaml:

apiVersion: v1
kind: Endpoints
metadata:
  name: cassandra-metrics80
  labels:
    app: cassandra-metrics80
subsets:
- addresses:
  - ip: 10.150.1.80
  ports:
  - name: web
    port: 7070
    protocol: TCP
apiVersion: v1
kind: Service
metadata:
  name: cassandra-metrics80
  namespace: monitoring
  labels:
    app: cassandra-metrics80
    release: prometheus-operator
spec:
  externalName: 10.150.1.80
  ports:
  - name: web
    port: 7070
    protocol: TCP
    targetPort: 7070
  type: ExternalName
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: cassandra-metrics80
  labels:
    app: cassandra-metrics80
    release: prometheus-operator
spec:
  selector:
    matchLabels:
      app: cassandra-metrics80
      release: prometheus-operator
    namespaceSelector:
      matchNames:
      - monitoring
  endpoints:
  - port: web
    interval: 10s
    honorLabels: true

А на странице обнаружения службы Прометей я вижу: Service Discovery

То, что эта служба не активна и все метки сброшены. Я сделал множество вещей, пытаясь это исправить, например, установив targetLabels. Попытка переименовать то, что было обнаружено, как здесь описано: Прометей, перемаркировка Но, к сожалению, ничего не работает. В чем может быть проблема или как мне лучше ее исследовать?

1 Ответ

1 голос
/ 03 июля 2019

Хорошо, я обнаружил, что служба должна находиться в том же пространстве имен, что и монитор службы и конечная точка, после того как прометей начал видеть некоторые метрики от Кассандры.

...