Zentrale Verwaltung von Paketen für mehrere Installationen

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
sumpiatdebian
Beiträge: 3
Registriert: 11.10.2023 06:56:48

Zentrale Verwaltung von Paketen für mehrere Installationen

Beitrag von sumpiatdebian » 11.10.2023 13:19:30

Hallo in die Runde!

Ich habe folgende Problemstellung:
Ich möchte mehrere Debian Systeme, die alle die gleichen Aufgaben und Dienste in verschiedenen Netzen erledigen zentral verwalten.
Vor allem würde ich gerne Softwareupdates auf Staging Systemen testen, bevor ich sie auf die einzelnen Prod-Systeme verteile.
Jetzt wollte ich fragen, wie ich so was am einfachsten handhabe. Ich hab mir überlegt, einen lokalen Mirror aufzusetzen und nur all jene Pakete zu verteilen, die getestet sind. Also ähnlich einer Freigabe von Updates auf einem Windows Update Server.
Aber dabei stellt sich die Frage, ob das überhaupt zielführend ist, oder ob man das besser über einen anderen Weg gehen kann. Und wenn doch, wie man einen lokalen Mirror überhaupt aufzieht.
Ich bin für jeden Tipp dankbar!

Danke im Voraus!

lg

Benutzeravatar
heisenberg
Beiträge: 3567
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Zentrale Verwaltung von Paketen für mehrere Installationen

Beitrag von heisenberg » 11.10.2023 19:36:46

In Debian sind die Pakete grundsätzlich schon mal ordentlich durch die Community getestet - zumindest in Stable. Außerdem ist die Einstellung hier eher konservativ - will heißen: Nur sehr zurückhaltend neue Sachen bereitstellen. Keine große Änderungen in einem Release. Bzgl. Sicherheitsupgrades ist die Testqualität nochmal besser. Da empfehle ich die sofort bei Verfügbarkeit einzuspielen.

Ich habe bisher selten Überraschungen bei In-Release-Upgrades erlebt und installiere immer direkt. Aber grundsätzlich ist das ein durchaus vernünftiges Anliegen.

Ein Gedanke, wie man so etwas machen kann, wäre z. B. mit verschiedenen Spiegelservern zu arbeiten:
  • ein Eingehender Mirror (Mirror A) synchronisiert kontinuierlich die Pakete aus dem Internet
  • ein Staging Mirror (Mirror B) ist eine Kopie von Mirror A zu einem bestimmten Zeitpunkt
  • ein Prod Mirror (Mirror C) ist eine Kopie von Mirror B, sobald der freigegeben ist
Dast ist jetzt nicht so fein granuliert, wie Du das skizziert hast, aber meiner Meinung nach sinnvoll. Wenn Du das wirklich auf Paketebene steuern möchtest, dann wird das wohl noch etwas aufwändiger.

Mit den Spiegelservern arbeitest Du dann z. B. wie folgt:
  1. Du synchronsisierst den Staging-Mirror einmalig vom eingehenden Mirror
  2. Du installierst eine Testmaschine in der gewünschten Konfiguration (automatisiert) vom Staging-Mirror
  3. Du entwickelst eine Reihe von (automatisierten) Tests, die prüfen, ob alles an der Testmaschine so funktioniert, wie es soll.
  4. Du löst alle Probleme, die auftreten, bis alle Tests erfolgreich durchlaufen. Dazu musst Du möglicherweise eigene Pakete bauen oder mit Deiner Infrastrukturautomatisierung ansetzen.
  5. Wenn alle Probleme gelöst sind, synchronisierst Du den Prod-Mirror vom Staging-Mirror.
  6. Du konfigurierst zu verschiedenen Zeitpunkten (cron) die Updates der Prod-Systeme in Wellen: eins - wenige - alle
    • Zeitpunkt Z1: Eine Maschine installiert die Updates vom Prod-Mirror (z. B. Montag 15:00 Uhr)
    • Zeitpunkt Z2: (Z1 + x Stunden/Tage): 5 Maschinen installieren die Updates vom Prod-Mirror (z. B. Montag 16:00 Uhr)
    • Zeitpunkt Z3: (Z2 + x Stunden/Tage): Alle Maschinen installieren die Updates vom Prod-Mirror(z. B. Dienstag 16:00 Uhr)
  7. Wenn es irgendwie Probleme gibt, setzt Du den Mirror auf den vorigen Stand zurück oder deaktivierst die automatischen Updates. Die Maschinen mit Fehlern muss man händisch wieder gangbar machen. Ein Paket-zurückrollen gibt es nicht. Da könnte man ggf. mit Snapshots oder Backup/Restore arbeiten.
  8. Das setzt natürlich ein umfassendes Monitoring voraus, so dass Du zeitnah feststellen kannst, wenn etwas bricht.
