Skip to content
Snippets Groups Projects
Forked from stackspin / stackspin
3784 commits behind the upstream repository.
kube-prometheus-stack-values-configmap.yaml 9.54 KiB
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: stackspin-kube-prometheus-stack-values
  namespace: stackspin
data:
  values.yaml: |
    # https://github.com/prometheus-community/helm-charts/blob/main/charts/kube-prometheus-stack/values.yaml

    # From: https://github.com/cablespaghetti/k3s-monitoring/blob/master/kube-prometheus-stack-values.yaml
    # Disable etcd monitoring. See https://github.com/cablespaghetti/k3s-monitoring/issues/4
    kubeEtcd:
      enabled: false

    # Disable kube-controller-manager, kube-scheduler and kube-proxy monitoring.
    # See https://github.com/cablespaghetti/k3s-monitoring/issues/2
    kubeControllerManager:
      enabled: false
    kubeScheduler:
      enabled: false
    kubeProxy:
      enabled: false

    # https://github.com/prometheus-community/helm-charts/blob/main/charts/kube-prometheus-stack/values.yaml#L115
    alertmanager:
      ingress:
        enabled: true
        annotations:
          nginx.ingress.kubernetes.io/auth-type: basic
          nginx.ingress.kubernetes.io/auth-secret: stackspin-alertmanager-basic-auth
          nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required'
          kubernetes.io/tls-acme: "true"
        pathType: ImplementationSpecific
        hosts:
          - "alertmanager.${domain}"
        tls:
          - secretName: alertmanager-tls
            hosts:
              - "alertmanager.${domain}"
      config:
        global:
          smtp_from: "${outgoing_mail_from_address}"
          smtp_smarthost: "${outgoing_mail_smtp_host}:${outgoing_mail_smtp_port}"
          smtp_auth_username: "${outgoing_mail_smtp_user}"
          smtp_auth_password: "${outgoing_mail_smtp_password}"
        route:
          group_by: ['job']
          group_wait: 30s
          group_interval: 5m
          repeat_interval: 6h
          receiver: email
          routes:
          - match:
              # This is an alert meant to ensure that the entire alerting pipeline is functional.
              # This alert is always firing, therefore it should always be firing in Alertmanager
              # and always fire against a receiver. There are integrations with various notification
              # mechanisms that send a notification when this alert is not firing. For example the
              # "DeadMansSnitch" integration in PagerDuty.
              alertname: Watchdog
            receiver: 'null'
          - match:
              # This is an alert that is used to inhibit info alerts.
              # By themselves, the info-level alerts are sometimes very noisy, but they are relevant when combined with
              # other alerts.
              # This alert fires whenever there''s a severity="info" alert, and stops firing when another alert with a
              # severity of ''warning'' or ''critical'' starts firing on the same namespace.
              # This alert should be routed to a null receiver and configured to inhibit alerts with severity="info".
              alertname: InfoInhibitor
            receiver: "null"