Einrichten von flexiblem Festplattenspeicher mit Logical Volume Management (LVM) in Linux – TEIL 1

Logical Volume Management (LVM) erleichtert die Verwaltung von Festplattenspeicher. Benötigt ein Dateisystem mehr Platz, kann es von den freien Plätzen in seiner Volume-Gruppe zu seinen logischen Volumes hinzugefügt werden und das Dateisystem kann nach Belieben neu dimensioniert werden. Wenn ein Laufwerk ausfällt, kann ein Ersatzlaufwerk als physisches Volume in der Volume-Gruppe registriert werden und die Extents der logischen Volumes können ohne Datenverlust auf das neue Laufwerk migriert werden.

LVM-Speicher in Linux erstellen
LVM-Speicher in Linux erstellen

In der modernen Welt benötigt jeder Server Tag für Tag mehr Speicherplatz, den wir je nach Bedarf erweitern müssen. Logische Volumes können in RAID, SAN verwendet werden. Eine physische Festplatte wird gruppiert, um eine Volume-Gruppe zu erstellen. Innerhalb der Volume-Gruppe müssen wir den Speicherplatz aufteilen, um logische Volumes zu erstellen. Bei der Verwendung von logischen Volumes können wir die Größe von logischen Volumes mit einigen Befehlen über mehrere Festplatten erweitern oder reduzieren, ohne die aktuelle Festplatte neu zu formatieren und zu partitionieren. Volumes können Daten über mehrere Festplatten streifen, was die E/A-Statistiken erhöhen kann.

LVM-Funktionen

  1. Es ist flexibel, den Speicherplatz jederzeit zu erweitern.
  2. Beliebige Dateisysteme können installiert und gehandhabt werden.
  3. Migration kann verwendet werden, um defekte Festplatten wiederherzustellen.
  4. Wiederherstellung des Dateisystems mit Snapshot-Funktionen auf eine frühere Stufe. usw…
Mein Server Setup – Anforderungen
  1. Betriebssystem – CentOS 6.5 mit LVM-Installation
  2. Server IP – 192.168.0.200

Diese Serie wird unter dem Titel Vorbereitung für die Einrichtung von LVM (Logical Volume Management) durch die Teile 1-6 geführt und behandelt folgende Themen.

Teil 1: Flexiblen Plattenspeicher mit Logical Volume Management einrichten
Teil 2: LVM’s in Linux erweitern/verkleinern
Teil 4: 4hin Provisioning Volumes in LVM einrichten
Teil 5: Mehrere LVM-Platten mit Striping I/O verwalten

LVM-Plattenspeicher in Linux erstellen

1. Wir haben das Betriebssystem CentOS 6.5 mit LVM in einer virtuellen Festplatte (VDA) verwendet. Hier können wir mit folgendem Befehl das Physical Volume (PV), Volume Group (VG), Logical Volume (LV) sehen.

# pvs # vgs# lvs
Physikalische Volumes prüfen
Physikalische Volumes prüfen

Hier ist die Beschreibung der einzelnen Parameter, die im obigen Screenshot gezeigt werden.

  1. Physical Disk Size (PV Size)
  2. Die verwendete Festplatte war die virtuelle Festplatte vda.
  3. Volumengruppengröße (VG-Größe)
  4. Volumengruppenname (vg_tecmint)
  5. Logischer Volume-Name (LogVol00, LogVol01)
  6. LogVol00 zugewiesen für sawp mit 1GB Größe
  7. LogVol01 zugewiesen für / mit 16.5GB

So, von hier kommen wir zu wissen, dass es nicht genug freien Platz in VDA Festplatte.

2. Für das Erstellen einer neuen Volume Group, müssen wir zusätzliche 3 Festplatten in diesem Server hinzufügen. Es ist nicht zwingend erforderlich, 3 Festplatten zu verwenden, eine reicht aus, um eine neue VG und ein LV in dieser VG zu erstellen. Ich füge hier weitere Festplatten zu Demonstrationszwecken und für weitere Erklärungen zum Funktionsbefehl hinzu.

