82b86072ee
Stalwart is the mailbox server for the mail migration and runs multi-node from the start, so it needs a coordinator and a shared in-memory store. - run Stalwart as a 3-replica StatefulSet with a headless Service, topology spread and a PDB - add the `mail-valkey` ValkeyCluster as in-memory store and coordinator - keep data in CNPG Postgres and blobs in cephrgw S3 - converge settings from plan.ndjson in a PostSync Job, then roll the StatefulSet - add a global `spam-to-junk` Sieve script filing rspamd-tagged mail into Junk and stopping - exempt LMTP from the inbound throttles, as all inbound mail comes from the smarthost - label pods as smarthost clients and move the client LoadBalancer to 198.18.200.18 Reviewed-on: #539 Co-authored-by: unkin-agent <unkin-agent@unkin.net> Co-committed-by: unkin-agent <unkin-agent@unkin.net>
15 lines
346 B
YAML
15 lines
346 B
YAML
---
|
|
# Stalwart's Prometheus exporter, served only on the dedicated metrics listener.
|
|
apiVersion: operator.victoriametrics.com/v1beta1
|
|
kind: VMPodScrape
|
|
metadata:
|
|
name: stalwart
|
|
namespace: mail
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: stalwart
|
|
podMetricsEndpoints:
|
|
- port: metrics
|
|
path: /metrics/prometheus
|