Verbindung / Toolchain / Diagnose

Stellen Sie zuerst die Remote-Verbindung her,
und grenzen Sie das Problem anschließend schrittweise ein.

Dieser Leitfaden unterstützt die Verbindung mit einem dedizierten physischen Knoten: Prüfen Sie zuerst Knotenadresse und Systemzugangsdaten und konfigurieren Sie anschließend SSH, VNC, Xcode und den CI-Runner. Bei Problemen prüfen Sie Netzwerk, Authentifizierung, System, Toolchain und Speicher in dieser Reihenfolge, um unnötige Wiederholungen zu vermeiden.

Verbindungsarten SSH / VNC
Systemoberfläche GUI / CLI
Ressourcentyp Dedizierter physischer Rechner
Knotenbetrieb 365 Tage

01 / Erste Verbindung

Prüfen Sie vor der ersten Verbindung fünf Informationskategorien

Raten Sie nicht zuerst über das Netzwerk und setzen Sie das System nicht zurück. Der Knoteneintrag in der Konsole ist die maßgebliche Referenz. Kopieren Sie die Adresse ohne Protokollpräfix, Leerzeichen oder zusätzliche Zeichen neben dem Port.

  1. 01

    Knotenadresse und Region

    Prüfen Sie Knoten-ID, Region, Hostadresse und Verbindungsport der aktuellen Instanz. Die Region muss mit der Bestellung übereinstimmen. Bei einer Netzwerk-Allowlist notieren Sie zusätzlich die aktuelle öffentliche Ausgangsadresse des Clients.

    Prüfen: NODE ID / HOST / REGION / PORT

  2. 02

    Systemkonto

    Bei Kontonamen wird zwischen Groß- und Kleinschreibung unterschieden. Kontoname im SSH-Befehl, im VNC-Anmeldefenster und in der Konsole müssen übereinstimmen. Verwenden Sie nicht die E-Mail-Adresse als Systembenutzernamen.

    Format: username@host

  3. 03

    Temporäre Zugangsdaten

    Prüfen Sie vor der ersten Nutzung, ob die Zugangsdaten der aktuellen Konsolenversion entsprechen. Ändern Sie das temporäre Passwort direkt nach der Anmeldung. Nach einer Änderung müssen Sie die neuen Zugangsdaten verwenden; die alten sind nicht mehr gültig.

    Aktion: Anmelden → Ändern → Sicher speichern

  4. 04

    SSH-Client

    Unter macOS und in gängigen Linux-Umgebungen können Sie direkt das Terminal verwenden. Prüfen Sie zuerst die Port-Erreichbarkeit und starten Sie anschließend SSH. Beim ersten Host-Fingerabdruck bestätigen Sie ihn erst nach Prüfung der Knotenadresse.

    Empfehlung: Verbindungs-Timeout 10 s / Keepalive 30 s

  5. 05

    Bildschirmfreigabe- oder VNC-Client

    Verwenden Sie einen VNC-fähigen Client und prüfen Sie, ob das Verbindungsziel den richtigen Port enthält. Starten Sie zunächst mit niedriger Auflösung und adaptiver Qualität. Erhöhen Sie die Anzeigeparameter erst, wenn die Eingabe stabil ist.

    Start: 1920×1080 / 24 Bit / adaptiv

Empfohlene Prüfreihenfolge:Prüfen Sie Adresse, Port, Konto und Zugangsdaten zuerst per SSH und verbinden Sie sich danach mit der grafischen Oberfläche. Funktioniert SSH, aber VNC nicht, lässt sich die Suche auf Grafikdienst, VNC-Port und Clientparameter eingrenzen.

02 / Mini-Glossar

Vereinheitlichen Sie zuerst die Begriffe, dann prüfen Sie die Konfiguration

Die folgenden Begriffe erscheinen in Bestellungen, der Konsole, Verbindungsdokumentationen und Fehlerprotokollen. Jeder Begriff bezeichnet eine klare Ressourcengrenze oder technische Aktion.

