Neuer Rootie

Neuer Rootie

Diesen Beitrag schrieb ich 1 Jahr und 3 Monate zuvor; die nachfolgenden Ausführungen müssen heute weder genau so nach wie vor funktionieren, noch meiner heutigen Meinung entsprechen. Behalte das beim Lesen (und vor allem: beim Nachmachen!) bitte stets im Hinterkopf.

Geschätzte Lesezeit: 4 Minuten

Den Rootie bei netcup hatte ich schon ziemlich lange – wie lange wurde mir erst klar, als er Probleme machte.

Im Zuge der #tabsvongesternnacht hatte ich auf ein größeres Modell gewechselt, das halbjährlich abgerechnet wurde und eine Mindestlaufzeit von 12 Monaten aufwies:

  • 6x dediziert Intel® Xeon® Gold 6140 / 6230
  • 32GB DDR4 ECC
  • 960 GB SAS

Letzteres sorgte zunehmend für Ärger: der Durchsatz in Richtung Platte war nicht gut. Das machte sich auf verschiedene Arten bemerkbar: Jitsi-Sessions mit Lags, SSH-Verbindungen, die einfroren, deutliche Hänger während des Tippens bis hin zu halbminütigen Aussetzern… Und das war nicht das erste Mal: vor einer Weile schon hatte mein Host auch einmal migriert werden müssen. Man erfährt in solchen Fällen ja nichts Näheres, aber dem waren ebenfalls unfassbare IOWait-Werte (und eine dauerhaft hohe Load) vorausgegangen.

Grafische Darstellung iowait des alten Servers über 24 Stunden Grafische Darstellung iowait des alten Servers über 24 Stunden

Ein Ticket wegen IOWait zu eröffnen bedeutet aus Sicht des Hosters, dass ich den Server ins Rescue schicken und von dort aus irgendwie Beweise liefern muss, dass das Problem eben auch im Rescue auftritt. Ich hatte weder auf die damit verbundene Downtime noch auf den Aufwand wirklich Lust – zumal, als ich im RSS-Reader ein Angebot aufgriff, in dem die Rede von „1TB SSD“ war.

Der neue Server

Da schlug ich zu.
Der neue Server hat eine Mindestlaufzeit von nur einem Monat, wird monatlich abgerechnet, beides kommt mir entgegen. Und die Ausstattung kann sich sehen lassen:

  • 10x dediziert AMD EPYC™ 9634
  • 24GB DDR5 ECC
  • 1024 GB SSD

Der Umzug

Der Umzug gestaltete sich weitgehend unkompliziert. Ich schildere ihn trotzdem mal, vielleicht inspiriert euch das ja.

Alter Server: Snapshot erstellen und exportieren

  • netcup SCP => alter Server => Medien => Snapshots => Offline-Snapshot erstellen & exportieren
  • der Export ist einmal kostenlos, danach müsste man wohl Geld bezahlen => ich brauche aber nur den einen, deshalb war das für mich nicht von Interesse
  • der Export hat in meinem Fall etwas über drei Stunden gedauert, und ich erhielt eine Mail, als er bereitstand

Währenddessen: DNS

Über die Dauer des Exports waren – logischerweise – beide Server aus. Ich nutzte die Zeit dahingehend kreativ, als dass ich den DNS (ich gehe aktuell über den von netcup bereitgestellten) überarbeitete: also auf die neuen IPs anzupassen und bei der Gelegenheit auch gerade auszumisten. Die TTLs hatte ich schon vorher relativ kurz gesetzt, damit die Änderungen schnell überall durch wären.

Das wäre mit einem eigenen DNS irgendwie eleganter, vor allem, weil ich mich dann nicht mehr durch ein Webinterface klicken müsste – hier rächt sich die Kaufwut in Sachen „neue Domains“ 😎 Irgendwann mache ich das mal noch neu und schön. Für den Moment ist „funktionierend“ aber auch gut.

