ORLENE Platform Bootstrap 1.0
Zweck
Der Bootstrap beschreibt den vollständigen Erstinitialisierungsprozess einer ORLENE Platform Instance.
Er stellt sicher, dass jede zukünftige Platform Instance nach denselben Regeln eingerichtet wird.
Bootstrap ersetzt keine Betriebssysteminstallation.
Bootstrap beginnt nach einer erfolgreichen Linux-Grundinstallation.
Der Bootstrap ist die erste Handlung einer neuen ORLENE Platform Instance.
Er verbindet eine frisch installierte Infrastruktur mit den Grundsätzen der ORLENE Platform und macht sie zu einem Bestandteil des Gesamtsystems.
Grundsatz
Eine ORLENE Platform Instance wird nicht manuell eingerichtet.
Sie richtet sich anhand des Bootstrap-Prozesses selbst ein.
Damit wird jede Platform Instance reproduzierbar.
Voraussetzungen
Vor Bootstrap müssen vorhanden sein:
- Linux installiert
- SSH-Zugang
- Internetzugang
- /opt/orlene vorhanden
- Administratorzugriff
Bootstrap installiert kein Betriebssystem.
Bootstrap-Version
Bootstrap besitzt eine eigene Version.
Mindestens dokumentiert werden:
- Bootstrap-Version
- Platform-Version
- Erstellungsdatum
Dadurch kann später nachvollzogen werden, mit welcher Bootstrap-Version eine Platform Instance eingerichtet wurde.
Bootstrap-ID
Jede Bootstrap-Ausführung erhält eine eindeutige Bootstrap-ID.
Beispiel:
`BOOT-20260727-0001`
Die Bootstrap-ID dient der Nachvollziehbarkeit.
Sie wird gespeichert:
- im Bootstrap Report
- im Platform Register
- im Audit
- im Lebenslauf
Entscheidungsprinzip
Vor jeder Aktion prüft Bootstrap den aktuellen Zustand. Bootstrap arbeitet niemals blind. Jede Aktion basiert auf einer vorherigen Prüfung.
Jede Phase besitzt mindestens folgende Entscheidungslogik:
Prüfen
↓
Bereits vorhanden?
↓
Ja
↓
Validieren
↓
gültig?
↓
Ja
↓
nächste Phase
↓
Nein
↓
Aktualisieren oder korrigieren
↓
Dokumentieren
↓
WeiterFalls eine Komponente vollständig fehlt:
Prüfen
↓
Nicht vorhanden
↓
Installieren
↓
Verifizieren
↓
Dokumentieren
↓
WeiterLebenszyklus
Neue Platform Instance
↓
Bootstrap starten
↓
System analysieren
↓
Platform Register aktualisieren
↓
Grundstruktur prüfen
↓
Benutzer einrichten
↓
Grundsystem absichern
↓
Docker
↓
PostgreSQL
↓
Platform-Dienste
↓
Dokumentation
↓
Verifizieren
↓
Platform ReadyTechnologische Unabhängigkeit
Die Architektur beschreibt Fähigkeiten, nicht konkrete Programme.
Beispiele:
- Containerverwaltung statt einer Festlegung auf Docker
- Relationale Datenhaltung statt einer Festlegung auf PostgreSQL
- HTTP- und Reverse-Proxy-Dienst statt einer Festlegung auf Nginx
Docker, PostgreSQL und Nginx bleiben mögliche Technologiebeispiele und sind keine Architekturvorgabe. Bootstrap entscheidet anhand der jeweils gültigen Plattformvorgaben, welche konkrete Technologie verwendet wird. Dadurch bleibt die Architektur langfristig unabhängig von einzelnen Produkten.
Phase A
Systemanalyse
Bootstrap dokumentiert:
Hostname
Betriebssystem
Kernel
CPU
RAM
Speicher
Netzwerk
Zeitzone
Virtualisierung
Linux-Version
Alle Daten werden dokumentiert.
Phase B
Platform Register
Bootstrap erzeugt oder aktualisiert automatisch den Eintrag einer Platform Instance mit:
- Hostname
- Standort
- Rolle
- Platform-Version
- Bootstrap-Version
- Bootstrap-ID
- Systemstatus
- Platform Ready
- Erstellt
- letzter Bootstrap
- letztes Update
Bootstrap aktualisiert diese Informationen automatisch.
Phase C
Verzeichnisstruktur
Bootstrap prüft:
/opt/orlene
platform
documentation
products
downloads
releases
backups
logs
scripts
Fehlende Verzeichnisse werden erzeugt.
Vorhandene bleiben erhalten.
Phase D
Benutzer
Bootstrap legt an:
orlene-admin
SSH-Schlüssel werden übernommen.
Root bleibt zunächst aktiv.
Spätere Härtung erfolgt kontrolliert.
Phase E
Grundsystem
Bootstrap:
führt Updates durch
prüft Zeitzone
prüft Locale
prüft Paketquellen
prüft Uhrzeit
prüft Speicher
prüft Netzwerk
Dokumentiert Ergebnisse.
Phase F
Docker
Falls Docker fehlt:
installieren
Version dokumentieren
Installation testen
Dokumentieren
Phase G
PostgreSQL
Falls PostgreSQL fehlt:
installieren
Version dokumentieren
erste Platform-Datenbank vorbereiten
Phase H
Platform Services
Bootstrap bereitet vor:
Documentation Space
Build
Release
Downloads
weitere zukünftige Platform Services
Noch keine ORLENE-Produkte installieren.
Phase I
Bootstrap-Bericht
Nach Abschluss erzeugt Bootstrap automatisch einen Bootstrap Report mit:
- Bootstrap-ID
- Bootstrap-Version
- Platform-Version
- Startzeit
- Endzeit
- Gesamtdauer
- Hostname
- Platform Instance
- installierte Komponenten
- Prüfergebnisse
- Warnings
- Recovery durchgeführt
- Rollback durchgeführt
- Platform Ready: Ja / Nein
- Entscheidungen je Phase:
- Prüfung
- Ergebnis
- Aktion
- Begründung
Phase J
Recovery
Falls Bootstrap unterbrochen wurde:
Bootstrap erkennt den vorhandenen Zustand.
Bootstrap beginnt nicht erneut von vorne.
Bootstrap setzt die Initialisierung kontrolliert fort.
Alle Recovery-Schritte werden dokumentiert.
Rollback
Falls während Bootstrap ein kritischer Fehler entsteht:
Bootstrap
↓
Fehler erkennen
↓
Rollback vorbereiten
↓
bereits ausgeführte Schritte dokumentieren
↓
System in sicheren Zustand bringen
↓
Audit erzeugen
↓
Administratorentscheidung abwartenBootstrap darf niemals halb eingerichtete Platform Instanzen als erfolgreich markieren.
Kontrolliertes Abbruchrecht
Bootstrap besitzt jederzeit das Recht, die Initialisierung kontrolliert abzubrechen.
Ein Abbruch erfolgt insbesondere, wenn:
- Integrität nicht gewährleistet werden kann
- Daten beschädigt würden
- Voraussetzungen fehlen
- eine Verifikation fehlschlägt
- Sicherheitsanforderungen verletzt werden
Bei einem Abbruch muss Bootstrap:
- den Status speichern
- ein Audit-Ereignis erzeugen
- den Bootstrap Report ergänzen
- das Platform Register aktualisieren
- den Administrator informieren
Keine Platform Instance darf nach einem Abbruch fälschlicherweise den Zustand `Platform Ready` erhalten.
Bootstrap-Zustände
Der offizielle Zustandsautomat umfasst:
Pending
Running
Recovery
Rollback
Failed
Completed
Platform ReadyBootstrap darf jederzeit eindeutig angeben, in welchem Zustand sich eine Platform Instance befindet.
Platform Ready
`Platform Ready` ist nicht lediglich ein Status, sondern die verbindliche Bestätigung der Betriebsbereitschaft.
Eine Platform Instance erhält diesen Zustand ausschließlich, wenn:
- alle Pflichtphasen erfolgreich abgeschlossen wurden
- alle Verifikationen erfolgreich waren
- keine kritischen Fehler offen sind
- kein Recovery notwendig ist
- kein Rollback aktiv ist
Erst danach gilt eine Platform Instance offiziell als betriebsbereit. Sobald eine dieser Bedingungen nicht erfüllt ist, darf Bootstrap `Platform Ready` nicht vergeben.
Architekturgrundsätze
- Bootstrap richtet keine Produkte ein.
Bootstrap richtet ausschließlich Platform Instanzen ein.
- Bootstrap verändert keine vorhandenen Daten ohne Sicherung.
- Bootstrap dokumentiert jede Änderung.
- Bootstrap erzeugt Audit-Ereignisse.
- Bootstrap aktualisiert das Platform Register.
- Bootstrap muss beliebig oft ausführbar sein.
- Bootstrap erkennt bereits eingerichtete Komponenten.
- Bootstrap installiert nur fehlende Komponenten.
- Bootstrap überschreibt niemals ungefragt bestehende Konfigurationen.
- Jede Platform Instance besitzt denselben Bootstrap-Prozess.
- Eine Platform Instance gilt erst dann als Bestandteil der ORLENE Platform, wenn sie den Bootstrap erfolgreich abgeschlossen hat und den Zustand 'Platform Ready' erreicht.
September-Ziel
Für September umfasst Bootstrap mindestens:
Systemanalyse
Platform Register
Verzeichnisstruktur
orlene-admin
Docker
PostgreSQL
Bootstrap Report
Weitere Funktionen werden später ergänzt.