Physischer Knoten
Die Mac-mini-Hardware, auf der macOS tatsächlich ausgeführt wird. Knotenadresse, Region und Knoten-ID identifizieren die bereitgestellte Ressource gemeinsam.
Dediziert
Ein einzelner Mandant nutzt Chip, Arbeitsspeicher und Speicher des gesamten Geräts; die Betriebssysteminstanz wird nicht mit anderen Mandanten geteilt.
Cloud-Mac
Ein auf einem entfernten Knoten bereitgestellter Mac, auf den über das Netzwerk zugegriffen wird. MiniDeploy bietet dedizierte physische Rechner, keine virtuellen Maschinen.
VNC
Protokoll zur Übertragung der entfernten grafischen Oberfläche sowie von Tastatur- und Zeigereingaben. Das Nutzungserlebnis hängt vor allem von Round-Trip-Latenz, Auflösung, Farbtiefe und Bildänderungen ab.
SSH
Verschlüsselte Verbindung für entfernte Kommandozeilen, Dateisynchronisierung und Automatisierung; geeignet für Umgebungsprüfungen, Builds und Protokollsammlung.
self-hosted runner
Vom Team verwaltete Ausführungsinstanz, die CI-Aufträge entgegennimmt. Xcode-Version, Cache-Pfade, Arbeitsverzeichnis und Build-Abhängigkeiten lassen sich festlegen.
Toolchain
Gesamtheit aus Xcode, Kommandozeilen-Tools, Paketmanager, Ruby, fastlane, Skripten und Umgebungsvariablen, die für einen Build benötigt wird.
Knotenlatenz
Zeit für einen Datenrundlauf zwischen Client und Knoten, meist in Millisekunden angegeben. Je niedriger der Wert, desto schneller reagiert der Remote-Desktop normalerweise auf Eingaben.

03 / Terminalbeispiel

Verbindung, Build und Upload mit drei Ausgaben prüfen

Die Terminalausgabe sollte drei Fragen beantworten: Wurde der richtige Knoten erreicht, verwendet Xcode die erwartete Version und wurde das Build-Artefakt von der Pipeline übernommen?

Der Hostname im Beispiel zeigt nur die Befehlsstruktur. Maßgeblich sind Adresse, Port, Konto und Knoten-ID aus der Konsole. Bewahren Sie beim Erfassen von Protokollen Zeitstempel und fehlgeschlagene Befehle auf, entfernen Sie jedoch Passwörter, private Schlüssel und Signaturmaterial.

04 / Migrationspfad

Dreistufiger Migrationspfad vom lokalen zum Cloud-Mac

Migrieren Sie nicht alle Verzeichnisse auf einmal. Übertragen Sie zuerst Projektdaten, reproduzieren Sie anschließend die Toolchain und binden Sie zuletzt CI an. Legen Sie für jeden Schritt überprüfbare Abschlusskriterien fest.

  1. SCHRITT 01

    Projekt und Konfigurationsliste synchronisieren

    Synchronisieren Sie zuerst Code-Repository, Build-Skripte und erforderliche Ressourcen. Übertragen Sie große Dateien separat und berechnen Sie vor und nach der Übertragung Prüfsummen. Kopieren Sie nicht den gesamten Cache des alten Rechners.

    • Repository-Branch und Commit-Hash dokumentieren
    • Liste der Abhängigkeitsversionen exportieren
    • Anzahl und Größe wichtiger Dateien prüfen
    Abnahmekriterium Code lässt sich auschecken, Abhängigkeitsliste ist lesbar
  2. SCHRITT 02

    Xcode- und Signatur-Toolchain reproduzieren

    Dokumentieren Sie Xcode-Hauptversion, Pfad der Kommandozeilen-Tools sowie Ruby- und fastlane-Version. Importieren Sie Signaturmaterial über einen kontrollierten Prozess und prüfen Sie Dateirechte und Gültigkeitsbereich.

    • Prüfen xcode-select -p
    • Paketmanager- und Skriptversionen festlegen
    • Einen lokalen Release-Build ausführen
    Abnahmekriterium Derselbe Commit lässt sich stabil archivieren
  3. SCHRITT 03

    self-hosted runner anbinden

    Richten Sie für den Runner ein eigenes Arbeitsverzeichnis und Dienstkonto ein. Begrenzen Sie die Label-Zuordnung, legen Sie die Parallelität fest und trennen Sie Cache-, Protokoll- und Artefaktpfade vom Quellverzeichnis.

    • Nach der Registrierung einen Minimaltest ausführen
    • Cache-Treffer und Bereinigungsregeln prüfen
    • Sicherstellen, dass Fehlerprotokolle zurückübertragen werden
    Abnahmekriterium Commit-Trigger, Build und Rückübertragung funktionieren durchgängig