Nachfolgend sind die Festplatten aufgeführt, die ich zusätzlich hinzugefügt habe.

sda, sdb, sdc
# fdisk -l
Zusätzlich hinzugefügte Platten prüfen
Hinzufügte Festplatten überprüfen
  1. Standardfestplatte, die für das Betriebssystem (Centos6.5).
  2. In der Standard-Diskette definierte Partitionen (vda1 = swap), (vda2 = /).
  3. Zusätzlich hinzugefügte Disks werden als Disk1, Disk2, Disk3 bezeichnet.

Jede einzelne Diskette ist 20 GB groß. Die Standard-PE-Größe einer Volume Group ist 4 MB, die Volume Group, die wir in diesem Server verwenden, ist mit der Standard-PE konfiguriert.

Volume Group Display
Volume Group Display
  1. VG Name – Ein Volume Group Name.
  2. Format – Verwendete LVM-Architektur LVM2.
  3. VG-Zugriff – Volume Group ist im Lese- und Schreibzugriff und bereit zur Verwendung.
  4. VG Status – Volume Group kann in der Größe verändert werden, wir können mehr expandieren, wenn wir mehr Platz benötigen.
  5. Cur LV – Derzeit waren 2 logische Volumes in dieser Volume Group.
  6. CurPV und Act PV – Currently Using Physical Disk was 1 (vda), And its active, so what we can use this volume group.
  7. PE Size – Physical Extends, Size for a disk can be defined using PE or GB size, 4MB is the Default PE size of LVM. Wenn wir z.B. ein logisches Volume mit einer Größe von 5 GB erstellen wollen, können wir die Summe von 1280 PE verwenden, verstehen Sie nicht, was ich meine?

Hier die Erklärung -> 1024MB = 1GB, wenn so 1024MB x 5 = 5120PE = 5GB, Jetzt teilen Sie die 5120/4 = 1280, 4 ist die Standard PE Größe.

  1. Gesamt PE – Diese Volume Gruppe haben.
  2. Alloc PE – Total PE Used, full PE already Used, 4482 x 4PE = 17928.
  3. Free PE – Here it’s already used so there was no free PE.

3. Only vda used, Currently Centos Installed /boot, /, swap, in vda physical disk using lvm there were no space remaining in this disk.

# df -TH
Prüfen Sie den Festplattenplatz
Prüfen Sie den Festplattenplatz

Das obige Bild zeigt den Einhängepunkt, den wir verwenden, 18GB voll belegt für Root, es ist also kein freier Speicherplatz verfügbar.

4. Erstellen wir also ein neues physisches Volume (pv), eine Volume Group (vg) mit dem Namen tecmint_add_vg und erstellen wir darin logische Volumes (lv). Hier können wir 4 logische Volumes mit den Namen tecmint_documents, tecmint_manager und tecmint_public erstellen.

Wir können die Volume Group der aktuell verwendeten VG erweitern, um mehr Platz zu erhalten. Aber hier werden wir eine neue Volume Group erstellen und damit herumspielen, später können wir sehen, wie wir die Volume Group des Dateisystems, das derzeit verwendet wird, erweitern können.

Bevor wir eine neue Platte verwenden, müssen wir die Platte mit fdisk partitionieren.

# fdisk -cu /dev/sda
  1. c – DOS-kompatiblen Modus ausschalten es wird empfohlen, diese Option einzuschließen.
  2. u – Beim Auflisten der Partitionstabellen wird in Sektoren statt in Zylindern angegeben.
Neue physische Partitionen erstellen
Neue physische Partitionen erstellen

