Make installer runtime acceptance transactional

This commit is contained in:
2026-08-10 18:28:49 +02:00
parent 8fe1b57173
commit 448be8dc49
20 changed files with 874 additions and 65 deletions
+18
View File
@@ -408,6 +408,17 @@ Task gestoppt und die Programmversion umgeschaltet. Scheitert ein Folgeschritt,
versucht der Installer Programmverzeichnis, Checkmk-Wrapper und Scheduled Task
auf den vorherigen Stand zurückzusetzen.
Ab Version 2.2.4 ist die Umschaltung erst nach einer transaktionalen
Runtime-Abnahme abgeschlossen. Ein einmaliger, triggerloser Task läuft unter
dem echten Collector-Konto und erzwingt einen vollständigen Endpoint-
Katalogabgleich. Der Installer wartet begrenzt auf `LastTaskResult=0` und lässt
anschließend die installierte Produkt-EXE Snapshot und Katalog mit den normalen
Produktparsern validieren. Der Snapshot muss aus diesem Lauf stammen, die
erwartete Identität und alle neun eindeutigen Services ohne `UNKNOWN`
enthalten. Erst dann wird der normale Minutentask registriert und das Backup
gelöscht. Bei Fehler oder Timeout wird die alte Version wiederhergestellt und
ein frischer Lauf des alten Tasks abgewartet.
Der installierte Task selbst läuft mit `RunLevel Limited`. Der Installer
übergibt das Kennwort direkt an die Windows-Task-Scheduler-COM-Schnittstelle;
es wird weder in einer Prozesskommandozeile noch in Config oder Log
@@ -550,6 +561,8 @@ BizTalk-Probes:
| Key | Default |
| --- | --- |
| `Server` | `.` |
| `EnvironmentName` | leer |
| `IncludeEnvironmentInServiceName` | `false` |
| `QueryTimeoutSeconds` | `25` |
| `ProbeSqlConnectivity` | `true` |
| `SqlConnectionTimeoutSeconds` | `5` |
@@ -602,6 +615,11 @@ Automatisiert:
einem theoretischen Socket-Budget von etwa 15 Sekunden; das konfigurierte
Maximum von 100 Zielen in etwa 21 Sekunden,
- Update-Config-Merge erhält bestehende Werte und fügt neue Defaults hinzu,
- erzwungener Installations-Katalogabgleich wird unabhängig vom Katalogalter
ausgeführt,
- Runtime-Abnahme weist alten/manipulierten Snapshot, falsche Identität,
fehlenden Service, `UNKNOWN`, alten/ungültigen Katalog und fehlerhaften oder
nicht rechtzeitig beendeten Tasklauf zurück,
- Snapshot-Roundtrip und Ersatz,
- SHA-256-Manipulation wird verworfen,
- Stale-Snapshot wird verworfen,