Verschlüsselten Server speicheroptimieren

  • Hi,


    mein vServer wurde von Netcup auf ein neues Wirtssystem umgezogen, seitdem erhalte ich im SCP die Meldung "Es ist eine Speicher-Optimierung notwendig.". Grundsätzlich hätte ich nichts dagegen, da ich momentan wegen der Speicherbelegung auch keine Snapshots mehr erstellen kann. Stellt sich mir die Frage: Funktioniert das mit einem LUKS verschlüsselten System überhaupt? Kann man etwas Unlesbares viel optimieren? Kann das im blödesten Fall sogar Schaden anrichten, indem irgendwelche Daten verschoben/defragmentiert werden, die gar nicht "verstanden" werden können?


    Danke im Voraus

  • Benutzt du fstrim (LUKS mit --allow-discards)? Dann ist freier Speicher nach außen sichtbar, und kein Unterschied ob du verschlüsselst oder nicht.


    Aber auch bei Vollbelegung (verzufalltes LUKS ohne TRIM/discard) kanns sein daß deine "Festplatte" bei Netcup fragmentiert herumliegt.


    Das ist eben (wahrscheinlich) kein Blockgerät sondern qcow2- oder sonst ein Format das womöglich mit Snapshots, Copy-On-Write Strukturen, Sparse etc. verseucht und auf dem Dateisystem selbst fragmentiert ist.


    Verändern an den Daten sollte die Optimierung so oder so nichts. Aber wie immer: Backups.

  • Benutzt du fstrim (LUKS mit --allow-discards)? Dann ist freier Speicher nach außen sichtbar, und kein Unterschied ob du verschlüsselst oder nicht.

    Ich benutze tatsächlich noch einen Server mit SAS statt SSD :^) Der belegte Speicherplatz im SCP entspricht auch ungefähr 3x dem real belegten, während es beim SSD-Server korrekt angezeigt wird.


    Also lese ich daraus, dass die Optimierung keine Probleme bereiten sollte, aber mir auch nur bedingt/kaum helfen wird.

  • Bei ganz alten vServern wird im Zuge der Optimierung auch das Imageformat im Hintergrund gewechselt. (Das steht aber glaube ich dort, wenn das der Fall ist.)


    Ob es Dir viel bringt, wird man pauschal schwer sagen können. netcup hat durchaus ein Interesse daran, dass Deine virtuelle HDD immer optimiert ist: Braucht weniger Ressourcen, belegt weniger Speicherplatz am Hostsystem und ohne Snapshots (die bei der Optimierung gelöscht werden) spart man nochmals Ressourcen ein. ;)


    Im Zweifelsfall halt nicht optimieren, wenn Du keine Probleme hast. Ich würde den vServer vor einer Optimierung übrigens lieber manuell herunterfahren. Mir wurden in den letzten Jahren durch die Optimierung mehrfach Systeme sofort hart abgeschaltet. Irgendwo lauert da ein Bug im SCP...

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Ich benutze tatsächlich noch einen Server mit SAS statt SSD :^)

    Das ist egal.


    Direkten Zugriff auf Hardware hast du sowieso nicht. Die TRIM-Kommandos die dein fstrim schickt, landen nicht auf einer SSD. Das macht wenn dann das Hostsystem nebenläufig nach eigenem Gutdünken ohne direkte Relation zu dir.


    TRIM/discard ist allgemein der Mechanismus der es dem Dateisystem erlaubt, freie Speicherbereiche mitzuteilen. Und ohne den man nur aufwendig raten oder freie Speicherbereiche explizit ausnullen müsste. Und so kann mit fstrim Platz im VM-Image frei werden, oder im Snapshot, oder im Thin-Provisioning bei LVM, oder bei anderen Anwendungen, ohne daß auch nur eine SSD im Spiel ist.

  • Hm ok, ich bin jetzt davon ausgegangen, dass das einen Unterschied macht, da der SSD-Server mit der gleichen Standard-Installationsroutine verschlüsselt wurde (nur unter Ubuntu 20.04 statt 18.04) und dort freier/gelöschter Speicherplatz nach außen sichtbar freigegeben wurde, aber auch nicht auf das GB präzise. Auf den ersten Blick sehe ich hier eigentlich auch keine Konfigurationsunterschiede.


    In crypttab haben beide discard eingetragen, in der lvm.conf ebenso, in der fstab fehlt es bei beiden. Nach dem Eintragen sollte das das Hostsystem wohl mitbekommen (?). Fstrim wird laut einem Systemd Timer ja schon wöchentlich ausgeführt.


    Der einzige "Nachteil" wäre wohl, dass theoretisch oberflächliche Infos zu Dateien oder zum Filesystem nach außen geleaked werden könnten. Von daher würde mir der Trim eigentlich auch manuell bei Bedarf ausreichen, wenn mal ein Snapshot o.ä. gebraucht wird.

  • So kleines Update zum Thema, nachdem ich mal wieder einen Snapshots gebraucht habe: Scheinbar war das Trimmen bereits standardmäßig aktiviert (Ubuntu 18.04), selbst mit LUKS. Mir wurde im SCP mehr als 3x so viel belegter Speicherplatz angezeigt, wie tatsächlich belegt wurde. Nach der Speicheroptimierung war das wieder korrekt. Hat sogar nur ein paar Minuten gedauert statt der angezeigten Stunde. Also kann man wohl nur empfehlen das mal zu machen :)

  • So kleines Update zum Thema, nachdem ich mal wieder einen Snapshots gebraucht habe: Scheinbar war das Trimmen bereits standardmäßig aktiviert (Ubuntu 18.04), selbst mit LUKS. Mir wurde im SCP mehr als 3x so viel belegter Speicherplatz angezeigt, wie tatsächlich belegt wurde. Nach der Speicheroptimierung war das wieder korrekt. Hat sogar nur ein paar Minuten gedauert statt der angezeigten Stunde. Also kann man wohl nur empfehlen das mal zu machen :)

    Das kann auch gut und gerne mal 10 Stunden dauern, so zumindest mal geschehen bei meinem VPS 2000 G8 Plus (1,6 TB), du hast also Glück gehabt :)

    Meine Minecraft-Plugins auf SpigotMC (Open Source): www.spigotmc.org/members/mfnalex.175238/#resources

    Discord: discord.jeff-media.com