Nächste Schritte zum Erstellen einer neuen Partition sind die folgenden.

  1. Wählen Sie n, um eine neue zu erstellen.
  2. Wählen Sie p, um eine primäre Partition zu erstellen.
  3. Wählen Sie, welche Anzahl von Partitionen wir erstellen müssen.
  4. Drücken Sie zweimal die Eingabetaste, um den gesamten Speicherplatz der Festplatte zu nutzen.
  5. Wir müssen den Typ der neu erstellten Partition vom Typ t ändern.
  6. Welche Anzahl von Partitionen müssen Sie ändern, wählen Sie die Nummer, die wir erstellt haben, ihre 1.
  7. Hier müssen wir den Typ ändern, wir müssen LVM erstellen, also werden wir den Typ-Code von LVM als 8e verwenden, wenn wir den Typ-Code nicht kennen, drücken Sie L, um alle Typ-Codes aufzulisten.
  8. Drucken Sie die Partition, die wir erstellt haben, um nur zu bestätigen.
  9. Hier sehen wir die ID als 8e LINUX LVM.
  10. Schreiben Sie die Änderungen und beenden Sie fdisk.

Führen Sie die obigen Schritte für die anderen beiden Festplatten sdb und sdc aus, um neue Partitionen zu erstellen. Starten Sie anschließend den Rechner neu, um die Partitionstabelle mit dem Befehl fdisk zu überprüfen.

# fdisk -l
Partitionstabelle überprüfen
Partitionstabelle überprüfen

Physikalische Volumes erstellen

5. Nun ist es an der Zeit, Physical Volumes mit allen 3 Festplatten zu erstellen. Hier habe ich die physische Festplatte mit dem pvs-Befehl aufgelistet, nur eine Standard-pvs ist jetzt aufgelistet.

# pvs

Dann erstellen Sie die neuen physischen Festplatten mit dem Befehl.

# pvcreate /dev/sda1 /dev/sdb1 /dev/sdc1

Zeigen Sie erneut die Festplatte an, um die neu erstellten physischen Festplatten zu sehen.

# pvs
Physikalische Volumes
Physische Volumes erstellen

Volume-Gruppen erstellen

6. Erstellen Sie eine Volume Group mit dem Namen tecmint_add_vg unter Verwendung von verfügbarem freien PV Create mit PE-Größe 32. Um die aktuellen Volume-Gruppen anzuzeigen, können wir sehen, dass es eine Volume-Gruppe mit 1 PV gibt.

# vgs

Dies wird die Volume-Gruppe mit 32MB PE-Größe im Namen von tecmint_add_vg unter Verwendung von 3 physischen Volumes erstellen, die wir in den letzten Schritten erstellt haben.

# vgcreate -s 32M tecmint_add_vg /dev/sda1 /dev/sdb1 /dev/sdc1

Nächstes verifizieren Sie die Volume-Gruppe, indem Sie den Befehl vgs erneut ausführen.

# vgs
Volumengruppen erstellen
Volumengruppen erstellen
Volume-Gruppen überprüfen
Volume-Gruppen überprüfen

Verstehen der Ausgabe des Befehls vgs:

  1. Name der Volume-Gruppe.
  2. Physikalische Volumes, die in dieser Volume Group verwendet werden.
  3. Zeigt den freien Speicherplatz an, der in dieser Volume Group verfügbar ist.
  4. Gesamtgröße der Volume Group.
  5. Logische Volumes innerhalb dieser Volume Group, hier haben wir noch keine erstellt, daher steht hier 0.
  6. SN = Anzahl der Snapshots, die die Volume Group enthält. (Später können wir einen Snapshot erstellen).
  7. Status der Volume-Gruppe als beschreibbar, lesbar, größenveränderbar, exportiert, teilweise und geclustert, hier ist es wz-n-, das bedeutet w = beschreibbar, z = größenveränderbar..
  8. Anzahl der in dieser Volume-Gruppe verwendeten physikalischen Volumes (PV).

7. Um weitere Informationen über die Volume-Gruppe anzuzeigen, verwenden Sie den Befehl.

# vgs -v
Informationen zur Volume-Gruppe prüfen
Informationen zur Volume-Gruppe prüfen

