GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was sind die Vorteile des Logical Volume Managers

Lösung 1:

Direkt entnommen aus meinem Blog-Eintrag:http://www.standalone-sysadmin.com/blog/2008/09/introduction-to-lvm-in-linux/

Lassen Sie uns zunächst über das Leben ohne LVM sprechen. In den schlechten alten Zeiten hattest du eine Festplatte. Diese Festplatte könnte Partitionen haben. Sie könnten Dateisysteme auf diesen Partitionen installieren und diese Dateisysteme dann verwenden. In beide Richtungen bergauf. Es sah ungefähr so ​​aus:

Sie haben das eigentliche Laufwerk, in diesem Fall sda. Auf diesem Laufwerk befinden sich zwei Partitionen, sda1 und sda2. Es gibt auch ungenutzten freien Speicherplatz. Auf jeder der Partitionen befindet sich ein Dateisystem, das gemountet wird. Der tatsächliche Dateisystemtyp ist willkürlich. Sie könnten es ext3, reiserfs oder was auch immer nennen. Es ist wichtig zu beachten, dass es eine direkte Eins-zu-Eins-Korrelation zwischen Festplattenpartitionen und möglichen Dateisystemen gibt.

Lassen Sie uns eine logische Datenträgerverwaltung hinzufügen, die genau dieselbe Struktur nachbildet:

Jetzt sehen Sie dieselben Partitionen, jedoch gibt es eine Ebene über den Partitionen, die als „Volume Group“ bezeichnet wird, buchstäblich eine Gruppe von Volumes, in diesem Fall Festplattenpartitionen. Es könnte akzeptabel sein, sich dies als eine Art virtuelles Laufwerk vorzustellen, das Sie partitionieren können. Da wir unsere bisherige Konfiguration exakt abgleichen, sieht man die Stärken des Systems noch nicht. Sie werden vielleicht bemerken, dass wir über der Volume-Gruppe logische Volumes erstellt haben, die man sich als virtuelle Partitionen vorstellen kann, und auf diesen bauen wir unsere Dateisysteme auf.

Sehen wir uns an, was passiert, wenn wir mehr als ein physisches Volume hinzufügen:

Hier haben wir drei physische Festplatten, sda, sdb und sdc. Jede der ersten beiden Festplatten hat eine Partition, die den gesamten Speicherplatz einnimmt. Die letzte, sdc, hat eine Partition, die die Hälfte der Festplatte einnimmt, wobei die Hälfte unpartitionierter freier Speicherplatz bleibt.

Wir können die Volumengruppe darüber sehen, die alle derzeit verfügbaren Volumen enthält. Hier liegt eines der größten Verkaufsargumente. Sie können eine logische Partition so groß wie die Summe Ihrer Festplatten erstellen. In vielerlei Hinsicht ähnelt dies der Funktionsweise von RAID-Level 0, außer dass überhaupt kein Striping vorhanden ist. Daten werden größtenteils linear geschrieben. Wenn Sie Redundanz oder Leistungssteigerungen benötigen, die RAID bietet, stellen Sie sicher, dass Sie Ihre logischen Volumes über den RAID-Arrays platzieren. RAID-Slices funktionieren hier genauso wie physische Festplatten.

Jetzt haben wir diese Datenträgergruppe, die 2 1/2 Platten belegt. Es wurde in zwei logische Volumes aufgeteilt, von denen das erste größer ist als jede der Festplatten. Den logischen Volumes ist es egal, wie groß die tatsächlichen physischen Festplatten sind, da sie nur sehen, dass sie aus myVolumeGroup01 herausgeschnitten sind. Diese Abstraktionsebene ist wichtig, wie wir sehen werden.

Was passiert, wenn wir entscheiden, dass wir den ungenutzten Speicherplatz benötigen, weil wir mehr Benutzer hinzugefügt haben?

Normalerweise würden wir etwas Ärger bekommen, wenn wir die Eins-zu-Eins-Zuordnung verwenden würden, aber bei logischen Volumes können wir Folgendes tun:

Hier haben wir den zuvor freien Speicherplatz auf /dev/sdc genommen und /dev/sdc2 erstellt. Dann haben wir das zur Liste der Volumes hinzugefügt, die myVolumeGroup01 umfassen. Sobald dies erledigt war, konnten wir jedes der logischen Volumes nach Bedarf erweitern. Seit wir Benutzer hinzugefügt haben, ist myLogicalVolume2 gewachsen. An diesem Punkt konnten wir, solange das Dateisystem /home es unterstützte, es erweitern, um den zusätzlichen Platz zu füllen. Alles nur, weil wir unseren Speicher von den physischen Festplatten abstrahiert haben, auf denen er lebt.

