Prometheus Agent

As mentioned in Prometheus’s blog, Prometheus Agent is a deployment model optimized for environments where all collected data is forwarded to a long-term storage solution, e.g. Cortex, Thanos or Prometheus, that do not need storage or rule evaluation.

First of all, make sure that the PrometheusAgent CRD is installed in the cluster and that the operator has the proper RBAC permissions to reconcile the PrometheusAgent resources.

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  labels:
    app.kubernetes.io/component: controller
    app.kubernetes.io/name: prometheus-operator
    app.kubernetes.io/version: 0.94.1
  name: prometheus-operator
rules:
- apiGroups:
  - monitoring.coreos.com
  resources:
  - alertmanagers
  - alertmanagers/finalizers
  - prometheusagents
  - prometheusagents/finalizers
  - prometheuses
  - prometheuses/finalizers
  - thanosrulers
  - thanosrulers/finalizers
  verbs:
  - patch
- apiGroups:
  - monitoring.coreos.com
  resources:
  - alertmanagers/finalizers
  - prometheusagents/finalizers
  - prometheuses/finalizers
  - thanosrulers/finalizers
  verbs:
  - update
- apiGroups:
  - monitoring.coreos.com
  resources:
  - alertmanagers/status
  - alertmanagerconfigs/status
  - podmonitors/status
  - probes/status
  - prometheuses/status
  - prometheusagents/status
  - prometheusrules/status
  - scrapeconfigs/status
  - servicemonitors/status
  - thanosrulers/status
  verbs:
  - create
  - update
  - patch
  - delete
- apiGroups:
  - monitoring.coreos.com
  resources:
  - alertmanagers
  - alertmanagerconfigs
  - podmonitors
  - probes
  - prometheusagents
  - prometheuses
  - prometheusrules
  - servicemonitors
  - scrapeconfigs
  - thanosrulers
  verbs:
  - get
  - list
  - watch
- apiGroups:
  - apps
  resources:
  - statefulsets
  verbs:
  - get
  - list
  - watch
  - create
  - update
  - patch
  - delete
- apiGroups: