Helm Charts / Detect changed charts (push) Successful in 14s
Helm Charts / Library charts tool (push) Has been skipped
Helm Charts / Detect changed charts (pull_request) Successful in 14s
Helm Charts / Library charts tool (pull_request) Has been skipped
Helm Charts / Application charts pgcat (push) Has been skipped
Helm Charts / Application charts pgcat (pull_request) Has been skipped
Les règles d'alerte `prospection` s'évaluaient déjà dans Prometheus mais ne notifiaient nulle part. On câble Alertmanager pour livrer les alertes sur le bot Telegram de prospection, via `telegram_configs` natif d'Alertmanager. - iac Vault : policy read-only `alertmanager-telegram` sur kvv2/data/prospection/telegram + rôle k8s `alertmanager` (SA prometheus-alertmanager, ns tools). - VSO : VaultAuth + VaultStaticSecret resynchronisent kvv2/prospection/telegram vers un Secret `alertmanager-telegram` dans le ns tools (le Secret prospection est namespace-scoped, non réutilisable). rolloutRestartTargets sur le StatefulSet Alertmanager. - prometheus values : lien server -> Alertmanager (prometheus-alertmanager:9093), route + receiver `telegram` (bot_token_file monté, chat_id inline, parse_mode HTML, send_resolved), et montage du Secret via extraSecretMounts. Additif : ni grafana ni les règles d'alerte existantes ne sont touchés. Co-Authored-By: Claude Opus 4.8 <[email protected]>
45 lines
1.5 KiB
YAML
45 lines
1.5 KiB
YAML
# Livraison des alertes Prometheus vers Telegram (bot prospection).
|
|
#
|
|
# Alertmanager tourne dans le namespace `tools`, mais le token du bot vit dans Vault
|
|
# (kvv2/prospection/telegram). Le Secret `prospection-telegram` synchronisé par VSO est
|
|
# namespace-scoped (prospection) et non réutilisable ici. On resynchronise donc le même
|
|
# chemin kvv2 vers un Secret `alertmanager-telegram` dans `tools`, via un VaultAuth dédié
|
|
# (rôle k8s `alertmanager`, provisionné par hashicorp-vault/iac).
|
|
#
|
|
# NB: ce chart prometheus est en mode `tool.kind: SubChart`, donc les templates
|
|
# helm-chart*.yaml ne rendent rien ; ce fichier, lui, est rendu tel quel et appliqué par
|
|
# ArgoCD (app `prometheus`, destination namespace `tools`).
|
|
apiVersion: secrets.hashicorp.com/v1beta1
|
|
kind: VaultAuth
|
|
metadata:
|
|
name: alertmanager-telegram
|
|
namespace: tools
|
|
spec:
|
|
method: kubernetes
|
|
mount: kubernetes
|
|
kubernetes:
|
|
role: alertmanager
|
|
serviceAccount: prometheus-alertmanager
|
|
audiences:
|
|
- vault
|
|
---
|
|
apiVersion: secrets.hashicorp.com/v1beta1
|
|
kind: VaultStaticSecret
|
|
metadata:
|
|
name: alertmanager-telegram
|
|
namespace: tools
|
|
spec:
|
|
type: kv-v2
|
|
mount: kvv2
|
|
path: prospection/telegram
|
|
destination:
|
|
name: alertmanager-telegram
|
|
create: true
|
|
refreshAfter: 1h
|
|
vaultAuthRef: alertmanager-telegram
|
|
# Alertmanager lit le token depuis un fichier monté au démarrage et ne recharge pas à
|
|
# chaud un secret monté : on redémarre le StatefulSet quand le token change dans Vault.
|
|
rolloutRestartTargets:
|
|
- kind: StatefulSet
|
|
name: prometheus-alertmanager
|