Was ist die beste Vorgehensweise zum Hinzufügen von Datenträgern in LVM?

21

Den Linux-Manpages zufolge können Sie einer Volume-Gruppe sowohl Raw-Festplatten als auch Partitionen hinzufügen.

In anderen Dokumentationen (RedHat, CentOS oder openSUSE) beziehen sich alle Beispiele auf das Hinzufügen von Partitionen zur VG anstelle von Raw-Festplatten. Was ist gängige (bewährte) Praxis?

MacGyver
quelle

Antworten:

19

RHEL6 LVM-Administratorhandbuch

Laut RHEL 6 Logical Volume Administration Guide wird empfohlen, dass Sie ein gesamtes Laufwerk trotzdem partitionieren, wenn Sie es als physisches Volume in einer LVM-Volume-Gruppe verwenden:

Auszug aus dem Handbuch "RHEL6 Logical Volume Manager Administration LVM-Administratorhandbuch"

2.1.2. Mehrere Partitionen auf einer Festplatte

Mit LVM können Sie physische Volumes aus Festplattenpartitionen erstellen. Es wird im Allgemeinen aus folgenden Gründen empfohlen, eine einzelne Partition zu erstellen, die die gesamte Festplatte abdeckt und als physisches LVM-Volume bezeichnet wird:

Verwaltungskomfort

Es ist einfacher, den Überblick über die Hardware in einem System zu behalten, wenn jede reale Festplatte nur einmal angezeigt wird. Dies gilt insbesondere dann, wenn eine Festplatte ausfällt. Darüber hinaus können mehrere physische Volumes auf einer einzelnen Festplatte beim Booten eine Kernelwarnung über unbekannte Partitionstypen auslösen.

LVM Howto

Abschnitt 11.1. Das Initialisieren von Festplatten oder Festplattenpartitionen des LVM-Howto lautet wie folgt:

Auszug aus dem LVM Howto

Für ganze Festplatten:

Führen Sie pvcreate auf der Festplatte aus:

# pvcreate /dev/hdb

Dadurch wird am Anfang der Festplatte ein Datenträgergruppendeskriptor erstellt.

Nicht empfohlen

Die Verwendung der gesamten Festplatte als PV (im Gegensatz zu einer Partition, die sich über die gesamte Festplatte erstreckt) wird nicht empfohlen, da Verwaltungsprobleme auftreten können. Jedes andere Betriebssystem, das die Festplatte überprüft, erkennt die LVM-Metadaten nicht und zeigt die Festplatte als frei an. Daher wird sie wahrscheinlich überschrieben. LVM selbst funktioniert problemlos mit ganzen Festplatten-PVs.

Wenn Sie eine Fehlermeldung erhalten, dass LVM einen Datenträger mit einer Partitionstabelle nicht initialisieren kann, stellen Sie zunächst sicher, dass der Datenträger, auf dem Sie arbeiten, der richtige ist. Wenn Sie sicher sind, dass dies der Fall ist, führen Sie Folgendes aus:

GEFÄHRLICH

Die folgenden Befehle zerstören die Partitionstabelle auf der Festplatte, die gerade bearbeitet wird. Stellen Sie sehr sicher, dass es sich um die richtige Festplatte handelt.

# dd if=/dev/zero of=/dev/diskname bs=1k count=1
# blockdev --rereadpt /dev/diskname

Schlussfolgerungen

Dies sind die Hauptquellen, denen ich vertrauen würde, wenn ich festlegen möchte, ob eine einzelne Partition auf einer Festplatte formatiert werden soll, bevor sie als physisches Volume hinzugefügt wird. Wie andere Antworten (und Kommentare) gezeigt haben, würden Sie sich nicht irren, wenn Sie nur das gesamte Laufwerk ohne Partition hinzufügen.

Für mich ist das so, als würde ich mit angelegtem Sicherheitsgurt in meinem Auto fahren. Wenn Sie nie einen Unfall haben, hat der Sicherheitsgurt keinen Zweck erfüllt, aber wenn ich jemals einen Unfall habe, bin ich sicher froh, dass ich ihn getragen habe.

Follow-up # 1 (An @ Joels Kommentare)

Ich dachte, dass die oben genannten 2 Führer 2 ziemlich gute Gründe waren. Sie sind beide offizielle Guides, einer von RH und der andere ein vom LVM-Team zusammengestelltes Howto.

