feat(setup): Cluster-Join komplett in GUI — kein CLI mehr nötig
POST /setup/join-cluster macht alles was bisher edgeguard-ctl cluster-join tat: CSR generieren, Certs vom Primary holen, schreiben, auto-registrieren, Setup als Cluster-Node markieren. Setup-Wizard Node-Modus fragt jetzt direkt Primary-FQDN + Join-Token ab. Nach Submit: Erfolgsmeldung + einziger verbleibender Schritt (systemctl restart). Neue interne Bibliothek: internal/services/clusterjoin — wird von Handler und CLI (edgeguard-ctl cluster-join) gleichermaßen genutzt, keine Duplizierung. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -327,7 +327,7 @@
|
||||
"nodePreflightTitle": "Vor dem Fortfahren",
|
||||
"nodePreflightDesc": "Stelle sicher, dass EdgeGuard auf dem Primary bereits läuft und du dort einen Join-Token erstellen kannst (Cluster-Seite). Du benötigst ihn im nächsten Schritt.",
|
||||
"nodeSubmit": "Als Cluster-Knoten einrichten",
|
||||
"nodeSuccessTitle": "Knoten konfiguriert",
|
||||
"nodeSuccessTitle": "Erfolgreich beigetreten!",
|
||||
"nodeJoinTitle": "Nächster Schritt: Cluster beitreten",
|
||||
"nodeJoinDesc": "Dieser Server ({{fqdn}}) ist konfiguriert. Führe jetzt den Join-Befehl aus, um ihn mit dem Primary zu verbinden.",
|
||||
"nodeStep1Title": "Join-Token auf dem Primary generieren",
|
||||
@@ -336,7 +336,15 @@
|
||||
"nodeStep2Desc": "Ersetze <primary-fqdn> mit dem FQDN deines Primarys und <token> mit dem Token aus Schritt 1:",
|
||||
"nodeStep3Title": "API neu starten",
|
||||
"nodeStep3Desc": "Nach erfolgreichem Join-Befehl API neu starten, damit die replizierte Konfiguration übernommen wird:",
|
||||
"nodeLoginNote": "Der Login erfolgt mit den Admin-Zugangsdaten des Primarys. Das funktioniert sobald die Datenbankreplikation aufgebaut wurde (der Join-Befehl richtet das ein)."
|
||||
"nodeLoginNote": "Der Login erfolgt mit den Admin-Zugangsdaten des Primarys. Das funktioniert sobald die Datenbankreplikation aufgebaut wurde (der Join-Befehl richtet das ein).",
|
||||
"primaryFqdn": "Primary-FQDN",
|
||||
"primaryFqdnHint": "FQDN des bestehenden Primary-EdgeGuard-Knotens (z.B. eg1.example.com).",
|
||||
"joinToken": "Join-Token",
|
||||
"joinTokenHint": "Auf dem Primary generieren: Cluster-Seite → Knoten hinzufügen → Join-Token generieren.",
|
||||
"joinInsecure": "TLS-Prüfung überspringen (falls der Primary ein self-signed Zertifikat hat)",
|
||||
"nodeSuccessDesc": "Cluster-Zertifikate wurden geschrieben. Noch ein letzter Schritt:",
|
||||
"nodeRestartTitle": "Neustart erforderlich",
|
||||
"nodeRestartDesc": "Führe folgenden Befehl auf diesem Server aus, um die neuen Cluster-Zertifikate zu laden:"
|
||||
},
|
||||
"dashboard": {
|
||||
"title": "Dashboard",
|
||||
|
||||
@@ -327,7 +327,7 @@
|
||||
"nodePreflightTitle": "Before you continue",
|
||||
"nodePreflightDesc": "Make sure EdgeGuard is already running on your primary node and you can generate a join token there (Cluster page). You will need it in the next step.",
|
||||
"nodeSubmit": "Configure as cluster node",
|
||||
"nodeSuccessTitle": "Node configured",
|
||||
"nodeSuccessTitle": "Successfully joined!",
|
||||
"nodeJoinTitle": "Next: join the cluster",
|
||||
"nodeJoinDesc": "This box ({{fqdn}}) is configured. Now run the join command below to connect it to the primary.",
|
||||
"nodeStep1Title": "Generate a join token on the primary",
|
||||
@@ -336,7 +336,15 @@
|
||||
"nodeStep2Desc": "Replace <primary-fqdn> with your primary's FQDN and <token> with the token from step 1:",
|
||||
"nodeStep3Title": "Restart the API",
|
||||
"nodeStep3Desc": "After the join command completes, restart the API to pick up the replicated configuration:",
|
||||
"nodeLoginNote": "Login uses the admin credentials from the primary. This will work once database replication is established (the join command sets this up)."
|
||||
"nodeLoginNote": "Login uses the admin credentials from the primary. This will work once database replication is established (the join command sets this up).",
|
||||
"primaryFqdn": "Primary FQDN",
|
||||
"primaryFqdnHint": "FQDN of the existing primary EdgeGuard node (e.g. eg1.example.com).",
|
||||
"joinToken": "Join token",
|
||||
"joinTokenHint": "Generated on the primary: Cluster page → Add node → Generate join token.",
|
||||
"joinInsecure": "Skip TLS verification (use if the primary has a self-signed certificate)",
|
||||
"nodeSuccessDesc": "Cluster certs have been written. One last step:",
|
||||
"nodeRestartTitle": "Restart required",
|
||||
"nodeRestartDesc": "Run the following command on this box to load the new cluster certificates:"
|
||||
},
|
||||
"dashboard": {
|
||||
"title": "Dashboard",
|
||||
|
||||
Reference in New Issue
Block a user