Skip to main content

Wann du Multi-Root verwendest

Nutze ein Multi-Root-Setup, wenn ein SimpleCloud-Netzwerk Minecraft-Server auf mehr als einer physischen oder virtuellen Maschine ausführen soll.

Voraussetzungen

  • Ein bestehendes SimpleCloud-Netzwerk mit mindestens einem Serverhost
  • Zusätzliche Maschinen, auf denen Serverhosts ausgeführt werden sollen
  • Root- oder sudo-Zugriff auf jeder Maschine

Teil 1: Serverhosts hinzufügen

Füge jede Maschine mit einem frischen Befehl aus dem Dashboard hinzu. Der Befehl installiert die CLI, authentifiziert den Host, registriert ihn im aktuellen Netzwerk und startet den lokalen Serverhost-Prozess.
1

Server-Hosts-Einstellungen öffnen

Gehe zum SimpleCloud Dashboard, melde dich an, öffne Settings und wähle Server Hosts.
2

Add-Host-Befehl erzeugen

Klicke auf Add Host. Das Dashboard erzeugt einen Befehl mit einem kurzlebigen Login-Code für das aktuelle Netzwerk.
3

Befehl auf dem neuen Serverhost ausführen

Kopiere den Befehl und führe ihn auf der neuen Maschine aus.SimpleCloud installiert die CLI, registriert die Maschine und startet den Serverhost. Das kann ein paar Minuten dauern.
4

Verbindung prüfen

Prüfe nach Abschluss, ob die lokale Serverhost-Komponente läuft:
Der neue Serverhost sollte außerdem im Dashboard erscheinen, sobald er mit dem Controller verbunden ist.
Erzeuge für jede Maschine einen eigenen Add Host-Befehl. Jeder Serverhost braucht seine eigene Identität und darf das Verzeichnis secrets/ nicht mit einem anderen Host teilen.

Teil 2: Dateien synchronisieren

Bei mehreren Serverhosts musst du Templates, Workflows und Optionen synchron halten. Wir empfehlen die Verwendung von Syncthing für die automatische Dateisynchronisierung.

Was synchronisiert werden soll

Synchronisiere niemals das Verzeichnis secrets/. Jeder Serverhost benötigt seine eigenen eindeutigen Identitäts-Anmeldedaten.

Dein SimpleCloud-Verzeichnis finden

Der Installationspfad ist benutzerkonfigurierbar. Dein Serverhost-Verzeichnis enthält:
simplecloud
templates
Dies synchronisieren
running

Sync auf dem primären Serverhost initialisieren

Führe dies auf dem Serverhost aus, der als primärer Sync-Host dienen soll:
Die CLI bereitet die verwalteten Verzeichnisse vor, ignoriert templates/cache/, konfiguriert Syncthing für templates/, workflows/ und options/, speichert die Ordner-IDs in .simplecloud-sync.json und gibt einen sc sync join ...-Befehl für den nächsten Serverhost aus.
Wenn du SimpleCloud als root ausführst, füge --as-root hinzu, damit die CLI syncthing@root.service verwendet.

Von einem weiteren Serverhost beitreten

Führe auf dem neuen Serverhost den sc sync join ...-Befehl aus, den sc sync init oder sc sync add ausgegeben hat.
Nach Abschluss gibt der Join-Befehl einen sc sync approve ...-Befehl aus.

Beitretenden Serverhost genehmigen

Führe den ausgegebenen Approve-Befehl auf dem primären Serverhost aus:
Für weitere Serverhosts erzeugst du später auf dem primären Serverhost einen neuen Join-Befehl:
Prüfe den Synchronisierungsstatus auf einem beliebigen Host:

Synchronisierung überprüfen

Teste, ob die Synchronisierung funktioniert:

Best Practices

Server-Verteilung

Konfiguriere Gruppen, um festzulegen, welche Serverhosts sie ausführen können:

Dateisynchronisierungs-Einstellungen

Cache von der Synchronisierung ausschließen

Der Ordner templates/cache/ enthält lokal generierte Dateien. Erwäge, ihn von der Synchronisierung auszuschließen, um unnötige Übertragungen zu vermeiden.

Fehlerbehebung

Symptom: Nach dem Add Host-Befehl wird der Host nicht angezeigt.Lösungen:
  1. Überprüfe, ob der Serverhost läuft: sc status serverhost
  2. Überprüfe die Netzwerkverbindung zum Controller
  3. Überprüfe, ob Anmeldedaten im Verzeichnis secrets/ vorhanden sind
  4. Überprüfe die Serverhost-Logs: sc logs serverhost
Symptom: Geräte werden als “Getrennt” angezeigt.Lösungen:
  1. Stelle sicher, dass die Firewall Port 22000 TCP und UDP erlaubt
  2. Führe sc sync status auf jedem Host aus
  3. Prüfe, ob der sc sync approve ...-Befehl auf dem primären Host ausgeführt wurde
  4. Wenn du als root arbeitest, verwende --as-root bei jedem sc sync-Befehl
Symptom: Template-Änderungen erscheinen nicht auf anderen Serverhosts.Lösungen:
  1. Führe sc sync status aus und prüfe, ob templates, workflows und options konfiguriert sind
  2. Prüfe, ob die Ordner-IDs in .simplecloud-sync.json auf allen Hosts übereinstimmen
  3. Bestätige, dass der beitretende Host mit sc sync approve genehmigt wurde
  4. Prüfe die von sc sync status gemeldeten Syncthing-Verbindungsfehler
Symptom: Server starten auf unerwarteten Serverhosts.Lösungen:
  1. Überprüfe die Gruppenkonfiguration für Host-Beschränkungen
  2. Überprüfe, ob alle Serverhosts die erforderlichen Templates synchronisiert haben
  3. Überprüfe die Serverhost-Verfügbarkeit im Dashboard
Symptom: Dateien mit .sync-conflict im Namen erscheinen.Ursache: Dieselbe Datei wurde gleichzeitig auf mehreren Hosts geändert.Lösungen:
  1. Überprüfe Konfliktdateien und wähle die richtige Version
  2. Vermeide es, dieselbe Datei gleichzeitig auf mehreren Hosts zu bearbeiten
  3. Bestimme einen Host als “primär” für die Template-Bearbeitung

Verwandte Themen