Auflagen sind Daten an der Version
Zu jeder Version gehört eine Anlage, die ihre Auflagen nennt: die Plattformen nach dem Image Index, also Architektur und Betriebssystem, die Mindestversion der Laufzeit, die benötigten Ressourcen, die Vorgängerversionen, von denen aus ein Übergang erlaubt ist, die Zulassungen, die die Umgebung haben muss, und die Markierungen der Daten, die die Version verarbeiten darf.
Die Anlage hängt über den Digest am Paket und ist signiert, wie Stückliste und Herkunft. Die Auflagen stehen damit nicht in einer Handreichung, sondern bei dem Paket, für das sie gelten, und ändern sich nicht, ohne dass sich der Digest der Anlage ändert.
Auflage mal Umgebung
Je Auflage steht fest, ob die Umgebung sie erfüllt. Selbst heißt erfüllt, mit Freigabe heißt nur mit Ausnahme, nie heißt nicht erfüllt. Die zweite Version stellt eine Auflage mehr.
- Architektur: Betrieb selbst, Erprobung selbst, Abgeschottet selbst.
- Laufzeit: Betrieb selbst, Erprobung selbst, Abgeschottet selbst.
- Vorversion: Betrieb selbst, Erprobung selbst, Abgeschottet selbst.
- Zulassung: Betrieb selbst, Erprobung mit freigabe, Abgeschottet selbst.
- Markierung der Daten: Betrieb selbst, Erprobung selbst, Abgeschottet selbst.
Eigenschaften der Umgebung
Jede Umgebung meldet ihre Eigenschaften: Architektur, Version der Laufzeit, Ressourcen, die installierten Versionen und ihre Zulassungen, jede Zulassung mit Nachweis und Ablaufdatum. Die Meldung ist ein Datensatz, den der Ort signiert, und HERMES verlässt sich nicht auf eine Annahme, was dort stehen müsste.
Wo eine Umgebung keine Verbindung nach außen hat, kommt die Meldung auf dem dafür vorgesehenen Rückweg, etwa als geprüfter Datenträger. Sie trägt ihren Zeitpunkt, und der Abgleich nennt, wie alt der Stand ist, mit dem er rechnet. Ein veraltetes Inventar ist ein Befund und kein Freibrief.
Der Abgleich vor dem Soll
Vor einem Rollout rechnet HERMES für die Version und die Menge der Zielumgebungen, welche Umgebungen die Auflagen erfüllen. Das Soll wird nur für diese geschrieben. Für alle übrigen entsteht ein Bericht, der je Umgebung nennt, welche Auflage fehlt: die Architektur passt nicht, die Zulassung fehlt oder ist abgelaufen, die Vorversion fehlt.
Fehlt die Vorversion, berechnet HERMES den Übergang. Die erlaubten Wege von Version zu Version bilden einen Graphen, und für eine Umgebung auf einer alten Version wird der kürzeste zulässige Pfad gesucht, etwa über eine Zwischenversion, die eine Migration ausführt. Das Soll sieht dann zwei Schritte vor und nicht einen unmöglichen.
Die Wellen bestehen nur aus tauglichen Umgebungen. Ein Rollout, der mitten in der Welle an einer Auflage scheitert, weil sie vorher niemand geprüft hat, soll es nicht geben.
Erst abgleichen, dann ausrollen
Die Auflagen der Version werden mit den Eigenschaften der Umgebungen verglichen. Taugliche Umgebungen bekommen ein Soll, für die übrigen entsteht ein Bericht mit der fehlenden Auflage.
- Ablauf von Version bis Umgebungen: Auflagen, Abgleich, Soll, Bericht.
- Auflagen zu Abgleich.
- Abgleich erfüllt Soll.
- Abgleich fehlt Bericht.
Ausnahmen, befristet und freigegeben
Eine Auflage lässt sich nicht immer sofort erfüllen. Dann kann eine Ausnahme bestehen: für genau eine Version, eine Umgebung und eine Auflage, mit Begründung, Verantwortlichem und Ablaufdatum, freigegeben von dem, der für die Auflage zuständig ist. Eine Ausnahme ist ein Eintrag im Verlauf und kein stilles Überspringen.
Läuft sie ab, erscheint die Umgebung im Abweichungsbericht, und es braucht eine neue Entscheidung. Was dann mit der Umgebung geschieht, ist eine Änderung wie jede andere und braucht dieselbe Freigabe. HERMES nimmt eine laufende Umgebung nicht von sich aus zurück.
Auflagen und Umgebungen ändern sich
Der Abgleich endet nicht mit dem Rollout. Läuft eine Zulassung ab, wird die Hardware getauscht oder eine Umgebung neu eingestuft, meldet sie neue Eigenschaften, und HERMES prüft die laufenden Versionen erneut gegen ihre Auflagen. Eine nicht mehr erfüllte Auflage ist ein Befund mit Zeitpunkt und Grund.
Welche Folge ein Befund hat, hängt von der Auflage ab. Weiche Auflagen führen zu einer Meldung an den Verantwortlichen. Bei harten, etwa einer fehlenden Zulassung für eine Markierung der Daten, hält HERMES weitere Wellen an und stellt die Frage, ob der Betrieb weiterläuft, an die zuständige Stelle. Ein Abschalten von sich aus gehört nicht dazu.
Eckdaten
- Auflagen
- Plattformen nach dem Image Index, Mindestversion der Laufzeit, Ressourcen, Vorversionen, Zulassungen, Markierungen der Daten
- Ablage
- signierte Anlage am Digest des Pakets
- Umgebung
- meldet Eigenschaften als signierten Datensatz mit Zeitpunkt; Zulassungen mit Nachweis und Ablaufdatum
- Abgleich
- vor dem Soll; taugliche Umgebungen bekommen ein Soll, für die übrigen ein Bericht mit der fehlenden Auflage
- Übergänge
- Graph erlaubter Versionswege; kürzester zulässiger Pfad
- Ausnahme
- für Version, Umgebung und Auflage; begründet, befristet, freigegeben, im Verlauf
- Danach
- fortlaufende Prüfung der laufenden Versionen; harte Auflagen halten weitere Wellen an
- Ohne Verbindung
- Inventar über den vorgesehenen Rückweg, mit Alter
Weiter
- HERMES · TechnikPaketeWie HERMES jede Version als OCI-Image mit SHA-256-Digest, Stückliste nach SPDX oder CycloneDX und Signatur baut, reproduzierbar und prüfbar.
- HERMES · TechnikWellenWie HERMES eine Version in Wellen ausrollt, Gesundheitssignale auswertet, bei Abweichung selbsttätig zurücknimmt und Soll und Ist nach GitOps abgleicht.
- HERMES · TechnikAbgeschottetWie eine Version über geprüfte Datenträger oder eine Datendiode in ein Netz ohne Rückkanal kommt und dort geprüft, gespiegelt und betrieben wird.
- HERMES · TechnikKanäleWie HERMES Versionen über Kanäle von Umgebung zu Umgebung befördert, ohne neu zu bauen, Abweichungen sichtbar hält und mehrere Linien nebeneinander pflegt.
- HERMES · TechnikSchwachstellenWie HERMES aus Stücklisten und Inventar findet, welche Umgebungen eine bekannte Schwachstelle betrifft, nach VEX bewertet und die Korrektur als Paket ausrollt.
- ProduktHERMESLiefert die Plattform in Wellen aus, auch in abgeschottete Netze
Welche Voraussetzungen einer neuen Version stehen bei Ihnen heute nur im Kopf eines Kollegen? Die schreiben wir mit Ihnen als Auflagen auf.