Configuring Prometheus with Prometheus Operator: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 44: Line 44:
Also, ServiceMonitor selector must match monitored [[Kubernetes_Service_Concepts#Service_.28ClusterIP_Service.29|Services]]' labels.
Also, ServiceMonitor selector must match monitored [[Kubernetes_Service_Concepts#Service_.28ClusterIP_Service.29|Services]]' labels.


If the ServiceMonitor was configured correctly, the new monitoring target surfaces in the Prometheus server configuration, which can be inspected from the server's [[Prometheus_Concepts#Prometheus_Console|console]] (Status → Configuration). Also the console has a "Targets" section where the target should show up.
If the ServiceMonitor was configured correctly, the new monitoring target surfaces in the Prometheus server configuration after a while. The configuration can be inspected from the server's [[Prometheus_Concepts#Prometheus_Console|console]] (Status → Configuration). Also the console has a "Targets" section where the target should show up.

Revision as of 23:38, 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
  namespace: ${namespace}
  labels:
    release: prometheus
spec:
  endpoints:
  - port: pushgateway-standard-port
    targetPort: 9091
    path: /metrics
  namespaceSelector:
    matchNames:
    - ${namespace}
  selector:
    matchLabels:
      function: pushgateway-target
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

Also, ServiceMonitor selector must match monitored Services' labels.

If the ServiceMonitor was configured correctly, the new monitoring target surfaces in the Prometheus server configuration after a while. The configuration can be inspected from the server's console (Status → Configuration). Also the console has a "Targets" section where the target should show up.