8. Um weitere Informationen über neu erstellte Volume-Gruppen zu erhalten, führen Sie den folgenden Befehl aus.

# vgdisplay tecmint_add_vg
Liste neuer Volume-Gruppen
Liste Neue Volume-Gruppen
  1. Name der Volume-Gruppe
  2. Verwendete LVM-Architektur.
  3. Sie kann im Lese- und Schreibzustand verwendet werden.
  4. Diese Volume-Gruppe kann in der Größe verändert werden.
  5. Anzahl der verwendeten physischen Datenträger und sie sind aktiv.
  6. Gesamtgröße der Volume-Gruppe.
  7. Eine einzelne PE-Größe war hier 32.
  8. Gesamtzahl der in dieser Volume-Gruppe verfügbaren PE.
  9. Zurzeit haben wir kein LV innerhalb dieser VG erstellt, also ist sie völlig frei.
  10. UUID dieser Volume Group.

Erstellen von logischen Volumes

9. Legen Sie nun 3 Logical Volumes mit den Namen tecmint_documents, tecmint_manager und tecmint_public an. Hier sehen wir, wie man Logical Volumes mit PE-Größe und mit GB-Größe erstellt. Zuerst listen Sie die aktuellen Logical Volumes mit folgendem Befehl auf.

# lvs
Aktuelle Volume Groups auflisten
Aktuelle Volume Groups auflisten

10. Diese logischen Volumes befinden sich in der Volume-Gruppe vg_tecmint. Listen Sie auf und sehen Sie, wie viel freier Speicherplatz vorhanden ist, um logische Volumes mit dem Befehl pvs zu erstellen.

# pvs
Freien Speicherplatz prüfen
Freien Speicherplatz prüfen

11. Die Größe der Volume-Gruppe beträgt 54 GB und ist unbenutzt, also können wir darin ein LV erstellen. Lassen Sie uns die Volume-Gruppe auf die gleiche Größe aufteilen, um 3 logische Volumes zu erstellen. Das bedeutet 54GB/3 = 18GB, ein einzelnes Logical Volume wird nach der Erstellung 18GB groß sein.

Methode 1: Erstellen von Logical Volumes unter Verwendung von PE-Größen

Zuerst erstellen wir Logical Volumes unter Verwendung von Physical Extends (PE) Größe. Wir müssen die Standard-PE-Größe, die für diese Volume Group zugewiesen wurde, und die gesamte verfügbare PE-Größe zum Erstellen neuer logischer Volumes kennen.

# vgdisplay tecmint_add_vg
Neues logisches Volume erstellen
Erstellen New Logical Volume
  1. Default PE Assigned for this VG is 32MB, Hier wird die einzelne PE-Größe 32MB sein.
  2. Gesamt verfügbare PE ist 1725.

Machen Sie einfach eine kleine Berechnung mit dem bc-Befehl und Sie werden sehen.

# bc
1725PE/3 = 575 PE. 575 PE x 32MB = 18400 --> 18GB
Berechnen Festplattenplatz
Festplattenplatz berechnen

Drücken Sie CRTL+D, um bc zu beenden. Lassen Sie uns nun 3 logische Volumes mit 575 PE’s erstellen.

# lvcreate -l (Extend size) -n (name_of_logical_volume) (volume_group)# lvcreate -l 575 -n tecmint_documents tecmint_add_vg# lvcreate -l 575 -n tecmint_manager tecmint_add_vg# lvcreate -l 575 -n tecmint_public tecmint_add_vg
  1. -l – Erstellen mit Extent Size
  2. -n – Geben Sie einen Namen für das logische Volume.

Listen Sie die erstellten logischen Volumes mit dem Befehl lvs auf.

# lvs
Liste der erstellten logischen Volumes
Liste der erstellten logischen Volumes
Methode 2: Erstellen von logischen Volumes mit GB-Größen

Bei der Erstellung von logischen Volumes mit GB-Größen können wir die genaue Größe nicht ermitteln. Der bessere Weg ist also, mit extend zu erstellen.

