apiVersion: monitoring.coreos.com/v1 kind: PrometheusRule metadata: name: stalwart-alerts namespace: stalwart labels: role: alert-rules release: kube-prometheus-stack spec: groups: - name: stalwart rules: - alert: StalwartDown expr: | kube_deployment_status_replicas_available{namespace="stalwart", deployment="stalwart"} == 0 for: 2m labels: severity: critical annotations: summary: "Stalwart mail server is down" description: "Stalwart is down — IMAP, SMTP submission, and webmail are all affected." - alert: BulwarkDown expr: | kube_deployment_status_replicas_available{namespace="stalwart", deployment="bulwark"} == 0 for: 2m labels: severity: critical annotations: summary: "Bulwark spam filter is down" description: "Bulwark is down — inbound email filtering is not running."