05 / Remote-Desktop

Remote-Mac-Parameter mit geringer Last starten

Die Remote-Desktop-Erfahrung hängt nicht nur von der Bandbreite ab. Knotenlatenz, Auflösung, Farbtiefe, Bildrate, Client-Skalierung und Hintergrundübertragungen beeinflussen die Reaktion auf Eingaben.

macOS-Bildschirmfreigabe

Geeignet für den Zugriff auf die grafische Oberfläche von einem Mac-Client. Verwenden Sie Hostadresse und Port aus der Konsole; das Anmeldekonto muss exakt dem Systemkonto entsprechen.

Startauflösung
1920×1080
Farbtiefe
24 Bit
Empfohlene verfügbare Bandbreite
≥ 15 Mbit/s
Interaktionsempfehlung
Adaptive Qualität bevorzugen

Wenn die Anzeige verzögert reagiert, stoppen Sie zuerst die Synchronisierung im Hintergrund und reduzieren Sie anschließend die Remote-Auflösung. Ändern Sie Auflösung, Farbtiefe und Komprimierung nicht gleichzeitig, sonst lässt sich der eigentliche Einflussfaktor schwer bestimmen.

Universeller VNC-Client

Geeignet für plattformübergreifenden Zugriff. Aktivieren Sie adaptive Komprimierung und deaktivieren Sie unnötige Animationen. Falls Bildqualität und Farbtiefe getrennt steuerbar sind, lassen Sie die Qualität zunächst automatisch und reduzieren Sie nur die Farbtiefe.

Startauflösung
1600×900
Farbtiefe bei schwacher Verbindung
16 Bit
Empfohlene verfügbare Bandbreite
≥ 10 Mbit/s
Verbindungs-Keepalive
30–60 s

Bei deutlich verzögerter Eingabe trotz scharfem Bild prüfen Sie zuerst die Round-Trip-Latenz zwischen Client und Knoten. Eine höhere Auflösung behebt Netzwerkschwankungen nicht, sondern erhöht nur die Kodierungs- und Übertragungslast.

Einsatzszenario Ausgangsauflösung Farbtiefe Bandbreitenempfehlung Zuerst anpassen
Terminal und leichte Bearbeitung 1600×900 16 Bit ≥ 8 Mbit/s Dynamische Bildinhalte reduzieren
Xcode-Codierung und Debugging 1920×1080 24 Bit ≥ 15 Mbit/s Verbindung mit niedriger Latenz beibehalten
Entwicklung mit mehreren Fenstern 2560×1440 24 Bit ≥ 25 Mbit/s Zuerst Stabilität prüfen
Häufige Bildänderungen 1920×1080 24 Bit ≥ 30 Mbit/s Bildrate oder Qualität reduzieren

Die Bandbreitenwerte sind Ausgangspunkte für die Konfiguration und keine Aussage über die Latenz. Für Entwicklung und Administration über den Remote-Desktop sollten Sie einen Client-nahen Knoten bevorzugen und die Leistung unter den tatsächlichen Netzwerkbedingungen prüfen.

06 / CI/CD

Den Runner reproduzierbar machen, nicht nur einmal ausführen

CI ist nicht erst fertig, wenn einmal ein grünes Ergebnis erscheint. Derselbe Commit muss sich auch nach dem Bereinigen des Arbeitsverzeichnisses wiederholt bauen lassen, und bei Fehlern müssen ausreichend Protokolle erhalten bleiben.