Ansonsten frage ich mich, wie Du vorhast die Pakete zu prüfen. Ich habe selbst noch nie ein Debian-Paket geprüft. Ist das bei Windows nicht so, dass man mal fest ein Auge zukneift, sich den Paketnamen und die Kurzbeschreibung gaaaanz genau anschaut und dann entscheidet: Du darfst! oder Du darfst nicht! (weil dies oder jenes schon öfters Probleme gemacht hat)

Bzgl. Spiegelservern gibt es diverse Scripte, die Spiegelserver mit detaillierten Einstellungen teilweise oder voll synchronisieren können.

Beim Aufsetzen eigener interner Spiegel kann man das auch von ganz einfach bis perfekt machen.

Im Übrigen: Bedenke auch, dass Debian-Pakete durch ein sehr komplexes Geflecht an Abhängigkeiten verknüpft sind. Manche Pakete erfordern die gleichzeitige Installation ganz vieler anderer Pakete.

Ich denke es wäre aber erst mal sinnvoll, sich zu überlegen, wie man vorgehen möchte. Vielleicht nutzt man nur Teile von dem, was hier aufgeführt ist.
Jede Rohheit hat ihren Ursprung in einer Schwäche.

sumpiatdebian
Beiträge: 3
Registriert: 11.10.2023 06:56:48

Re: Zentrale Verwaltung von Paketen für mehrere Installationen

Beitrag von sumpiatdebian » 12.10.2023 06:22:52

Hallo Heisenberg!

Erst mal Danke für die Tipps! Ja, das Vorgehen mit den verschiedenen Mirror-Server war auch das, was ich mir gedacht hatte.
Ich wollte nur mal fragen, ob es mittlerweile schon andere Werkzeuge dafür gibt.
Nachdem ich die einzelnen Mirrors und die Testsysteme aka stagingsysteme virtualisiert laufen lassen werde, ist die einfachste Variante mit Snapshots zu arbeiten und vor jedem Testlauf einen Abzug von Prod-Systemen zu ziehen und als Basis für Stagings herzunehmen. Dann testet man immer die Updates von den Prodsystemen und nicht irgendwelche "ähnlichen" Zustände...

Dann mach ich mich mal ans Basteln! 8)

Danke noch mal!

Benutzeravatar
heisenberg
Beiträge: 3567
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Zentrale Verwaltung von Paketen für mehrere Installationen

Beitrag von heisenberg » 12.10.2023 08:06:52

Die verschiedenen Spiegel kann man alle auch auf einer einzigen Maschine / VM bereitstellen. Braucht nur entsprechend Platz und verschiedene URLs zum zugreifen.
Zuletzt geändert von heisenberg am 12.10.2023 08:41:55, insgesamt 1-mal geändert.
Jede Rohheit hat ihren Ursprung in einer Schwäche.

sumpiatdebian
Beiträge: 3
Registriert: 11.10.2023 06:56:48

Re: Zentrale Verwaltung von Paketen für mehrere Installationen

Beitrag von sumpiatdebian » 12.10.2023 08:10:17

Good2know!

DANKE!

Antworten