Hier ist ein weiterer Grund. Indem die Festplatte nicht partitioniert wird, wird keine ID explizit auf der Festplatte festgelegt, um eindeutig zu identifizieren, wie sie verwendet wird.

 fdisk -l
 ...
/dev/sda6       318253056   956291071   319019008   8e  Linux LVM

Als Administrator von Systemen ist es für mich und andere viel offensichtlicher, wie dieses Laufwerk im Vergleich zu einem Laufwerk ohne 8e verwendet wird.

Ich weiß zu schätzen, was Sie sagen. @Joel, ich habe auch in einem Fortune-500-Unternehmen gearbeitet, in dem wir Hunderte von Linux-Bereitstellungen sowohl in physischen / virtuellen Desktop- / Server-Bereitstellungen als auch in großen Speicherbereitstellungen durchgeführt haben Sprichwort.

slm
quelle
Nur weil Red Hat es sagt, wird es nicht wahr. Ich habe noch keinen wirklichen Grund zu hören, warum Sie eine Festplatte partitionieren würden, und ich kann mir nur Gründe vorstellen, dies nicht zu tun. Auch "Es ist einfacher, die Hardware in einem System im Auge zu behalten, wenn jede reale Festplatte nur einmal angezeigt wird." Ist das wirklich ein Problem? Es wird fdisk -leinmal, /sys/blockeinmal und einmal in Ihrem BIOS auftauchen . Wo soll es dupliziert werden? (Fortsetzung)
Bratchley
Ich spreche aus persönlicher Erfahrung, wir mussten einfach viel Platz für viele Bände schaffen. Sie waren partitioniert, sodass wir auf alle möglichen Probleme stießen, bei denen der Kernel die Partitionstabelle nicht losließ. Wir mussten also eine Neu-Partitionierung und dann einen Neustart durchführen, was ohne guten Grund zu einem Ausfall des Dienstes führte. Wie bei "Jedes andere Betriebssystem, das auf die Festplatte zugreift, erkennt die LVM-Metadaten nicht und zeigt die Festplatte als frei an. Es ist also wahrscheinlich, dass sie überschrieben wird", stimmt das überhaupt nicht. In Windows wird es nur als unbenutzte Festplatte angezeigt (aber der Administrator weiß es besser). Über welches Betriebssystem sprechen sie?
Bratchley
Bisher gibt niemand, der behauptet, dass die Partitionierung der Festplatte bevorzugt wird, gültige Gründe an, warum und ermutigt die Leute tatsächlich, etwas zu tun, das sie in einer Unternehmenssituation mit Sicherheit in den Stich lässt. . Alles, was wir bekommen, sind vage, handfeine Antworten darüber, wie es in anderen Betriebssystemen angezeigt wird (als ob dies irgendwie ein Problem wäre, würde Windows Ihre ext3 auf einer Partition nicht erkennen) oder unbegründete Aussagen darüber, die mehrmals angezeigt werden oder es irgendwie einfacher zu machen, die Speicherung zu verfolgen.
Bratchley
Danke Jungs :) Diese Diskussion war sehr hilfreich für mich.
MacGyver
2
@ Joel - Wie ich. Ich schätze die Diskussion. Es ist gut, dass wir alle unsere verschiedenen praktischen Erfahrungen einbringen und versuchen können, eine bessere Anleitung zu diesem bestimmten Thema zu liefern, als es derzeit auf den Websites verfügbar ist. Zumindest ziehen wir viele fragmentierte Dokumente an einen einzigen Ort. 8-).
slm
10

Es ist vorzuziehen, einige allgemein anerkannte Deskriptoren (Metadaten) zu haben, und MBR steht durchaus als ein solcher Deskriptor. Sogar GPT verwendet eine alte MBR-basierte Partitionstabelle, um das Vorhandensein anzuzeigen.

Sie verlieren zwar etwas Speicherplatz, aber es ist in der Zwischenzeit ein vernachlässigbarer Vorteil, zu verstehen, was sich auf der Festplatte befindet (und wo).