Registrierung

Runner registrieren

  • Mit einem eigenen Dienstkonto ausführen
  • Labels müssen mindestens Architektur und Xcode-Version unterscheiden
  • Standardparallelität festlegen auf 1; nach Prüfung der Last anpassen
  • Registrierungstoken nur während der Konfiguration verwenden
Workspace

Arbeitsverzeichnisse isolieren

  • Für jeden Auftrag ein eigenes Checkout-Verzeichnis verwenden
  • Quellcode, Cache, Protokolle und Artefakte getrennt speichern
  • Temporäre Dateien nach Abschluss des Auftrags bereinigen
  • Keine beschreibbaren Konfigurationsdateien projektübergreifend gemeinsam verwenden
Cache

Caching-Strategie

  • Cache-Schlüssel enthalten die Zusammenfassung der Abhängigkeitssperrdatei
  • Kapazitätsgrenze und Ablaufbedingungen für den Cache festlegen
  • Bei Cache-Fehlern einen vollständigen Neuaufbau zulassen
  • Signaturmaterial und kurzlebige Zugangsdaten nicht cachen
Signing

Build-Zertifikate

  • Erforderliches Material projektspezifisch importieren
  • Dateirechte und zugriffsberechtigte Konten beschränken
  • Gültigkeitsdauer dokumentieren und frühzeitig prüfen
  • Auftragsprotokolle dürfen keine vertraulichen Inhalte ausgeben
Logs

Protokollaufbewahrung

  • Auftragsnummer, Commit-Hash und Zeitstempel aufbewahren
  • Standard- und Fehlerausgabe gemeinsam speichern
  • Bei Fehlern eine Diagnosezusammenfassung hochladen
  • Vor dem Supportversand eine Datenbereinigung durchführen
Validation

Minimaler Abnahmetest

  • System- und Xcode-Version ausgeben
  • Abhängigkeiten abrufen und Unit-Tests ausführen
  • Ein eindeutig erkennbares Build-Artefakt erzeugen
  • Nach der Verzeichnisbereinigung erneut ausführen
Ressourcengrenze:Die M4-Core-Konfiguration umfasst Mac Mini M4, 16 GB RAM und 256 GB SSD. Parallele Aufgaben beanspruchen gleichzeitig Arbeitsspeicher, Speicher-I/O und Netzwerk. Messen Sie vor der Anbindung mehrerer Pipelines die Spitzenlast eines einzelnen Auftrags, statt die Parallelität direkt zu erhöhen.

07 / Diagnosebaum

Über den Fehlerbaum zur passenden Diagnose

Ändern Sie pro Versuch nur eine Variable und dokumentieren Sie Zeitpunkt, Befehl, Rückgabewert und Clientnetzwerk. Wiederholtes Klicken auf die Verbindungsschaltfläche liefert in der Regel keine zusätzlichen Informationen.

Keine Verbindung: zuerst Adresse und Port unterscheiden
  1. Bestätigen Sie in der Konsole, dass Knotenstatus, Adresse, Region und Port korrekt übernommen wurden.
  2. Prüfen Sie, ob das lokale Netzwerk den Zielport beschränkt. Ein Netzwerkwechsel dient nur zum Vergleich, nicht als dauerhafte Lösung.
  3. Ermitteln Sie per Porttest, ob ein Timeout, eine Ablehnung oder eine erfolgreiche Verbindung vorliegt, und dokumentieren Sie den vollständigen Zeitpunkt.
  4. Sind SSH und VNC nicht erreichbar, übermitteln Sie Knoten-ID, Stadt des Clients, Netzbetreiber und Testergebnis.
  5. Ist SSH erreichbar, VNC jedoch nicht, prüfen Sie VNC-Port, Format des Clientziels und Status des Grafikdienstes.
