docs(cluster): document notification targets + cron stdout rules

- Proxmox default-matcher acum trimite doar la mail-to-root (pve1 smtp
  eliminat din matcher → fix emailuri duble pentru backup/vzdump)
- Adaugat tabel cron jobs per nod cu motivul redirect-ului > /dev/null
- Regula: scripturi cu propriile notificari trebuie sa aiba redirect in
  crontab, altfel cron genereaza email suplimentar de confirmare

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Claude Agent
2026-05-01 05:43:54 +00:00
parent 3ded5d3f2f
commit 679719c295

View File

@@ -625,6 +625,55 @@ ssh root@10.0.20.201 "journalctl -u postfix@- --since '1 min ago' | grep status=
- `libsasl2-modules` (instalat 2026-04-20 — fără el: `SASL authentication failure: No worthy mechs found`)
### Proxmox Notification Targets (`/etc/pve/notifications.cfg`)
Două target-uri definite, **doar `mail-to-root` activ în matcher**:
| Target | Tip | From | Folosit |
|--------|-----|------|---------|
| `mail-to-root` | sendmail | proxmox@romfast.ro | **DA**`default-matcher` |
| `pve1` | smtp (mail.romfast.ro:465) | pve1@romfast.ro | NU (definit, dar scos din matcher) |
`default-matcher` → trimite DOAR la `mail-to-root`:
```
matcher: default-matcher
mode all
target mail-to-root
```
Toate backup job-urile folosesc `DEFAULT` (nu au `notification-target` explicit), deci fiecare backup trimite **un singur email**.
> **ATENȚIE:** Dacă adaugi un nou notification target, nu-l adăuga în `default-matcher` dacă `mail-to-root` e deja acolo — vei primi emailuri duble pentru fiecare backup și alert.
### Cron Jobs — Regula stdout
Cron trimite email dacă scriptul produce orice output pe stdout/stderr. Scripturile care își trimit propriile notificări (via `mail` sau PVE::Notify) trebuie să aibă `> /dev/null 2>&1` în crontab, altfel generează un email suplimentar de "confirmare execuție".
**Stare curentă crontab pvemini (10.0.20.201):**
| Script | Schedule | Redirect | Motiv |
|--------|----------|----------|-------|
| `oom-alert.sh` | `* * * * *` | — | Silențios când nu e OOM |
| `ha-monitor.sh` | `0 0 * * *` | — | Output captat intern în `$()` |
| `ups-monthly-test.sh` | `0 0 1 * *` | `> /dev/null 2>&1` | Folosește `tee` → stdout |
| `vm109-watchdog.sh` | `* * * * *` | — | Scrie în log file |
| `pveelite-down-alert.sh` | `* * * * *` | — | Silențios fără alertă |
| `weekly-dr-test-proxmox.sh` | `0 6 * * 6` | `> /dev/null 2>&1` | Folosește `tee` → stdout |
| `kingston-thermal-monitor.sh` | `*/30 * * * *` | — | Folosește `logger`, silențios |
| `kingston-thermal-report.sh --mail` | `0 8 * * *` | `> /dev/null 2>&1` | Trimite raport via `mail`, confirmarea pe stdout |
**Stare curentă crontab pveelite (10.0.20.202):**
| Script | Schedule | Redirect | Motiv |
|--------|----------|----------|-------|
| `oracle-backup-monitor-proxmox.sh` | `0 21 * * *` | — | Silențios |
| `oom-alert.sh` | `* * * * *` | — | Silențios când nu e OOM |
| `pvemini-down-alert.sh` | `* * * * *` | — | Silențios fără alertă |
| `vm109-watchdog.sh` | `* * * * *` | — | Scrie în log file |
| `zfs-replicate-oracle-backups.sh` | `*/15 * * * *` | — | Silențios |
| `nightly-backup-mirror.sh` | `0 4 * * *` | — | Silențios |
| `weekly-dr-test-proxmox.sh` | `0 6 * * 6` | `> /dev/null 2>&1` | Folosește `tee` → stdout |
---
## OOM Alerting
@@ -705,6 +754,6 @@ swapon -a
---
**Ultima actualizare:** 2026-04-20
**Ultima actualizare:** 2026-05-01
**Autor:** Marius Mutu
**Proiect:** ROMFASTSQL - Proxmox Infrastructure Documentation