AiHummer
Deutsch
AnmeldenKonto
v1.2.x
{ }Swagger

Upgrade-Richtlinie

v1.2.x · aktualisiert 2026-08-04

Stabilität ist ein Produktprinzip, kein nachträglicher Gedanke. AiHummer folgt dem. SemVer, gilt vorwärts-sichere Datenbankmigrationen automatisch, und kann Selbstaktualisierung von einem CDN — sodass Updates Routine und nicht riskant sind.

Versionierung (SemVer)

Veröffentlichungen folgen der Semantischen Versionierung. Die Version wird berichtet von /healthz und durch aihummer version, so dass Sie immer genau bestätigen können, was vor und nach einem Upgrade läuft.

Migrationen sind vorwärtskompatibel und automatisch

Beim Start wendet das Gateway automatisch ausstehende Datenbankmigrationen an. Zwei Eigenschaften machen dies sicher:

  • Vorwärts-sicher. Migrationen werden so geschrieben, dass eine neuere Binärdatei damit funktioniert Schema, zu dem es migriert, was es sicher macht, Auto-Anwendung und fortlaufende Upgrades durchzuführen.
  • Einzelanwender über beratendes Sperre. Migrationen werden unter einem ausgeführt PostgreSQL Hinweissperre, daher wird, wenn mehrere Gateways gleichzeitig starten, nur eines von ihnen angewendet und der Rest wartet — niemals eine doppelte Migration.

[!NOTE] Migrationen laufen immer auf dem Eigentümer-Datenbank-Pool. Die eingeschränkte RLS-Rolle (AIHUMMER_DB_APP_URL) dient dazu, den Datenverkehr zu bedienen, nicht für Schemaänderungen.

Aktualisierung

Neue Versionen bezieht das Gateway aus dem Release-CDN des Anbieters. Der unterstützte Weg zur Aktualisierung ist ein einziger Befehl auf dem Server:

aihummer update --check   # report whether a newer version is available
aihummer update           # download and apply the update

--check schreibt nichts und benötigt daher kein root. Eine Aktualisierung anzuwenden schreibt die Installationswurzel neu und startet den Dienst neu, führen Sie sie deshalb mit sudo aus.

Erwartetes Ergebnis: --check gibt die laufende und die verfügbare Version aus und endet, ohne etwas zu verändern. aihummer update lädt das Artefakt herunter, prüft dessen sha256-Prüfsumme und dessen cosign-Signatur, tauscht die Binärdatei aus und startet den Dienst neu; danach meldet aihummer version die neue Version. Schlägt die Prüfung fehl, bricht die Aktualisierung vor dem Austausch ab: Die laufende Version bleibt unangetastet.

[!NOTE] Die automatische Aktualisierung schaltet der Anbieter frei, nicht Sie. Modus und Zeitplan gehören zur Pflege der Ausgabe und werden durch eine signierte Anweisung des Anbieters festgelegt. Entsprechende Schalter gibt es weder in der Weboberfläche noch in aihummer settings, und in gateway.env eingetragene Variablen zur automatischen Aktualisierung liest das Gateway nicht — stehen sie dort, bleiben sie wirkungslos. Um nach Ihrem eigenen Zeitplan zu aktualisieren, nutzen Sie den Befehl aihummer update oben.

Zurückrollen

Das lässt sich im Einzelnen zurückrollen:

  • Binärdatei — sie lässt sich auf die vorherige Version zurücksetzen (Artefakte früherer Ausgaben bleiben im CDN; installieren Sie die gewünschte Version erneut).
  • Datenbankschema — Migrationen sind vorwärtskompatibel, deshalb arbeitet die vorherige Binärdatei auch mit dem neueren Schema; ein eigenes Zurückrollen des Schemas gibt es nicht.
  • Plugins — Versionen werden je Installation verwaltet; setzen Sie ein Plugin bei Bedarf aus dem Katalog auf eine frühere Version zurück.
  • Konfiguration — eine Aktualisierung rührt sie nicht an; stellen Sie sie bei Bedarf aus einer Sicherung wieder her.

Bereitstellungen ohne Ausfallzeiten

AiHummer ist darauf ausgelegt, ohne Ausfallzeit zu upgraden:

  • Führen Sie 2+ Gateways hinter einem Proxy aus. Rollen Sie sie nacheinander aus; die Bereitschaftsprüfung (/readyz) hält einen neu startenden Knoten aus der Rotation, bis er einsatzbereit ist.
  • Der Scheduler ist ein Einzel-Leiter. Die Hintergrundplanung wählt einen einzelnen Führer über ein PostgreSQL Advisory Lock, sodass das Ausführen mehrerer Gateways nicht zu Duplikaten führt geplante Arbeit.
  • Die Lieferung ist idempotent. Zuverlässige Lieferung plus Idempotenzschlüssel bedeuten ein Antwort wird nie zweimal über einen Neustart gesendet, was einen Rolling ausmacht Starte sicher über deine Gateways neu.

Wohin als Nächstes