Authentifizierung fehlgeschlagen: Konto, Zugangsdatenversion und Eingabe prüfen
  1. Stellen Sie sicher, dass Sie den Systemkontonamen verwenden, nicht E-Mail-Adresse, Knoten-ID oder Gerätenamen.
  2. Prüfen Sie die temporären Zugangsdaten erneut in der Konsole. Nach einer Passwortänderung müssen die aktualisierten Zugangsdaten verwendet werden.
  3. Prüfen Sie Tastaturlayout, Groß-/Kleinschreibung, Leerzeichen und Sonderzeichen. Vermeiden Sie das Kopieren aus Rich-Text.
  4. Bei fehlgeschlagener SSH-Schlüssel-Authentifizierung prüfen Sie, ob der öffentliche Schlüssel im richtigen Konto hinterlegt ist und Verzeichnis- sowie Dateirechte stimmen.
  5. Beenden Sie nach mehreren Fehlversuchen die Wiederholungen. Dokumentieren Sie Client, Zeitpunkt und Rückmeldung und reichen Sie anschließend ein Ticket ein.
Anzeige verzögert: hohe Latenz, zu wenig Bandbreite oder Hintergrundlast unterscheiden
  1. Messen Sie zunächst die Round-Trip-Latenz vom Client zum Knoten und beobachten Sie über mehrere Messungen Schwankungen oder Paketverluste.
  2. Pausieren Sie Codesynchronisierung, Abhängigkeitsdownloads und Uploads großer Dateien und prüfen Sie, ob die Eingabereaktion zurückkehrt.
  3. Reduzieren Sie die Auflösung auf 1600×900und die Farbtiefe auf 16 Bit; alle anderen Einstellungen unverändert lassen.
  4. Deaktivieren Sie dynamischen Desktop, Transparenzeffekte und Fenster mit hoher Aktualisierungsrate, um Bildänderungen zu reduzieren.
  5. Tritt das Problem nur bei einem bestimmten Client auf, vergleichen Sie es mit einem anderen Client und dokumentieren Sie die Version.
Build fehlgeschlagen: Versionen, Abhängigkeiten, Rechte und Umgebungsvariablen eingrenzen
  1. Geben Sie aktuelle Xcode-Version, Pfad der Kommandozeilen-Tools, Architektur und Ziel-SDK aus.
  2. Prüfen Sie Sperrdateien der Abhängigkeiten, löschen Sie projektspezifische Derived Data und führen Sie einen vollständigen Build aus.
  3. Vergleichen Sie Ruby-, fastlane-, Paketmanager- und Skriptversionen auf lokalem Rechner und Knoten.
  4. Prüfen Sie die erforderlichen Lese- und Schreibrechte für Arbeits-, temporäre und Artefaktverzeichnisse.
  5. Sichern Sie den ersten tatsächlichen Fehler samt Kontextprotokoll; übermitteln Sie nicht nur den abschließenden Exit-Code.
Speicher knapp: zuerst wachsendes Verzeichnis finden, dann rückgängig machbar bereinigen
  1. Prüfen Sie den freien Speicher des Systemvolumes und ermitteln Sie die Größen von Quellcode, Cache, Derived Data, Simulator- und Archivdaten nach Verzeichnis.
  2. Löschen Sie zuerst regenerierbare Projekt-Caches und temporäre Dateien fehlgeschlagener Aufträge.
  3. Legen Sie für CI-Arbeitsverzeichnisse eine Aufbewahrungsanzahl fest, damit alte Checkouts und Artefakte nicht dauerhaft anwachsen.
  4. Synchronisieren Sie langfristig benötigte Artefakte mit dem Team-Speicher und löschen Sie die Kopie auf dem Knoten erst nach erfolgreicher Prüfsummenprüfung.
  5. Übersteigt die Arbeitslast die Kapazität der 256-GB-SSD dauerhaft, prüfen Sie beim Bestellen eine Speichererweiterung.

08 / Sicherheitsbetrieb

Behandeln Sie die erste Verbindung als sichere Übergabe

Ein dedizierter physischer Rechner schafft klare Ressourcengrenzen. Konten, Schlüssel, Projektdateien und Zugriffsquellen auf dem Knoten müssen dennoch nach dem Prinzip der geringsten Rechte verwaltet werden.