Poige
quelle
1
Möglicherweise verlieren Sie auf der Festplatte nicht einmal Speicherplatz. Überprüfen Sie pvdisplay, (PV-GRÖSSE: nicht verwendbares X MiB), ob X größer als 1 MB ist. Sie können auch partitionieren, ohne mehr zu verlieren.
Frostschutz
@frostschutz Aufmerksam, aber schlau: Der Platz, den man verschwenden kann, ist nicht "dev size modulo PE size", sondern "(dev size minus metadata space (384K)) modulo PE size". Ob sich daraus mehr oder weniger ergibt, hängt natürlich davon ab.
Hauke ​​Laging
Auch LVM hat einen Deskriptor. Warum erst eine FAT-Tabelle erstellen und dann den LVM-Deskriptor. LVM speichert die Metadaten im zweiten Sektor. Das eine, woran ich denken kann, um zuerst ein Fat zu erstellen, ist für Disaster Recovery oder für einige Anfänger-Linux-Administratoren (Verwaltung von Festplatten).
MacGyver
HP-UX verwendet auch LVM. Auf dieser Plattform ist es üblich, Raw-Datenträger hinzuzufügen und LVM seine Arbeit auf den Datenträgern ausführen zu lassen. LVM2.x
MacGyver
1
@ user39597, Sie bringen die Dinge durcheinander. FAT steht für File Allocation Table, das ist ein MS-DOS-Ding. Die MBR-Partitionstabelle ist de facto Standard. Viele verschiedene Tools wissen nicht, dass LVM weiß, dass die Festplatte partitioniert und belegt ist. Dies ist eine Vorsichtsmaßnahme.
Poige
4

Das Erstellen physischer Volumes auf Partitionen, die 100% der Festplatte belegen, ist fast nie das Richtige. Ich sage "fast", nur weil ich die Einstellung einnehme, dass nur, weil mir kein Grund einfällt, etwas zu tun, das nicht bedeutet, dass es keinen Grund gibt, es zu tun. Trotzdem kann ich mir keinen einzigen Grund vorstellen, Partitionen mit 100% des Speicherplatzes auf eine Festplatte zu stellen, wenn es sich um LVM handelt.

Sie erhalten keinen erkennbaren Vorteil, wenn Sie einen Teil der Stabilität der Partitionierung zurückerhalten. Wenn es sich um SAN-gesicherte physische Volumes handelt und Sie dies tun, gibt es nur zwei Möglichkeiten, um den Speicherplatz in der Volume-Gruppe zu erweitern:

  1. Präsentieren Sie eine neue größere LUN, fügen Sie sie der Volume-Gruppe hinzu, entfernen Sie die unerklärlich partitionierte LUN, entfernen Sie sie aus der Volume-Gruppe und weisen Sie die SAN-Mitarbeiter an, sie zu deaktivieren. Was möglicherweise funktioniert und online erledigt werden kann (mit einem Leistungseinbruch und der Annahme, dass in Ihrem Speicherpool auf der SAN-Seite genügend SAN-Speicher vorhanden ist, um diese beiden LUNs gleichzeitig zu speichern), ist aber machbar.
  2. Der einzige andere Weg ist, sich wieder mit Partitionen zu beschäftigen. Dies ist einer der Gründe, warum Leute gut konzipierte Volume-Management-Schemata (wie btrfs, lvm, zfs usw.) mögen. Sie können die Partitionstabelle des physischen Datenträgers bearbeiten und hoffen, partprobedass Sie die neuen Größen einlesen können. Meiner Erfahrung nach funktioniert dies jedoch nur 1 Mal von 2 und Sie müssen das Dateisystem aushängen (dh Sie müssen aus einem anderen Grund offline gehen) wie Volume Manager).

Wenn Sie eine ganze Festplatte ausführen, kann der SAN-Administrator die LUN für Sie erweitern, Sie scannen den SCSI-Bus erneut, die neue Größe der LUN wird übernommen, und Sie führen einen Schritt aus, pvresizeum das physische Volume zu erweitern. Alles, ohne dass Dateisysteme offline geschaltet werden müssen.

Wenn Sie das MBR-Bit deaktivieren, nehmen Sie in der Regel keine PVs von einem System und präsentieren sie einem anderen in einer Unternehmensumgebung. Selbst wenn ja, wenn es sich um LVM handelt, möchten Sie, dass das Betriebssystem, dem Sie die LUN präsentieren, LVM unterstützt. Ansonsten, was ist der Sinn, es ihnen zu präsentieren? Wenn dies der Fall ist, werden alle physischen Datenträgerinformationen, Datenträgergruppeninformationen und logischen Datenträger angezeigt (vorausgesetzt, dies ist der einzige PV in der Datenträgergruppe). So dokumentiert es sich selbst.