Neuer Server: Snapshot importieren

  • Mail: „[…] Der von Ihnen beauftragte Export des Snapshots “Relocation” von Server “v1234567801234567890” wurde erfolgreich zum Download bereitgestellt. Der Download kann über das SCP durchgeführt werden auf der Server Seite “Medien” - “Snapshots”“
  • hingewandert => mein Snapshot ist etwa 150GB groß
  • den muss man allerdings nicht herunterladen!
  • stattdessen: netcup SCP => neuer Server => Medien => Images => Eigene Images => hier den zuvor exportierten Snapshot auswähen & installieren; ich habe auch „per E-Mail informieren“ angehakt, denn die Sache dauert eine ganze Weile
  • der neue Server wird automatisch gestoppt (der alte ist ja ohnehin aus), das Image wird an Ort & Stelle kopiert
  • der Vorgang dauerte in meinem Fall etwa eine Stunde; danach war der neue Server grundsätzlich startbereit

Eigene Images Eigene Images

Partition anpassen

Ich habe dem neuen Server noch die geänderte Partitionsgröße unterschieben müssen, das habe ich folgendermaßen gemacht:

  • netcup SCP => neuer Server => Medien => DVD Laufwerk => GParted Live CD => booten
  • Partition auswählen => Größe ändern => Partition wie gewünscht größer ziehen => bestätigen
  • Einstellungen anwenden mittels dem grünem Haken
  • GParted beenden

Der erste Start: Rescue

Der erste Start des Servers erfolgte ins Rescue-System. Dort band ich meine Platte ein und editierte einige Konfig-Files:

  • /etc/hostname
  • /etc/hosts
  • /etc/network/interfaces
  • postfix/main.cf
  • die Webseiten-Konfigurationen in /etc/nginx

Danach stand dem ersten „richtigen“ Start nichts mehr im Wege – und seither läuft alles, wie man sich das eben so wünscht. Insbesondere hat sich die IOWait-Problematik sozusagen in Luft aufgelöst

Grafische Darstellung iowait des neuen Servers über 24 Stunden Grafische Darstellung iowait des neuen Servers über 24 Stunden

Storagespace

Ich habe eine Portion Storagespace zugebucht, um die Backups außerhalb des eigenen Servers zu haben; diesen binde ich per NFS ins System ein. Wichtig in diesem Fall: dieser Storagespace „hängt“ immer am Server, für den er gebucht wird; wird dieser Server gekündigt, fällt auch der Storagespace raus – inklusive all seiner Daten. Das kann man nun finden, wie man will, es ist halt so.
Deshalb habe dem neuen Server Storagespace gebucht, diesen eingebunden und die Daten vom alten auf den neuen verschoben.

Damit mir die Cronjobs dabei nicht in Quere kamen, habe ich sie (als root) temporär alle rausgenommen. Im ersten Schritt habe ich den Inhalt meiner Crontab gesichert:

crontab -l > /root/crontab.txt

Danach habe ich die bestehende Crontab verworfen:

crontab -r
crontab -l
no crontab for root

Nun folgte die Übertragung der Daten, rsync machte seinen Job wie immer gut. Nachdem alles übertragen, alle Mountpoints korrigiert und der Datenbestand kontrolliert war, spielte ich die Crontab wieder zurück.

crontab /root/crontab.txt
crontab -l

Danach habe ich den bisherigen Storagespace aufgekündigt und dann, als nichts anderes mehr davon abhing, den alten Server.

Abschließend

Üblicherweise habe ich keine „Inklusiv-Domains“, weil die Umzüge erschweren. Natürlich schlossen sich diverse Aufräumarbeiten an, aber das ist mehr so das, was beim Betrieb eines Rooties sowieso immer mal wieder nötig ist. Ich hab Grafana auf eine aktuelle Version gebracht und mich mal wieder eingehender damit beschäftigt – unschön, wie schnell solche Kenntnisse doch „einrosten“.

Somit ist ein leidiges Thema nun endlich erledigt 🙃

Hintergrundbild © Marianne Spiller · Alle Rechte vorbehalten

Hinterlasse einen Kommentar

Ich freue mich über jeden Kommentar, es sei denn, er ist blöd.
Deshalb sind die Kommentare auf dieser Seite auch generell moderiert.

(Nick)Name: (erforderlich)
E-Mail: (erforderlich, wird nicht veröffentlicht)
Website: (optional)