Temporäre Zugangsdaten ändern

Legen Sie direkt nach der ersten Anmeldung ein neues, starkes Passwort fest und speichern Sie es in einem vom Team freigegebenen Zugangsdaten-Manager. Übermitteln Sie Passwörter nicht über Build-Protokolle oder gewöhnliche Dokumente.

Herkunft des Fernzugriffs beschränken

Beschränken Sie den Zugriff auf SSH und VNC auf die tatsächlich benötigten Team-Ausgangsadressen. Aktualisieren Sie Regeln bei Netzwerkänderungen und lassen Sie temporäre Testquellen nicht dauerhaft bestehen.

Konten mit geringsten Rechten verwenden

Verwenden Sie für alltägliche Builds, Remote-Aktionen und Runner-Dienste jeweils klar abgegrenzte Konten. Erhöhen Sie Rechte nur vorübergehend für Installation oder Systemkonfiguration und beenden Sie die Sitzung danach.

Temporäre Schlüssel entfernen

Löschen Sie nach Migration, Fehlerdiagnose oder externer Zusammenarbeit temporäre öffentliche Schlüssel, kurzlebige Token und Testkonten. Prüfen Sie außerdem, ob Automatisierungsskripte noch alte Zugangsdaten referenzieren.

Grenzen für die Protokollbereinigung:Erhalten bleiben können Knoten-ID, Zeitstempel, Befehlsname, Exit-Code und Fehler-Stack. Entfernen müssen Sie Passwörter, private Schlüssel, Zugriffstoken, Signaturmaterial, vollständige Umgebungsvariablen und vertrauliche Geschäftsdaten aus Projekten.

09 / Support-Eskalation

Übermitteln Sie reproduzierbare Informationen, damit der Support direkt mit der Diagnose beginnen kann

Technische Probleme sollten bevorzugt über ein Konsolenticket eingereicht werden, damit Instanz und ergänzte Protokolle verknüpft bleiben. Wenn Sie die Konsole nicht öffnen können oder Fragen vor dem Kauf haben, können Sie eine E-Mail senden.

Konsolenticket

Geeignet für Knoten- und Verbindungsprobleme

Melden Sie sich in der Konsole an, öffnen Sie den Ticketbereich, erstellen Sie eine technische Anfrage und verknüpfen Sie den betreffenden Knoten. Ein Ticket sollte sich auf ein Hauptproblem konzentrieren.

  • Knoten-ID und Region
  • Zeitpunkt mit Zeitzone
  • Clientstadt, Netzwerk und Verbindungsart
  • Kürzeste Reproduktionsschritte und erwartetes Ergebnis
  • Bereinigte Befehlsausgabe und Protokolle
Konsolenticket einreichen
Support-E-Mail

Geeignet für Kontozugriff und Fragen vor dem Kauf

Verwenden Sie als Betreff „Problemtyp + Knoten-ID oder Bestellkennung“. Beschreiben Sie im Text chronologisch die bereits durchgeführten Prüfungen. Senden Sie keine Passwörter, privaten Schlüssel oder unbereinigtes Signaturmaterial.

  • Kontaktadresse und Zeitzone
  • Auswirkungsbereich und Priorität
  • Bereits durchgeführte Diagnoseschritte
  • Zeiträume für gemeinsame Diagnose
  • Konkrete zu klärende Fragen
Vor dem Einreichen Einmal reproduzieren und genaue Uhrzeit notieren
Beim Einreichen Knoten-ID und bereinigte Protokolle anhängen
Nach dem Einreichen Informationen im selben Ticket ergänzen

Bereit für die Verbindung

Knoteninformationen vollständig? Starten Sie die Verbindung in der Konsole

Kopieren Sie zunächst Knotenadresse, Systemkonto und aktuelle Zugangsdaten, führen Sie eine SSH-Prüfung durch und öffnen Sie anschließend den Remote-Mac-Desktop. Wenn Sie einen weiteren dedizierten physischen Rechner benötigen, sehen Sie sich verfügbare Modelle und Mietpreise an.