Sie betreiben ein kleines Hosting-Unternehmen auf cPanel. Die Lizenzierung pro Konto summiert sich, und Sie erwägen Virtualmin, um Kosten zu senken. Aber Sie haben jahrelange Automatisierung in cPanel integriert: benutzerdefinierte Hooks, Cron-Jobs, die cPanel-APIs aufrufen, und Provisioning-Skripte, die von der cPanel-Struktur ausgehen. Eine Migration ist nicht nur das Kopieren von Dateien; es ist die Neugestaltung Ihrer Automatisierung. Dieser Artikel behandelt, was bricht, wie sich die Lizenzkosten im Maßstab vergleichen und wie man zurückrollt, wenn etwas schiefgeht.

Was bricht bei einer cPanel-zu-Virtualmin-Migration?

Fast alles, was die API oder das Dateisystem-Layout des Control Panels berührt, muss überarbeitet werden. Virtualmin verwendet eine andere Architektur (basierend auf Webmin) und bietet nicht dieselben Hooks oder Kommandozeilen-Tools. Die Brüche fallen in drei Bereiche: Automatisierungs-Hooks, Cron-Jobs und Provisioning-Skripte.

Automatisierungs-Hooks

cPanel bietet Hooks, die Skripte bei Ereignissen wie Kontoerstellung, Passwortänderungen oder Sperrung auslösen. Diese werden oft verwendet, um mit Abrechnungssystemen zu synchronisieren, Willkommens-E-Mails zu senden oder die Überwachung zu aktualisieren. Virtualmin hat sein eigenes Ereignissystem, aber die Hook-Namen, Payloads und der Ausführungskontext unterscheiden sich. Jedes benutzerdefinierte Skript, das auf cPanels Hook-Umgebungsvariablen (wie CPANEL_USER) angewiesen ist, schlägt stillschweigend fehl oder gibt einen Fehler aus.

Cron-Jobs

Viele Hoster planen Cron-Jobs, um cPanels /usr/local/cpanel/bin/-Dienstprogramme für Backups, SSL-Erneuerung oder Log-Rotation auszuführen. Virtualmin verwendet andere Befehle (z. B. virtualmin backup-domain) und speichert die Konfiguration in /etc/webmin/virtual-server/. Cron-Jobs, die cPanel-Binärdateien aufrufen, brechen. Auch Cron-Jobs auf Benutzerebene könnten Pfade wie /home/user/public_html referenzieren; Virtualmins Standard-Dokumentenwurzel ist ebenfalls /home/user/public_html, aber die umgebende Struktur (z. B. etc, logs) ist anders.

Provisioning-Skripte

Wenn Sie eine Abrechnungsplattform wie WHMCS, Clientexec oder ein benutzerdefiniertes Skript verwenden, um Konten über die cPanel-API zu erstellen, benötigen Sie ein neues Provisioning-Modul. Virtualmin bietet eine Remote-API (über Webmins Fernzugriff), aber es ist kein direkter Ersatz. Skripte, die cPanel-API-Antworten parsen oder auf bestimmte Fehlercodes angewiesen sind, müssen neu geschrieben werden. Dasselbe gilt für das Hinzufügen von Domains, das Erstellen von E-Mail-Konten und das Bereitstellen von Datenbanken.

Wie vergleichen sich die Lizenzkosten bei 50–500 Konten?

cPanel berechnet pro Konto, während Virtualmin kostenlos und Open Source ist. Bei 50 Konten könnten die cPanel-Kosten überschaubar sein, aber bei 500 werden sie erheblich. Sie müssen jedoch die Zeit für den Wiederaufbau der Automatisierung und das Potenzial für Ausfallzeiten berücksichtigen. Die folgende Tabelle zeigt einen vereinfachten Vergleich basierend auf Listenpreisen (Stand 2024) für cPanels Solo- und Admin-Tarife und Virtualmins kostenlose Version. Beachten Sie, dass die cPanel-Preise je nach Partner und Vertrag variieren; prüfen Sie immer die aktuellen Tarife.

Konten cPanel Solo (ca.) cPanel Admin (ca.) Virtualmin
50 $15/Monat $30/Monat $0
100 $30/Monat $45/Monat $0
250 $75/Monat $75/Monat $0
500 $150/Monat $125/Monat $0