Okay, das deckt das grundlegende Warum von Logical Volume Management ab. Da Sie bestimmt darauf brennen, mehr darüber zu erfahren, wie Sie Ihre eigenen Systeme vorbereiten und erstellen, finden Sie hier einige hervorragende Ressourcen, die Ihnen den Einstieg erleichtern:

http://www.pma.caltech.edu/~laurence/Linux/lvm.html
http://www.freeos.com/articles/3921/
http://www.linuxdevcenter.com/pub/a/linux/2006/04/27/managing-disk-space-with-lvm.html

Lösung 2:

Sie können LVM verwenden, um viele Dinge mit Festplatten zu tun. Der Hauptvorteil ist die Möglichkeit, Dateisysteme im laufenden Betrieb zu erweitern. Angenommen, Sie richten einen Protokollserver ein und wissen, dass Sie in Zukunft eine Menge Daten haben werden. Ext3 unterstützt maximal 16 TB (mehr je nach Kernel und EL-Version). Aber was ist, wenn Sie wissen, dass Sie in 2 Jahren 1 PB Speicherplatz benötigen? Nun, das schafft einige Probleme. Zuerst wird Ihr Chef Sie mit Reh im Scheinwerferlicht ansehen, wenn Sie ihm den Preis dieser Speicherhardware nennen. Dies führt zu einem weiteren Problem – Sie müssen mit einer kleinen Lösung beginnen, die Sie nach oben skalieren können. LVM bietet Ihnen diese Option. Sie beginnen mit ein paar Festplatten. Dann fügen Sie weitere hinzu, wandeln sie in eine logische Gruppe um, fügen sie dem ersten logischen Volume hinzu, erhöhen die Größe des Volumes und erweitern schließlich das Dateisystem. Voila, du hast ein nettes skalierendes Dateisystem.

Dies erspart Ihnen, die Daten vom Gerät zu verschieben, die LUNs neu zu formatieren und dann alles zurück zu verschieben, um ein Upgrade durchzuführen. Entschuldigen Sie die Kürze, ich hoffe, das macht Sinn.

Bearbeiten:Ich sollte auch beachten, dass Sie Ext3 nicht verwenden möchten, wenn Sie mit 1 PB zu tun haben ... wahrscheinlich XFS.

Lösung 3:

Es gibt eine Reihe indirekter Vorteile von LVM. Die Hauptaufgabe von LVM besteht darin, die physischen Festplatten vom Betriebssystem zu abstrahieren . Der Hauptvorteil davon ist einfach Flexibilität . Die meisten Vorteile von LVM kommen nur zum Tragen, wenn Sie über ein Dateisystem verfügen, das eine spontane Größenänderung unterstützt. Die grundlegende Funktionsweise von LVM wird im Folgenden beschrieben:

Systempartitionen existieren eine Ebene über der Festplatte

Ohne LVM verwendet Linux die Partitionen, die sich physisch auf der Festplatte befinden. Die Partitionen sind direkte Gerätenamen. Die Partitionstabelle befindet sich im MBR und normalerweise (im Fall von logisch erweiterten Partitionen) im erweiterten Boot-Datensatz (wodurch Sie eine größere Anzahl von Partitionen erstellen können). Partitionen definieren eine Größe und tippen neben anderen Attributen (genauer gesagt definieren sie einen Start- und einen Endzylinder, der im Wesentlichen die Größe definiert). Da sie so eng mit der Festplatte verbunden sind, ist es wichtig, bei der Installation ein "korrektes" Partitionierungsschema einzurichten. Wenn sich plötzlich eine Maschinenfunktion ändert oder wenn Sie ein Anfänger sind und die Auswirkungen der Partitionierung nicht verstanden haben oder wenn Sie irgendwo die Festplattennutzung oder Protokolle einer bestimmten Anwendung unterschätzt haben, kann das Ändern dieser Partitionierung umständlich sein. Es gibt Tools dafür, aber Sie müssen im Allgemeinen Daten von der Partition verschieben, um sie zu ändern. Wenn Sie vier Partitionen haben, wirkt sich das Ändern des Endzylinders der zweiten Partition natürlich auf die Startzylinder der dritten und vierten Partition aus, und Sie geraten in eine chaotische Situation.

