Configuring Prometheus with Prometheus Operator: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 31: Line 31:
</syntaxhighlight>
</syntaxhighlight>


The ServiceMonitor resource must carry a label that will identify it to the Prometheus custom resource by matching the Prometheus resource "serviceMonitorSelector":
The ServiceMonitor resource must carry a label that will identify it to the [[Prometheus_Operator_Concepts#Prometheus_Resource|Prometheus]] custom resource by matching the Prometheus resource "serviceMonitorSelector":
<syntaxhighlight lang='yaml'>
<syntaxhighlight lang='yaml'>
apiVersion: monitoring.coreos.com/v1
apiVersion: monitoring.coreos.com/v1

Revision as of 22:08, 14 October 2020

External

Internal

Overview

Add a Target

To add a monitoring target, deploy a ServiceMonitor custom resource:

namespace="prometheus"
cat <<EOF | kubectl -n ${namespace} apply -f -
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: pushgateway-example
  namespace: ${namespace}
  labels:
    release: prometheus
spec:
  endpoints:
  - path: /metrics
    port: "9091"
  namespaceSelector:
    matchNames:
    - ${namespace}
  selector:
    matchLabels:
      function: pushgateway
EOF

The ServiceMonitor resource must carry a label that will identify it to the Prometheus custom resource by matching the Prometheus resource "serviceMonitorSelector":

apiVersion: monitoring.coreos.com/v1
kind: Prometheus
...
spec:
  serviceMonitorSelector:
    matchLabels:
      release: prometheus