Skip to content
Community

logo

Kube Prometheus Stack#

The Kube Prometheus Stack provides a collection of monitoring and alerting rules for Kubernetes clusters. It is a fork of the Prometheus Operator and Grafana Operator, combined into a single operator. It provides a collection of monitoring and alerting rules for Kubernetes clusters


Looking for Commercial Support? LEARN MORE

Prerequisites#

Deploy k0rdent v1.7.0: QuickStart

Install template to k0rdent#

helm upgrade --install kube-prometheus-stack oci://ghcr.io/k0rdent/catalog/charts/kgst --set "chart=kube-prometheus-stack:81.6.3" -n kcm-system

Verify service template#

kubectl get servicetemplates -A
# NAMESPACE    NAME                            VALID
# kcm-system   kube-prometheus-stack-81-6-3    true

Deploy service template#

apiVersion: k0rdent.mirantis.com/v1beta1
kind: MultiClusterService
metadata:
  name: kube-prometheus-stack
spec:
  clusterSelector:
    matchLabels:
      group: demo
  serviceSpec:
    services:
    - template: kube-prometheus-stack-81-6-3
      name: kube-prometheus-stack
      namespace: kube-prometheus-stack

Prerequisites#

Deploy k0rdent v1.7.0: QuickStart

Install template to k0rdent#

helm upgrade --install ingress-nginx oci://ghcr.io/k0rdent/catalog/charts/kgst --set "chart=ingress-nginx:4.13.0" -n kcm-system
helm upgrade --install kube-prometheus-stack oci://ghcr.io/k0rdent/catalog/charts/kgst --set "chart=kube-prometheus-stack:77.0.0" -n kcm-system

Verify service template#

kubectl get servicetemplates -A
# NAMESPACE    NAME                            VALID
# kcm-system   ingress-nginx-4-13-0            true
# kcm-system   kube-prometheus-stack-77-0-0    true

Deploy service template#

apiVersion: k0rdent.mirantis.com/v1beta1
kind: MultiClusterService
metadata:
  name: kube-prometheus-stack
spec:
  clusterSelector:
    matchLabels:
      group: demo
  serviceSpec:
    services:
    - template: ingress-nginx-4-13-0
      name: ingress-nginx
      namespace: kube-prometheus-stack
      values: |
        ingress-nginx:
          controller:
            service:
              annotations:
                service.beta.kubernetes.io/azure-load-balancer-health-probe-request-path: /healthz
            hostPort:
              enabled: true
    - template: kube-prometheus-stack-77-0-0
      name: kube-prometheus-stack
      namespace: kube-prometheus-stack
      values: |
        kube-prometheus-stack:
          prometheus:
            prometheusSpec:
              maximumStartupDurationSeconds: 300
            ingress:
              enabled: true
              ingressClassName: nginx
              hosts: ['prometheus.example.com']
          grafana:
            ingress:
              enabled: true
              ingressClassName: nginx
              hosts: ['']