137 lines
4.3 KiB
Markdown
137 lines
4.3 KiB
Markdown
# Checkmk-Integration und Betriebsuebergabe
|
|
|
|
## Verantwortungsgrenzen
|
|
|
|
| Team | Aufgabe |
|
|
| --- | --- |
|
|
| AD/Security | normales dediziertes Servicekonto; Aufnahme in exakt konfigurierte BizTalk-Read-Only-Gruppe |
|
|
| BizTalk/SQL | Gruppenabbildung und `BTS_READONLY_USERS` bestaetigen; keine Einzelrechte |
|
|
| Windows | Paket installieren, ACL und Scheduled Task pruefen |
|
|
| Checkmk | Wrapper verteilen beziehungsweise Installation koordinieren, Discovery und Alarmierung |
|
|
|
|
Der Checkmk-Agent bleibt `LocalSystem`. Er greift weder auf BizTalk-WMI noch
|
|
auf SQL zu. Der minuetliche Scheduled Task sammelt unter dem privilegierten
|
|
Provider-Konto und publiziert einen validierbaren Snapshot.
|
|
|
|
## Installation
|
|
|
|
Normales Servicekonto:
|
|
|
|
```powershell
|
|
.\Install-BizTalkCheckmkPulse.ps1 `
|
|
-CollectorAccount 'BEW\svc_biztalk_cmk' `
|
|
-EnvironmentName ACC
|
|
```
|
|
|
|
Der Installer legt den Local Check hier ab:
|
|
|
|
```text
|
|
%ProgramData%\checkmk\agent\local\biztalk_checkmk_pulse.cmd
|
|
```
|
|
|
|
Die EXE liegt zentral hier:
|
|
|
|
```text
|
|
%ProgramFiles%\BizTalkCheckmkPulse\BizTalkCheckmkPulse.exe
|
|
```
|
|
|
|
## Checkmk-Agent-Konfiguration
|
|
|
|
Der Wrapper darf synchron laufen, da er nur einen kleinen lokalen Snapshot
|
|
liest. Eine alte Async-Regel mit `cache_age: 300` aus der direkten
|
|
WMI-Architektur soll entfernt werden; andernfalls addiert sie eine unnoetige
|
|
Verzoegerung zum minuetlichen Provider.
|
|
|
|
Aktive Agentkonfiguration pruefen:
|
|
|
|
```powershell
|
|
& "C:\Program Files (x86)\checkmk\service\check_mk_agent.exe" showconfig local
|
|
```
|
|
|
|
Verbindlicher Agent-Dump:
|
|
|
|
```powershell
|
|
& "C:\Program Files (x86)\checkmk\service\cmk-agent-ctl.exe" dump |
|
|
Select-String -Pattern "BizTalk|UNKNOWN|snapshot|Permission" -Context 0,1
|
|
```
|
|
|
|
## Service Discovery
|
|
|
|
1. Provider dreimal erfolgreich laufen lassen.
|
|
2. `LastTaskResult=0`, frischen Snapshot und Log pruefen.
|
|
3. Agent-Dump im `LocalSystem`-Kontext pruefen.
|
|
4. Service Discovery fuer den BizTalk-Host ausfuehren.
|
|
5. acht stabile Services aufnehmen und den alten
|
|
`BizTalk Runtime Artifacts`-Service entfernen.
|
|
6. Changes aktivieren.
|
|
7. Views, Servicegruppen und Benachrichtigungen einrichten.
|
|
|
|
Host-Tags:
|
|
|
|
```text
|
|
env:ACC|DEV|TST|PRD
|
|
app:biztalk
|
|
```
|
|
|
|
Servicefilter:
|
|
|
|
```text
|
|
Service starts with: BizTalk
|
|
```
|
|
|
|
## Bakery-/Softwareverteilung
|
|
|
|
Die komplette Installation umfasst mehr als eine Dateiablage:
|
|
|
|
- Programmdateien unter `%ProgramFiles%`,
|
|
- Runtimeverzeichnisse und ACLs,
|
|
- Scheduled Task mit Providerkonto,
|
|
- Local-Check-Wrapper.
|
|
|
|
Der Wrapper allein kann per Agent Bakery verteilt werden, ersetzt aber nicht
|
|
die lokale Providerinstallation und die Kontofreigabe. Fuer den ersten Rollout
|
|
ist das signierte/abgenommene Deployment-Paket mit administrativer
|
|
Installationsautomation die klarere Variante.
|
|
|
|
## Healthchecks
|
|
|
|
```powershell
|
|
Get-ScheduledTaskInfo -TaskName 'BizTalk Checkmk Pulse Provider'
|
|
Get-Item "$env:ProgramData\BizTalkCheckmkPulse\data\biztalk-checkmk-pulse.snapshot"
|
|
Get-Content "$env:ProgramData\BizTalkCheckmkPulse\logs\*.log" -Tail 50
|
|
& "$env:ProgramFiles\BizTalkCheckmkPulse\BizTalkCheckmkPulse.exe" --consume
|
|
```
|
|
|
|
Soll:
|
|
|
|
- Task laeuft jede Minute und endet mit `0`.
|
|
- Snapshot ist kleiner als `SnapshotMaxBytes` und juenger als 180 Sekunden.
|
|
- Log nennt das dedizierte Providerkonto.
|
|
- Platform zeigt `read_only_group=...`.
|
|
- SQL Access zeigt `targets=2`, `available=2`.
|
|
- Suspended Instances zeigt total/resumable/non-resumable/routing failures.
|
|
- Receive Locations und Send Ports zeigen getrennte expected/unexpected Werte.
|
|
- keine berechtigungsbedingten `UNKNOWN`-Services.
|
|
|
|
## Alarmierung der Transportkette
|
|
|
|
Ein Ausfall des Providers wird ueber alle acht Services als `UNKNOWN`
|
|
sichtbar. Die Summary nennt fehlenden, unlesbaren, ungueltigen oder stale
|
|
Snapshot. Als Betriebsregel sollte `UNKNOWN` dieser Services genauso
|
|
eskaliert werden wie ein technischer Monitoringausfall.
|
|
|
|
Optional kann Windows Task Scheduler zusaetzlich durch vorhandene Checkmk
|
|
Task-/Event-Log-Regeln ueberwacht werden. Das ist eine Ergaenzung, kein Ersatz
|
|
fuer die eingebaute Stale-Pruefung.
|
|
|
|
## Rollout
|
|
|
|
Empfohlene Reihenfolge:
|
|
|
|
1. ACC: Berechtigung, Task, Snapshot, Stale-Test und Discovery abnehmen.
|
|
2. DEV/TST: gleiche Automatisierung und umgebungsspezifische Config.
|
|
3. PRD: Change, Wartungsfenster, Healthcheck und fachliche Plausibilitaet.
|
|
|
|
Ausfuehrliche Architektur, ACL, Fehlerbilder und Abnahmekriterien:
|
|
[Dokumentation.md](../Dokumentation.md).
|