Der Naive mag die Verwendung einer einzelnen großen Partition befürworten, aber Sie könnten rückgängig gemacht werden, wenn Sie Quoten einführen oder bösartige Prozesse isolieren müssen, die Teile Ihres Systems füllen (z. B. /var/log, /tmp usw.)

Die Vorteile davon sind:

Speicher hinzufügen/entfernen

Das Hinzufügen von Speicher ist im Allgemeinen trivial. Wenn Sie Hardware- oder Software-RAID verwenden und weitere Festplatten hinzufügen, müssen Sie möglicherweise oft mit symbolischen Links herumspielen, um das RAID-Array neu zu erstellen, damit Linux Ihren neuen Speicher an den gewünschten Orten verfügbar macht.

Nehmen Sie das Beispiel eines großen /home-Verzeichnisses, das voll wird. Das existiert auf einem bestehenden RAID 1-Volume mit zwei Festplatten. Sie möchten zwei weitere Festplatten hinzufügen. Sie richten diese in einer Hardware-RAID-1-Konfiguration ein. Ohne LVM haben Sie mehrere Optionen:

  1. Erstellen Sie das vollständige RAID-Array in einer 1+0-Konfiguration neu, was erfordert, dass Daten von der Maschine verschoben, neu aufgebaut und wieder verschoben werden.
  2. Erstellen Sie eine neue RAID 1-Volumengruppe, die separat ist. Linux hat bereits das erste RAID-Volume auf /home gemountet, also müssen Sie das zweite RAID-Volume auf /home1 oder ähnlich mounten. Um nun die geeigneten Pfade für Benutzer zu erhalten, die mit dem ersten konsistent sind, müssen Sie möglicherweise Symlinks verwenden, um denselben Effekt zu erzielen. Darüber hinaus erfordert diese Lösung eine ständige Wartung des ursprünglichen RAID-Volumes und möglicherweise die Migration von Daten von der ursprünglichen Partition.

Mit LVM können Sie einfach die neue RAID 1-Volumengruppe zum zusätzlichen Speicherpool hinzufügen, die Größe des Dateisystems ändern (sofern es dies unterstützt) und voila, /home ist jetzt plötzlich größer. Sie müssen nichts symbolisieren oder Wartungsarbeiten durchführen, wenn Sie möglicherweise Daten von /home nach /home1 oder umgekehrt verschieben. Spülen, waschen, wiederholen für zukünftige Festplatten-Upgrades.

Online-Wartung

Die meisten LVM-Aufgaben können, sofern die Hardware dies unterstützt, online ausgeführt werden, ohne dass der Computer neu gestartet werden muss. Wenn Sie Festplatten auf einem System im laufenden Betrieb austauschen können, können Sie neue Festplatten hinzufügen und anschließend alte (möglicherweise kleinere) Festplatten entfernen, um die Systemspeicheranforderungen zu erhöhen.

Eines der Hauptprobleme bei LVM-Volumes ist, dass die Fragmentierung meiner Erfahrung nach zu einem Problem werden kann, wenn sie sich der Kapazität nähern. Volumes> 90 % und wirklich> 95 % können bedeuten, dass Sie je nach Festplattennutzung und Dateitypen mit einer schlechten Fragmentierung auf der Festplatte enden können. Es ist selten etwas, worüber man sich übermäßig Sorgen machen muss, das ist bei jeder Art von Volume- / Partitionsverwaltung der Fall, aber hier ist die Fragmentierung auf der Volume-Ebene im Gegensatz zur Partition das Problem.


Linux
  1. Verwenden von Ansible zur Automatisierung von Logical Volume Manager-Konfigurationen

  2. Debian vs. Ubuntu:Was sind die Unterschiede?

  3. Was sind also logische CPU-Kerne (im Gegensatz zu physischen CPU-Kernen)?

  4. Was sind die Alternativen zu Network Manager for Wireless?

  5. Was sind die Vorteile von CloudLinux?

Cassandra vs. MongoDB – Was sind die Unterschiede?

Terraform vs. Kubernetes:Was sind die Unterschiede?

Was ist Intel SGX und was sind die Vorteile?

IMAP vs. POP3 vs. SMTP:Was sind die Unterschiede?

useradd vs. adduser:Was sind die Unterschiede?

Was sind die Nachteile der Nachrichtenwarteschlangen von Linux?