Die Rosetta-2-Migration für Unternehmens-CI sollte sofort beginnen: macOS 27 ist nach Apples derzeitiger Ankündigung die letzte große Version mit allgemeiner Rosetta-Unterstützung für Intel-only-macOS-Apps. Sie müssen deshalb jetzt x86_64-Abhängigkeiten erfassen, native arm64-Knoten und vorübergehende Kompatibilitätsknoten parallel testen und erst nach belastbaren Produktionsnachweisen upgraden.
Diese Anleitung ist für Sie relevant, wenn Sie Apple-Silicon-Macs als Build-Knoten verwalten, CI/CD-Plattformen betreiben oder die Beschaffung und Ausfallsicherheit Ihrer Mac-Infrastruktur verantworten. Sie hilft Ihnen auch dann, wenn die Hardware bereits vollständig auf Apple Silicon umgestellt wurde, die Toolchain aber weiterhin Intel-Binaries startet.
Letzte Aktualisierung: 10.09.2026. Die Angaben wurden gegen Apples Rosetta-Ankündigung, die macOS-27-Release-Notes und die Apple-Silicon-Dokumentation geprüft. macOS 27.0 RC wurde am 09.09.2026 veröffentlicht; die öffentliche finale Version war zum Redaktionszeitpunkt noch nicht verfügbar.
01 Die Support-Grenze und ihre Bedeutung
Apple hat bestätigt, dass macOS 27 die letzte große macOS-Version mit allgemeiner Rosetta-Unterstützung für Intel-only-macOS-Anwendungen sein soll. Das bedeutet nicht, dass Rosetta am Veröffentlichungstag sofort abgeschaltet wird. Es bedeutet aber, dass ein Unternehmen macOS 27 nicht als Begründung für weiteres Aufschieben verwenden sollte.
Die Apple-Dokumentation zur Rosetta-Übersetzungsumgebung beschreibt Rosetta als Übersetzungsschicht, mit der Intel-Code auf Apple-Silicon-Systemen ausgeführt werden kann. Diese Aussage betrifft nicht automatisch jede Intel-Komponente in jeder Umgebung.
Sie müssen vier Fälle auseinanderhalten:
- Intel-Mac-Hardware: Ein Intel-Mac ist eine physische Plattform. Seine Zukunft hängt von der Unterstützung der jeweiligen macOS-Version und von den eingesetzten Werkzeugen ab.
- Intel-only-macOS-Anwendung: Eine solche Anwendung kann auf Apple Silicon über Rosetta starten, solange das Betriebssystem diese allgemeine Unterstützung bereitstellt.
- Universal Binary: Diese Datei enthält getrennte arm64- und x86_64-Slices. macOS kann den passenden Slice laden, sofern Signatur, Bibliotheken und Laufzeitumgebung korrekt sind.
- Rosetta-Prozess: Ein Apple-Silicon-Mac kann einen einzelnen Intel-Prozess ausführen, obwohl der Host selbst vollständig arm64 ist.
- Intel-Binary in einer Linux-VM: Das ist ein anderer Übersetzungsfall. Apple dokumentiert die Ausführung von Intel-Binaries in Linux-VMs separat; Sie dürfen diese Unterstützung nicht als Zusage für Intel-only-macOS-Apps interpretieren. Die Dokumentation zu Intel-Binaries in Linux-VMs behandelt genau diese Abgrenzung.
macOS 26.4 und spätere Versionen können außerdem einen Hinweis zur Migration anzeigen. Ein solcher Hinweis ist kein Beleg dafür, dass Ihre Pipeline bereits vollständig portiert ist. Er ist ein Signal, Ihre Abhängigkeiten und Ausnahmegenehmigungen zu prüfen.
Kann macOS 27 noch Intel-Anwendungen ausführen?
Nach dem derzeit bestätigten Apple-Stand ja, soweit es sich um die von Rosetta abgedeckten Intel-only-macOS-Anwendungen handelt. Diese Kompatibilität ist jedoch kein langfristiger Vertrag für die nächste Hauptversion. Für eine Unternehmens-CI zählt deshalb nicht, ob ein einzelner manueller Start gelingt, sondern ob Build, Test, Signierung, Veröffentlichung und Wiederanlauf ohne Rosetta reproduzierbar funktionieren.
02 Verantwortlichkeiten der beteiligten Rollen
Eine Migration scheitert häufig nicht an der Installation einer arm64-Version, sondern an ungeklärten Übergaben. Legen Sie daher pro Abhängigkeit eine verantwortliche Rolle, einen technischen Nachweis und ein Abnahmekriterium fest.
IT-Verantwortung
Die IT-Verantwortung entscheidet, welche Apple-Silicon-Knoten auf macOS 27 aktualisiert werden dürfen. Dafür benötigt sie eine Liste mit:
- Hostname und Knotenpool
- macOS-Version und Architektur
- CI-Agent und Startmechanismus
- installierten Laufzeitkomponenten
- Rosetta-Status oder Rosetta-Prozessnachweis
- Wartungsfenster und Rückfalloption
- verantwortlichem Team
- Freigabestatus
Die IT darf einen Knoten nicht allein deshalb freigeben, weil der Host Apple Silicon verwendet. Ein arm64-Host kann weiterhin Intel-Tools, Intel-Plugins oder x86_64-Hilfsprozesse starten.
Plattformteam
Das Plattformteam prüft Routing, Cache-Grenzen und Umgebungsvariablen. Native und kompatible Knoten müssen über getrennte Labels, Queues oder Pools angesprochen werden. Caches dürfen nicht unkontrolliert zwischen arm64- und x86_64-Läufen geteilt werden.
Das gilt besonders für Paketverzeichnisse, Build-Artefakte, vorkompilierte Plugins und selbst verwaltete Toolchains. Ein gemeinsamer Cache kann einen erfolgreichen Testlauf vortäuschen, wenn ein bereits kompiliertes Intel-Artefakt wiederverwendet wird.
Toolchain-Verantwortliche
Die Toolchain-Verantwortlichen entscheiden je Komponente zwischen drei Wegen:
- native arm64-Version einsetzen,
- eigene Software als arm64 oder Universal Binary neu bauen,
- geschlossene oder noch nicht portierbare Komponenten befristet isolieren.
Die Apple-Anleitung zur Portierung auf Apple Silicon sollte dabei als technische Referenz dienen. Für selbst entwickelte Binärdateien ist die Anleitung zum Bau eines Universal Binary relevant.
Die Entscheidung „Installation erfolgreich“ reicht nicht. Jede Komponente muss mindestens in einem echten Projekt geprüft werden: Eingabedateien, Tests, erzeugte Artefakte, Signierung und Veröffentlichung.
Sicherheits- und Release-Verantwortliche
Diese Rolle prüft Keychain-Zugriffe, Zertifikate, Notarisierung, interne Plugins, LaunchAgents, Daemons und unbeaufsichtigte Neustarts. Ein Werkzeug, das nur in einer interaktiven Sitzung funktioniert, ist für eine CI-Produktionsfreigabe nicht ausreichend.
Besonders kritisch sind Universal Binaries. Beide Architektur-Slices müssen mit der vorgesehenen Signatur ausgeliefert und im Release-Prozess geprüft werden. Dokumentieren Sie Hash, Logauszug, Signaturprüfung und Genehmigung. Muss für eine Komponente die Systemsicherheit dauerhaft abgesenkt werden, gehört sie auf eine Blockierungs- oder befristete Ausnahmeliste.
03 Die Abhängigkeitsinventur
Prüfen Sie nicht nur die sichtbare Hauptanwendung. Die häufigsten Rosetta-Abhängigkeiten liegen in Hilfsprozessen, Installationsskripten und Plugins.
Erfassen Sie mindestens:
- ausführbare Dateien und dynamische Bibliotheken
- Kommandozeilenwerkzeuge
- Paketmanager-Verzeichnisse
- CI-Agenten und Runner
- LaunchAgents und Daemons
- Installations-, Vor- und Nachbereitungsskripte
- Plugin-Loader und interne Erweiterungen
- Interpreter und Wrapper
- selbst entwickelte Hilfsprogramme
- vorkompilierte Test- und Packaging-Werkzeuge
Für eine nachvollziehbare Prüfung genügen zunächst wenige Befehle:
file /pfad/zur/datei
lipo -info /pfad/zur/datei
ps -axo pid,command
uname -m
file zeigt die erkannten Architekturen einer Datei. lipo -info hilft bei der Unterscheidung zwischen einem reinen x86_64-Binary und einem Universal Binary. uname -m beschreibt die Architektur der laufenden Shell, nicht automatisch die Architektur jedes gestarteten Unterprozesses. Deshalb müssen Sie auch die tatsächlich laufenden Prozesse und die von CI-Skripten gestarteten Hilfsprogramme untersuchen.
Erweitern Sie die Tabelle um die operative Bedeutung:
| Asset oder Abhängigkeit | Nachweis | Besitzer | Entscheidung | Produktionsrisiko |
|---|---|---|---|---|
| CI-Agent | Architektur und Startlog | Plattformteam | arm64, Ersatz oder Ausnahme | Verlust der Jobannahme |
| Paketmanager | Pfad und Prozessarchitektur | Toolchainteam | native Installation | falsche Abhängigkeiten |
| Plugin | Loader-Log und Binary-Slice | Entwicklung | neu bauen oder isolieren | Test- oder Packaging-Fehler |
| Installationsskript | gestartete Unterprozesse | Release-Team | anpassen und signieren | unvollständige Auslieferung |
| Daemon oder LaunchAgent | Neustart- und Architekturprüfung | IT | native Version oder Exit-Datum | kein unbeaufsichtigter Betrieb |
Wie prüfen Sie, ob die Mac-CI von Rosetta abhängt?
Starten Sie nicht nur einen Test-Build. Erstellen Sie eine Prozessaufnahme während eines vollständigen CI-Laufs und ordnen Sie jeden x86_64-Prozess seinem aufrufenden Skript und seinem Verantwortlichen zu. Prüfen Sie danach zusätzlich Agent-Start, Cache-Wiederherstellung, Signierung und Neustart. Erst diese Kette zeigt, ob Rosetta eine echte Produktionsabhängigkeit ist.
Achtung: Ein erfolgreicher Build auf einem frisch eingerichteten Knoten beweist keine vollständige Migration. Ein nachgelagerter Signierungsprozess, ein Plugin-Loader oder ein Deployment-Skript kann weiterhin einen Intel-Unterprozess starten.
04 Ersatz, Neubau und befristete Ausnahme
Native arm64-Werkzeuge sind die erste Wahl. Sie benötigen weniger Übersetzungsabhängigkeit und machen die spätere Stilllegung der Kompatibilität planbarer. Bei eigenen Komponenten sollten Sie prüfen, ob ein arm64-Build genügt oder ob ein Universal Binary für gemischte Entwickler- und CI-Umgebungen erforderlich ist.
Bei jeder Ersetzung gehören diese Nachweise in das Migrationsticket:
- verwendete Version und Installationsquelle
- erkannte Architektur
- reproduzierbarer Installationsschritt
- reales Projekt oder repräsentativer CI-Job
- erzeugte Artefakte und deren Hash
- Test- und Signierungsergebnis
- Rückfallverfahren
- geplantes Ende einer Ausnahme
Wie migrieren Sie x86_64-Build-Werkzeuge nach arm64?
Beginnen Sie mit dem Aufrufer, nicht mit dem sichtbaren Werkzeug. Finden Sie heraus, welches Skript, welcher Agent oder welcher Plugin-Loader die Datei startet. Installieren Sie anschließend die native Version, löschen Sie architekturfremde Caches und führen Sie denselben Projektlauf auf einem isolierten arm64-Knoten aus. Die Migration ist erst abgeschlossen, wenn Funktion und Ausgabe mit dem bisherigen Produktionslauf übereinstimmen.
Geschlossene Werkzeuge ohne native Version kommen in eine Ausnahmegenehmigung. Eine Ausnahme benötigt einen Besitzer, einen konkreten Anwendungsfall, ein Enddatum und ein Risiko. „Wird später ersetzt“ ist kein ausreichender Eintrag.
05 Dual-Run und Abnahmematrix
Der sichere Übergang erfolgt über zwei getrennte Knotenpools:
- Native Pool: arm64-Tools, neue Builds und alle bereits validierten Aufgaben.
- Kompatibilitätspool: Rosetta-abhängige Aufgaben mit dokumentiertem Ausstiegsdatum.
Neue dauerhafte Abhängigkeiten dürfen nicht in den Kompatibilitätspool gelangen. Routing über Labels oder Queues verhindert, dass ein Job zufällig auf dem falschen Knoten landet.
Wählen Sie repräsentative Pull-Request-, Test-, Archivierungs- und Release-Aufgaben. Führen Sie sie auf beiden Pools aus und vergleichen Sie:
- Rückgabecode und Fehlertyp
- Artefakt-Hash und Paketinhalt
- Signatur und Notarisierung
- verwendete Prozesse und Architektur
- Cache-Verhalten
- Queue-Zustand
- Wiederanlauf nach Neustart
- Verhalten bei fehlenden Zertifikaten oder Netzwerkunterbrechung
Konkrete Laufzeiten, Kapazitäten und Fehlerraten dürfen Sie nur aus Ihren CI-Aufzeichnungen oder einer klar gekennzeichneten Messung ableiten. Ohne solche Daten sollten Sie keine prozentuale Leistungsverbesserung behaupten.
| Prüffeld | Native arm64-Knoten | Rosetta-Kompatibilitätsknoten | Freigaberegel |
|---|---|---|---|
| Projekt-Build | erfolgreich und reproduzierbar | nur Referenzlauf | kein offener arm64-Fehler |
| Tests | vollständige Testsuite | Vergleichslauf | relevante Ergebnisse identisch |
| Signierung | Zertifikat, Keychain, Notarisierung | Vergleichslauf | keine Sicherheitsabsenkung |
| Veröffentlichung | erwartetes Paket und Hash | Rückfallnachweis | Release muss unbeaufsichtigt funktionieren |
| Neustart | Agent und Daemons starten selbstständig | dokumentierte Einschränkung | native Knoten bevorzugt |
| Cache | architekturrein | getrennt | keine Cross-Arch-Verunreinigung |
| Ausnahme | nicht erforderlich | Besitzer und Enddatum | kein unbefristeter Betrieb |
Welche CI-Skripte können beim Ende von Rosetta scheitern?
Gefährdet sind Skripte, die Intel-only-Tools direkt starten, x86_64-Pfade fest eintragen, Intel-Paketverzeichnisse wiederherstellen oder Plugins mit nur einem Architektur-Slice laden. Ebenso kritisch sind Vor- und Nachbereitungsskripte, die in einem interaktiven Terminal funktionieren, aber im unbeaufsichtigten Agent-Kontext keine Keychain- oder Berechtigungszugriffe erhalten.
Die Xcode-27-Release-Notes und die macOS-27-Release-Notes müssen vor der Produktionsfreigabe nochmals gegen die finale Version geprüft werden. Änderungen an Supportformulierungen, Toolchain-Anforderungen oder Migrationshinweisen können Ihre Ausnahmeplanung beeinflussen.
06 Kapazität, Einkauf und Ausfallsicherheit
Die Zahl der Entwickler ist kein belastbares Maß für die benötigte Mac-CI-Kapazität. Entscheidend sind ausstehende Aufgaben, Parallelität, Laufdauer aus Ihren Aufzeichnungen, Release-Spitzen, Wartungsfenster und die gewünschte Redundanz.
Verwenden Sie ein variables Modell:
Aufgabenlast: erwartete parallele Jobsnative Kapazität: nach Dual-Run belegbare arm64-KapazitätKompatibilitätslast: verbleibende Rosetta-AufgabenSpitzenlast: höchste beobachtete Release-AuslastungRedundanz: Kapazität bei Ausfall eines KnotensAusstiegsdatum: spätestens geplanter Rückbau des Kompatibilitätspools
Sie können bestehende Apple-Silicon-Knoten für Dual-Run verwenden, wenn ihre Auslastung, Cache-Isolation und Wiederanlaufnachweise dies zulassen. Reicht die Kapazität nicht aus, vergleichen Sie drei Wege:
| Option | Geeignet, wenn | Hauptvorteil | Zu prüfen |
|---|---|---|---|
| Zusätzliche eigene Macs | Last dauerhaft und planbar ist | langfristige Kontrolle | Beschaffung, Wartung, Ersatzgerät |
| Kurzfristige Mac-Miete | Migration oder Spitzenlast zeitlich begrenzt ist | schneller Testpool ohne dauerhafte Hardwarebindung | Zugriff, Datenschutz, Persistenz, Abrechnung |
| Mischbetrieb | native und kompatible Aufgaben parallel auslaufen | schrittweiser Rückbau möglich | Routing, Isolation, Ausstiegsdatum |
Wenn Sie für den Dual-Run kurzfristig zusätzliche Apple-Silicon-Knoten benötigen, können Sie bei CALMVPS die verfügbaren Mac-Mietoptionen gegen Ihre internen Beschaffungs- und Freigabeprozesse prüfen. Entscheidend ist nicht ein pauschaler Preisvergleich, sondern ob Zugriff, Root-Rechte, Datenhaltung, Netzwerkpfad und Abnahmetests zu Ihren Vorgaben passen.
Für einen PoC sollte der Mietknoten dieselben realen CI-Aufgaben erhalten wie der geplante Produktionsknoten. Ein synthetischer Test sagt wenig über Signierung, private Abhängigkeiten oder Wiederanlauf aus. Die Kriterien gehören deshalb vor der Bestellung in die Abnahme.
07 Entscheidungsregeln für macOS 27
Müssen Sie macOS 27-Kompatibilitätsknoten behalten?
Ja, wenn mindestens eine geschäftskritische Aufgabe weiterhin einen Intel-only-Prozess benötigt und noch kein getesteter Ersatz verfügbar ist. Der Knoten braucht dann eine dokumentierte Aufgabe, einen Besitzer, eine Sicherheitsprüfung und ein verbindliches Ausstiegsdatum. Nein, wenn alle produktiven Aufgaben auf arm64 validiert sind und der Dual-Run keine offenen Unterschiede zeigt.
Verwenden Sie diese Freigaberegeln:
- Upgrade verschieben: Wenn Prozessinventur oder Signierungsprüfung unvollständig ist.
- Teilweise upgraden: Wenn der native Pool freigegeben ist, aber definierte Rosetta-Ausnahmen bestehen.
- Kompatibilitätspool verkleinern: Wenn eine Aufgabe auf arm64 reproduzierbar läuft und ihr Artefakt geprüft wurde.
- Neue Knoten beschaffen oder mieten: Wenn Dual-Run und Release-Spitzen die vorhandene native Kapazität übersteigen.
- Migration blockieren: Wenn Sicherheitsoptionen abgesenkt werden müssen oder der Wiederanlauf nicht unbeaufsichtigt funktioniert.
Für ein Unternehmen mit strengen DSGVO-Anforderungen müssen zusätzlich Datenflüsse, Zugriffskontrolle, Protokollierung, Zertifikatsverwaltung und Löschung nach Ende des Tests dokumentiert werden. Ein Remote-Knoten ist damit nicht automatisch genehmigt; er ist ein Infrastrukturbaustein, der dieselbe Prüfung wie eigene Hardware benötigt.
08 Was Sie jetzt als Nächstes abarbeiten
- Verantwortung festlegen: Benennen Sie IT, Plattform, Toolchain, Release und Einkauf als zuständige Rollen.
- Assets erfassen: Prüfen Sie Binärdateien, Agenten, Plugins, Skripte, Bibliotheken, Daemons und Caches.
- Architektur nachweisen: Sichern Sie
file,lipo, Prozess- und Agent-Logs als Migrationsevidenz. - Entscheidung treffen: Ersetzen, als arm64 oder Universal Binary neu bauen oder befristet isolieren.
- Pools trennen: Definieren Sie native und kompatible Routing-Regeln ohne gemeinsamen Architektur-Cache.
- Dual-Run starten: Testen Sie reale Build-, Test-, Archivierungs- und Release-Aufgaben.
- Sicherheit abnehmen: Prüfen Sie Keychain, Signierung, Notarisierung, Plugins und Neustart.
- Kapazität modellieren: Nutzen Sie reale Aufgabenlast, Spitzen, Redundanz und das Ausstiegsdatum.
- macOS 27 freigeben: Aktualisieren Sie erst, wenn die produktiven Aufgaben native Nachweise besitzen.
- Ausnahmen abbauen: Entfernen Sie Kompatibilitätsknoten nach belegter Migration, nicht nach Kalenderdatum allein.
Wenn Ihre derzeitige Lösung aus gekauften Macs besteht, entstehen während dieser Phase oft drei konkrete Nachteile: zusätzliche Hardware muss beschafft werden, freie Kapazität für den Dual-Run fehlt und Wartung oder Austausch bindet interne IT-Ressourcen. Ein kurzfristiger Cloud- oder Mietpool löst diese Punkte nicht automatisch, kann aber für einen abgegrenzten PoC, eine Release-Spitze oder eine parallele Validierung die bessere operative Option sein. Mit CALMVPS können Sie dafür einen isolierten Apple-Silicon-Testknoten einplanen und die Entscheidung anschließend anhand Ihrer echten CI-Nachweise treffen. Geeignete Optionen und Abrechnungsmodelle finden Sie in der Übersicht zur Mac-Miete von CALMVPS.
Der richtige nächste Schritt ist daher nicht die pauschale Abschaltung von Rosetta und auch nicht das unbegrenzte Festhalten am Kompatibilitätspool. Erfassen Sie die x86_64-Abhängigkeiten, beweisen Sie native arm64-Ausführung mit echten Produktionsaufgaben und halten Sie nur jene Kompatibilitätsknoten vor, für die ein genehmigter, terminierter Ausnahmefall existiert.