apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: monitoring namespace: argocd spec: project: default source: repoURL: https://prometheus-community.github.io/helm-charts chart: kube-prometheus-stack targetRevision: 77.* helm: skipCrds: true values: | alertmanager: config: global: resolve_timeout: 5m smtp_smarthost: 'mail.home.lan:25' smtp_from: 'alertmanager@home.lan' smtp_hello: 'kubernetes.home.lan' smtp_require_tls: false route: receiver: jay-email group_by: - namespace - alertname - severity group_wait: 30s group_interval: 5m repeat_interval: 4h routes: - receiver: "null" matchers: - alertname = "Watchdog" receivers: - name: "null" - name: jay-email email_configs: - to: 'jay@home.lan' send_resolved: true headers: From: 'Kubernetes Alertmanager ' To: 'Jay ' Subject: '[Kubernetes] {{ .Status | toUpper }}: {{ .CommonLabels.alertname }}' inhibit_rules: - source_matchers: - severity = critical target_matchers: - severity =~ warning|info equal: - namespace - alertname - source_matchers: - severity = warning target_matchers: - severity = info equal: - namespace - alertname - source_matchers: - alertname = InfoInhibitor target_matchers: - severity = info equal: - namespace - target_matchers: - alertname = InfoInhibitor templates: - /etc/alertmanager/config/*.tmpl grafana: ingress: enabled: true ingressClassName: nginx hosts: - grafana.home.lan prometheus: prometheusSpec: externalUrl: http://prometheus.home.lan routePrefix: / ingress: enabled: true ingressClassName: nginx hosts: - prometheus.home.lan paths: - / pathType: Prefix destination: server: https://kubernetes.default.svc namespace: monitoring syncPolicy: automated: prune: true selfHeal: true syncOptions: - CreateNamespace=true