# lvcreate -L 18G -n tecmint_documents tecmint_add_vg# lvcreate -L 18G -n tecmint_manager tecmint_add_vg# lvcreate -L 18G -n tecmint_public tecmint_add_vg# lvcreate -L 17.8G -n tecmint_public tecmint_add_vg

Listen Sie die erstellten logischen Volumes mit dem Befehl lvs auf.

# lvs
Erstellte logische Volumes überprüfen
Erstellte logische Volumes überprüfen

Hier, können wir sehen, dass wir beim Erstellen des dritten LVs nicht auf 18 GB aufrunden können. Das liegt an den kleinen Änderungen in der Größe, aber dieses Problem wird beim Erstellen von LVs mit „Größe erweitern“ ignoriert.

Erstellen des Dateisystems

12. Um die logischen Volumes zu verwenden, müssen wir sie formatieren. Hier verwende ich das ext4-Dateisystem, um die Volumes zu erstellen, und werde sie unter /mnt/ mounten.

# mkfs.ext4 /dev/tecmint_add_vg/tecmint_documents# mkfs.ext4 /dev/tecmint_add_vg/tecmint_public# mkfs.ext4 /dev/tecmint_add_vg/tecmint_manager
Ext4-Dateisystem erstellen
Ext4-Dateisystem erstellen

13. Lassen Sie uns Verzeichnisse in /mnt erstellen und die logischen Volumes mounten, was wir als Dateisystem erstellt haben.

# mount /dev/tecmint_add_vg/tecmint_documents /mnt/tecmint_documents/# mount /dev/tecmint_add_vg/tecmint_public /mnt/tecmint_public/# mount /dev/tecmint_add_vg/tecmint_manager /mnt/tecmint_manager/

Listen Sie den Mountpunkt auf und bestätigen Sie ihn mit.

 # df -h
Logische Volumes mounten
Mount Logische Volumes
Permanentes Mounten

Es ist nun temporär gemountet, für das permanente Mounten müssen wir den Eintrag in der fstab hinzufügen, Dazu holen wir uns den Mount-Eintrag aus der mtab mit

# cat /etc/mtab

Während wir den Inhalt des Mount-Eintrags aus der mtab kopieren, müssen wir leichte Änderungen in der fstab vornehmen, indem wir den rw-Wert auf Standardwerte ändern

# vim /etc/fstab

Unser fstab-Eintrag soll ähnlich wie das folgende Beispiel aussehen. Speichern und verlassen Sie die fstab mit wq!

/dev/mapper/tecmint_add_vg-tecmint_documents /mnt/tecmint_documents ext4 defaults 0 0/dev/mapper/tecmint_add_vg-tecmint_public /mnt/tecmint_public ext4 defaults 0 0/dev/mapper/tecmint_add_vg-tecmint_manager /mnt/tecmint_manager ext4 defaults 0 0
Get mtab Mount Entry
Get mtab Mount Entry
Fstab öffnen Datei
Fstab-Datei öffnen
Add Auto-Mount-Eintrag
Auto-Mount-Eintrag hinzufügen

Führen Sie den Befehl mount -a aus, um den fstab-Eintrag vor dem Neustart zu prüfen.

# mount -av
Überprüfen des fstab-Eintrags
Überprüfen des fstab-Eintrags

Hier haben wir gesehen, wie man flexiblen Speicher mit logischen Volumes einrichtet, indem man physische Platte zu physischem Volume verwendet, physisches Volume zu Volume-Gruppe, Volume-Gruppe zu logischen Volumes.

In meinen kommenden Artikeln werde ich sehen, wie man die Volume-Gruppe erweitert, logische Volumes, logische Volumes verkleinert, einen Snapshot macht und von einem Snapshot wiederherstellt. Bis dahin bleiben Sie bei TecMint auf dem Laufenden, um mehr solcher großartigen Artikel zu lesen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.