Grundsätzlich gilt: Eine ganze Festplatte zu 100% zu partitionieren, ist wie zu fordern, dass der Kellner, der Ihnen einen Apfelkuchen gebracht hat, Ihnen auch ein Messer bringt. Wenn er es tut, wirfst du das Messer zur Seite und vergräbst einfach dein Gesicht in der Torte. Das heißt: Es ist nicht sinnvoll, auf einem Werkzeug zu bestehen, um etwas in kleinere Teile zu unterteilen, wenn Sie es sowieso nur auf einmal verwenden.

Bratchley
quelle
2
Theoretisch irren Sie sich nicht, in der Praxis sehen Sie alltägliche Probleme wie Betriebssysteme und Installer (sogar Linux), die anbieten, diese vermeintlich freie Festplatte zu formatieren - weil sie LVM nicht erkannt haben. Gleichzeitig gibt es keine Nachteile (in Bezug auf die Leistung) bei der Verwendung von Partitionen. In einer Heimanwender-, Desktop- und Multi-OS-Umgebung ist es sicherer, sich an Partitionen zu halten.
Frostschutz
Ich habe die Probleme mit den Installateuren selbst nicht gesehen. Der Kernel soll das Äquivalent zu pvscanbeim Booten tun , daher sollte der Kernel auf der Installations-CD alle Block-Geräte nach LVM-Köpfen durchsucht haben. Ich würde wahrscheinlich einen Fehler melden, wenn der Anbieter erklärt, dass sein Installationsprogramm nicht verfügbar ist. Bei Heiminstallationen ist das Problem dasselbe, auch wenn sich das Root-Dateisystem über zwei Festplatten erstreckt, deren primäre Festplatte für / boot partitioniert werden soll, und wenn der Kernel geladen wird, wird der Volume-Scan durchgeführt. Auf diese Weise können Sie sogar mit LVM booten.
Bratchley
Aber auf der anderen Seite gibt es keinen Vorteil von Partitionen außerhalb der BIOS- und Grub-Unterstützung (daher / boot). Auch für Heimanwender. Es gibt auch sehr wenig Vorteile (Ihre Festplatte wird nicht größer), nur eine gute Angewohnheit, um
hineinzukommen
Danke Jungs :) Diese Diskussion war sehr hilfreich für mich.
MacGyver
0

Nach meiner Erfahrung ist die Verwendung von Partitionen gut, wenn Sie eine Testumgebung oder eine kleine Umgebung verwenden, in der keine Festplatte / kein Speicher verfügbar ist. Es ist gut für die Schule oder für die Arbeit in Ihrer Garage. In einer realen Welt mit einem virtuellen Server, auf dem Sie die Festplatte bei Bedarf erweitern können, ist es besser, wenn Sie LVM die rohe / gesamte Festplatte verwalten lassen, anstatt sie zu partitionieren. Die Verwaltung ist einfach und flexibel, ohne dass der Server neu gestartet werden muss. Wissen Sie, wie viel Zeit das spart? Multiplizieren Sie die für alle Server, die Sie möglicherweise verwalten müssen! Ich habe mehrmals die Herausforderung, dass Sie den Server aufgrund der Partition / Slices neu starten müssen, da der Kernel die neue Tabelle möglicherweise nicht erkennt. Wenn Sie Ihrem LVM eine Raw-Festplatte / virtuelle Festplatte hinzufügen und Ihr Dateisystem LVM muss unbedingt um Raw-Festplatten erweitert werden, ist dies von Vorteil. Durch Ausführen eines einfachen Befehls wie „Echo 1> / sys / block / XXX / device / rescan “, wobei XXX Ihre Festplatte ist (sdb, sdc, sdd usw.), durchsucht die Festplatte erneut nach dem zusätzlichen Speicherplatz, ohne neu zu starten, und boomt! Sie können Ihr Dateisystem im Handumdrehen erweitern. Es dauert nur 5 Minuten, um eine Festplatte zu erweitern, ohne den Linux-Server neu zu starten. Bei partitionierten Festplatten ist dieser Vorgang kompliziert

user348093
quelle
1
Ihre Antwort scheint sich mehr auf die Vorteile der Verwendung von VMs als auf die vollständige Zuweisung von Festplatten zu LVM zu konzentrieren.
Roaima
@roaima: OK, meine Augen versagen. Wo sagt diese Antwort etwas über VMs aus?
G-Man sagt, dass Monica
1
Bei @ G-Man geht es darum, Speicher zu einer VM hinzuzufügen und dann die neu zugewiesene Festplatte mithilfe von LVM in der VM selbst aufzuteilen, ohne dass ein Neustart erforderlich ist.
Roaima