Como diminuir o tamanho de discos virtuais VMDK –; Teil 1
Wo ich arbeite haben wir ein paar Datenbankserver PostgreSQL in verschiedenen virtuellen Maschinen auf einem VMWare-Server ausführen. So weit so gut, Es war kein Detail, das mich stört, war. Verwenden sie alle alte Versionen als 8.1 und 8.2, Während die aktuelle Version ist die 9.3.
Ich suchte kennen und fand heraus, dass es Version gibt 9.3 für Centos 6.5 Das ist, was wir für die neuen Server verwenden und beschlossen dann drei Server in einem zu vereinen.
Se você que leu até aqui e pensou “;Servern zu vereinheitlichen?? Dass Buro! Geben Sie 0 (null) für ihn!”; wissen Sie, dass man dachte und unsere Realität die geeignetste Lösung ist.
Das sagte, und mit dem Dilemma gelöst, Ich dargelegt, um eine VM mit dem Vagrant erstellen.
Die Vagrant ist ein hervorragendes Werkzeug, um uns zu helfen Devops. Mit der Einsatz von es kann Maschinen erstellen, die leicht unter den Mitgliedern eines Teams gemeinsam genutzt werden können. Ich gehe nicht in die Details der Nutzung, nur um Ihnen mitzuteilen, dass ich eine Box Centos verwendet 6.5 Grundlegende.
Bis hier war alles läuft sehr gut. Die VM eingerichtet und installiert die Software, die verwendet werden,, einschließlich PostgreSQL 9.3.
Wenn ich ging um zu migrieren begann die Basis für die Produktion einige Probleme. Das PGDATA-Verzeichnis, Das ist, wo PostgreSQL speichert die Daten in Tabellen, Ich war mit mehr als 40 GB. Tun ein DUMPALL und eine Wiederherstellen von on-the-fly war keine Option und beschlossen, die ganze Bank, um später die VM wiederherstellen zu extrahieren.
Dieser Teil hat geklappt. Die Wiederherstellung war erfolgreich (Nach einigen Ärger, Natürlich) und der Server wurde bereits ausgeführt..
Zu meiner Überraschung, Gab es diesen Server viele Tabellen, die andere Sicherung waren, die die gleiche Basis oder, die zu Testzwecken erstellt wurden und die tatsächliche Größe der Basis wäre viel kleiner, wenn ich ausschließen. Das ist, was ich getan habe. Entfernt mehrere Tabellen, Ich habe einige Sachen gelöscht und die Größe der Basis fiel auf über 20% die vorherige Größe. Außerdem, mit der komprimierten Dump-Datei, Diese Datei entpackt, die Nutzung des Weltraums ist sehr gewachsen.. Nach dem Löschen dieser Dateien, Es gab nicht mehr als 8 GB 200 GB dedizierten Datenträger für PostgreSQL reserviert. Wie können wir wissen, die VIRTUALIZER ist in der Lage, den Datenträger zu verwalten, so dass es nur wächst, wenn die Platzhalter effektiv besetzt ist und wie es passiert ist, die virtuelle Festplatte wuchs bereits auf 70 GB.
Es wäre ein Problem dieser Größe alles sicher auf beliebige Medien oder über das Netzwerk übertragen und darüber hinaus mussten wir den Speicherplatz so reduziert wie möglich an andere Server migrieren zu halten, aufgrund von Einschränkungen der physischen Maschine. Da die meisten dieser VMDK war leer, Es musste ein Weg, um seine Größe zu reduzieren.
Wenn der Typ des Datenträgers VDI, die Anwendung würde VBoxManage behandeln., die Kompression der Leerraum am Ende der Partition machen, aber diese Platte ist der Typ VMDK als das kompatibelste zwischen verschiedenen Virtualizadores.
Der einzige Weg, ich wußte, daß möglich war die Festplatte klonen.. Wie die Linux-Kerl Hier hatte das Unternehmen über die Partitionsstruktur fragte, habe ich beschlossen, auch die Struktur ändern (und die Größe) von der Festplatte auf das gewünschte Format und so beschloss ich, die Installation auch Klonen.
Folgen Sie dem Rezept, das ich verwendet.
Zuerst würde ich die Festplatte von der Datenbank verwendete verkleinern. Der erste Schritt ist es, den Datenträger zu erstellen, der Klon.
HINWEIS: Im Falle der Maschine benutzte ich, Es gab nur einen IDE-controller. Dann gibt es die Notwendigkeit, einen anderen Controller hinzufügen, wenn Sie die beiden Scheiben auf einmal hinzufügen möchten. Ich nehme nur eine Scheibe gleichzeitig angeschlossen darunter die Sekundären IDE Slave weil ich glaube, dass die meisten Fälle in diesem passen würde.
Die folgende Abbildung zeigt die hinzufügen-Schaltfläche-Festplatte.
Nach dem Anklicken wird es angefordert werden, zu wählen, wenn Sie ein neues oder ein bestehendes erstellen möchten. In unserem Fall müssen wir wählen Neuen Datensatz erstellen.
Der nächste Schritt ist zu definieren, welche Art der gewünschten Verteilung. Wählen Sie dynamisch zugewiesen. Weiter erläutern Sie die Vorteile dieser Wahl.
Nach, werden aufgefordert, über die Art der Festplattendatei erstellt werden. In unserem Fall, Wir reden immer über VMDK, So wählen Sie diese option.
HINWEIS: Verwendung der VDI-Typ erstellt Dateien kleiner und kompatibler mit VirtualBox, aber es ist nicht lesbar von VMWare, zum Beispiel. Wie in meinem Fall wird das Ziel eine VMWare-Server sein., Es ist wichtig, das kompatibelste Format mit ihm wählen, die folgende Liste ist die VMDK.
Legen Sie den Namen und die Größe des Datenträgers. Wie wir reden über das Klonen und physikalische Größe Reduktion, Denken Sie daran, die die Größe sollte mindestens höher als die Menge der tatsächlichen Daten auf der Festplatte geklont werden. Nicht die Mühe, ein sehr großes zu schaffen und es ist kein Speicherplatz auf Ihrem computer. Gewusst wie: dynamische Zuweisung in das vorherige Element wählen, der Raum wird dynamisch zugewiesen., IE, die Festplatte wächst nur, wenn Daten effektiv Speicherplatz beansprucht.
Bereit! Unser Ziel-Festplatte wird erstellt und wird wie im Bild unten angezeigt. Beachten Sie die Größen berichtet. Eine neu erstellte, leere VMDK-Disk dauert etwa 25 MB (eine VDI nur 2 MB).