Die obigen Zahlen sind nur zur Veranschaulichung; die tatsächlichen cPanel-Preise hängen von Ihrer Reseller-Vereinbarung ab. Die wichtigste Erkenntnis: Bei 500 Konten könnte cPanel über $1.000 pro Jahr kosten, während Virtualmin keine Lizenzkosten verursacht. Aber Sie müssen das gegen den Migrationsaufwand und den möglichen Verlust von Funktionen wie integriertem Support abwägen.

Wie sieht eine Rollback-Checkliste für die ersten 30 Tage aus?

Selbst mit sorgfältiger Planung können Migrationen schiefgehen. Ein Rollback-Plan stellt sicher, dass Sie bei kritischen Problemen zu cPanel zurückkehren können. Die ersten 30 Tage sind entscheidend: Überwachen Sie genau und haben Sie einen Weg zurück. Hier ist eine Checkliste:

  • Tag 0–7: cPanel parallel weiterbetreiben. Nehmen Sie den alten Server nicht außer Betrieb. Migrieren Sie einige Testkonten und überprüfen Sie die Funktionalität. Halten Sie die DNS-TTLs niedrig (z. B. 300 Sekunden), damit Sie schnell zurückwechseln können.
  • Tag 8–14: Automatisierung überwachen. Prüfen Sie, ob Provisioning, Backups und E-Mail funktionieren. Vergleichen Sie Protokolle beider Systeme. Wenn ein kritisches Skript fehlschlägt, beheben Sie es oder rollen Sie das Konto zurück.
  • Tag 15–21: Rollback für ein Konto testen. Wählen Sie ein unkritisches Konto, migrieren Sie es zu Virtualmin und rollen Sie es dann zu cPanel zurück. Dokumentieren Sie die Schritte und den Zeitaufwand.
  • Tag 22–30: Go/No-Go entscheiden. Wenn mehr als 10 % der Konten Probleme haben, ziehen Sie einen vollständigen Rollback in Betracht. Wenn die Probleme geringfügig sind, fahren Sie fort, halten Sie cPanel aber noch einen weiteren Monat verfügbar.

Führen Sie außerdem eine Liste der Abhängigkeiten: Welche Skripte rufen welche APIs auf und wo befindet sich die Konfiguration. Dies beschleunigt entweder die Migration oder den Rollback.

Wie handhabt man Provisioning und Automatisierung nach der Migration?

Sie müssen Provisioning-Skripte neu schreiben, um Virtualmins API oder Kommandozeilen-Tools zu verwenden. Für die Abrechnungsintegration prüfen Sie, ob Ihre Abrechnungssoftware ein Virtualmin-Modul hat. Wenn nicht, können Sie Virtualmins Remote-API über HTTP oder SSH verwenden. Um beispielsweise eine Domain zu erstellen, können Sie virtualmin create-domain mit Parametern aufrufen. Automatisierungs-Hooks können durch Virtualmins „Post-Change“-Skripte oder durch ein benutzerdefiniertes Skript, das auf Änderungen pollt, ersetzt werden. Cron-Jobs sollten aktualisiert werden, um Virtualmin-Befehle aufzurufen und dessen Protokollierung zu nutzen.

Wenn Sie eine Abrechnungsplattform verwenden, ziehen Sie eine in Betracht, die Virtualmin nativ unterstützt. Zum Beispiel bietet Teculiar Provisioning-Module für Virtualmin, cPanel & WHM und Hetzner Cloud, sodass Sie die Kontoerstellung bei Zahlung automatisieren können. Seine API und signierten Webhooks ermöglichen die Integration benutzerdefinierter Workflows. Der Free-Plan deckt bis zu 50 Kunden ab, was für kleinere Hoster, die das Terrain testen, geeignet sein könnte.

Was als Nächstes zu tun ist

  • Inventarisieren Sie alle Skripte, Cron-Jobs und Hooks, die mit cPanel interagieren.
  • Richten Sie einen Virtualmin-Testserver ein und migrieren Sie ein unkritisches Konto.
  • Berechnen Sie Ihre aktuellen cPanel-Lizenzkosten bei 50, 100, 250 und 500 Konten.
  • Schreiben Sie ein Rollback-Verfahren und testen Sie es an einem einzelnen Konto.

Beginnen Sie damit, jedes System aufzulisten, das Kundendaten enthält.