Alertmanager-PVC verkleinen

Aan het einde van deze gids draait Alertmanager op een 1Gi PVC in plaats van 5Gi. De silences-state is bewust opgeofferd: shrinken van een PVC wordt door de meeste storage-classes (waaronder onze cluster-default) niet ondersteund, dus de migratie gaat via een PVC-recreate.

Voorwaarden:

  • Je hebt kubectl-toegang tot het monitoring-namespace.
  • De manifest k8s/monitoring/alertmanager-deployment.yaml staat al op storage: 1Gi (commit van issue #2064).
  • Korte downtime van de alerting-pijplijn is acceptabel (paar minuten).

1. Optioneel: actieve silences exporteren

Alleen nodig als er live silences staan die je wil behouden:

kubectl -n monitoring port-forward svc/alertmanager 9093:9093 &
curl -s http://localhost:9093/api/v2/silences > /tmp/alertmanager-silences.json
kill %1

2. Deployment en oude PVC weghalen

kubectl -n monitoring delete deployment alertmanager
kubectl -n monitoring delete pvc alertmanager-storage

Verwachte output: beide resources zijn deleted.

3. Manifest opnieuw applyen

kubectl apply -f k8s/monitoring/alertmanager-deployment.yaml

Verwachte output: persistentvolumeclaim/alertmanager-storage created, deployment.apps/alertmanager created (Service is unchanged).

4. Verifieer dat Alertmanager weer draait

kubectl -n monitoring get pvc alertmanager-storage
kubectl -n monitoring rollout status deployment/alertmanager

De PVC-CAPACITY moet 1Gi zijn en de rollout moet successfully rolled out melden.

5. Optioneel: silences terugzetten

Alleen als je in stap 1 een export hebt gemaakt:

kubectl -n monitoring port-forward svc/alertmanager 9093:9093 &
jq -c '.[]' /tmp/alertmanager-silences.json | while read -r silence; do
  curl -s -H 'Content-Type: application/json' -d "$silence" \
    http://localhost:9093/api/v2/silences
done
kill %1