Linux – vServer umziehen auf neuen Server
Inhaltsverzeichnis:
Hier zeige ich, wie ich meinen bestehenden vServer auf ein neues Modell umgezogen habe. Der Server sollte also 1:1 ersetzt werden, lediglich die IP-Adresse ändert sich. Die entsprechenden Einträge im DNS müssen natürlich auf den neuen Server angepasst werden.
Auf beiden Servern wurde das gleiche Betriebssystem ausgeführt, der Quell- und der Zeilserver hatten in diesem Beispiel jeweils Debian 9.5 installiert.
Der bestehende Server hatte die IP-Adresse 1.2.3.4, der neue Server die 2.3.4.5.
Zuerst habe ich beide Server auf den gleichen Betriebssytem-Stand gebracht, damit sie von derselben Kernel-Version booten. Das ist wichtig, da ich beim späteren Kopieren das Verzeichnis /boot/grub ausgelassen habe. Denn in der Datei /boot/grub/grub.cfg stehen die UUIDs der lokalen Laufwerke, die nachher zum neuen Server nicht mehr passen würden.
apt update && apt upgrade -y
Dann habe ich den neuen Server von einer Live-CD (System Rescue CD) gestartet.
Jetzt lässt man sich die eingebauten Laufwerke anzeigen:
lsblk
In meinem Fall war die Partition die ich einbinden musste, mit /dev/vda1 bezeichnet. Also habe ich einen entsprechenden Ordner angelegt um die Platte dorthin zu mounten:
mkdir /mnt/vda1
mount /dev/vda1 /mnt/vda1
Am alten Server: Dienste stoppen
Damit keine Inkonsistenzen beim Kopieren der Daten auftreten, sollten auf dem alten Server nun alle Dienste bis auf Networking und SSH gestoppt werden.
Welche Dienste aktiv sind, lässt sich mit dem folgenden Befehl prüfen:
service --status-all
Mit
systemctl stop <Dienstname>
können dann alle nicht benötigten Dienst beendet werden.
Wenn alle Dienste gestoppt sind, kann die Übertragung der Dateien gestartet werden:
rsync -aHxv –numeric-ids –progress root@1.2.3.4:/ /mnt/vda1 –exclude=/boot/grub/ –exclude=/dev –exclude=/proc –exclude=/sys –exclude=/tmp –exclude=/etc/fstab –exclude=/etc/network –exclude=/run –exclude=/lost+found
Das kann jetzt je nach Festplatten-Belegung und Bandbreite eine ganze Weile dauern. Wenn der Kopiervorgang dann schließlich bendet ist, kann das Laufwerk im Live-System wieder ausgehängt werden:
umount /mnt/vda1
…und das Live-System heruntergefahren werden:
shutdown -h now
Nun kann der neue Server gestartet werden. Wenn er erfolgreich hoch gefahren werden konnte, müssen noch sämtliche Konfigurationsdateien in denen die alte IP-Adresse vorkommt, auf die neue IP umgestellt werden. Um alle Dateien zu finden in denen die alte IP-Adresse auftaucht, bietet sich folgender fgrep-Befehl an:
fgrep ‚1.2.3.4‘ / -r —exclude-dir /proc —exclude-dir /dev —exclude-dir /tmp 2>/dev/null
Alle Dateien die hier ausgegeben werden, müssen entsprechend angepasst werden.
Wenn nun alles funktioniert, müssen nur noch die DNS-Einträge beim Provider auf die neue IP umgestellt werden. Damit sollte alles erledigt sein und der alte Server kann dann ggf. archiviert und abgeschaltet werden.