- Overzicht
- LVM-functies
- Schijfgrootte wijzigen met LVM
- Partities identificeren waarvan de grootte moet worden gewijzigd
- Controleer de huidige schijfruimte
- Een nieuwe virtuele schijf koppelen
- Een partitie maken
- Bevestig het aanmaken van de partitie
- Volumegroep identificeren
- Volumegroep uitbreiden
- Bevestig volumegroepuitbreiding
- Wijs extra ruimte toe aan de gewenste partitie
- Bevestig toewijzing
- De partitiegrootte wijzigen
- Bevestig formaatwijziging
Overzicht #
LVM staat voor Logical Volume Manager en is een veelgebruikte techniek in Linux en Unix-achtige besturingssystemen voor het beheer van schijven en opslag. Het biedt een abstractieniveau tussen het besturingssysteem en fysieke opslagapparaten, waardoor beheerders logische volumes kunnen creëren die meerdere fysieke schijven kunnen beslaan. Belangrijkste componenten van LVM:
Fysieke volumes (PV's)Fysieke volumes zijn doorgaans individuele harde schijven, solid-state drives (SSD's) of partities op die schijven. LVM combineert een of meer fysieke volumes in volumegroepen.
Volumegroepen (VG's)Volumegroepen zijn pools van fysieke volumes die samen een grotere opslageenheid vormen. Meerdere fysieke volumes kunnen aan een volumegroep worden toegevoegd en dragen hun opslagcapaciteit bij aan de groep. U kunt meerdere volumegroepen op één systeem aanmaken.
Logische volumes (LV's)Logische volumes zijn de virtuele partities die binnen volumegroepen worden aangemaakt. De grootte ervan kan dynamisch worden aangepast, in tegenstelling tot traditionele partities. LV's worden gebruikt om gegevens op te slaan en worden gekoppeld zoals gewone partities.
Fysieke afmetingen (PE's): Fysieke extents zijn de kleinste opslageenheid binnen LVM. Wanneer u een volumegroep aanmaakt, worden de fysieke volumes verdeeld in gelijke delen, zogenaamde fysieke extents. Logische volumes worden aangemaakt door een bepaald aantal fysieke extents uit de volumegroep toe te wijzen.
Logische Extents (LEs)Logische extents zijn vergelijkbaar met fysieke extents, maar ze worden binnen logische volumes gebruikt in plaats van volumegroepen. Logische extents zijn de kleinste eenheid voor toewijzing van gegevens binnen een logisch volume.
LVM-opdrachten: LVM biedt een reeks opdrachten voor het beheer van fysieke volumes, volumegroepen en logische volumes. Enkele veelvoorkomende opdrachten zijn: PVC creëren (om fysieke volumes te initialiseren), vgcreëer (om volumegroepen te maken), lvcreëren (om logische volumes te creëren), Verleng (om logische volumes uit te breiden), en nog veel meer.
LVM-functies #
Logical Volume Manager (LVM) biedt diverse handige functies en functionaliteiten die het een waardevolle tool maken voor opslagbeheer in Linux en Unix-achtige besturingssystemen. Hier zijn enkele veelvoorkomende toepassingen van LVM:
Flexibel schijfbeheer: LVM maakt dynamische aanpassing van de grootte van logische volumes (LV's) en volumegroepen (VG's) mogelijk zonder dat het bestandssysteem hoeft te worden ontkoppeld of de toegang tot gegevens hoeft te worden onderbroken. Deze flexibiliteit is met name gunstig in omgevingen waar de opslagbehoeften in de loop der tijd veranderen.
Volumebeheer: LVM maakt het mogelijk om meerdere fysieke volumes (PV's) te aggregeren in logische volumegroepen (VG's), waardoor een uniforme opslagpool ontstaat. Dit stelt beheerders in staat om opslagbronnen efficiënt te beheren en indien nodig ruimte toe te wijzen aan verschillende partities of bestandssystemen.
Momentopname maken: LVM ondersteunt het maken van snapshots. Dit zijn point-in-time kopieën van logische volumes. Snapshots kunnen voor verschillende doeleinden worden gebruikt, waaronder back-upbewerkingen, systeemherstel en het testen van software-updates of -configuraties zonder de oorspronkelijke gegevens te beïnvloeden.
Datamigratie en mobiliteit:LVM vergemakkelijkt de verplaatsing van gegevens tussen fysieke apparaten en opslagarrays zonder services of applicaties te verstoren. Beheerders kunnen gegevens migreren tussen verschillende typen opslagapparaten of gegevens herverdelen over opslagarrays om de prestaties of capaciteit te optimaliseren.
Volumestriping en mirroring: LVM ondersteunt volumestriping en -mirroring voor verbeterde prestaties en gegevensredundantie. Striping verdeelt gegevens over meerdere fysieke volumes om de I/O-prestaties te verbeteren, terwijl mirroring gegevens dupliceert over afzonderlijke fysieke volumes om fouttolerantie en gegevensbescherming tegen schijffouten te bieden.
Dunne voorziening: LVM biedt thin provisioning, waardoor beheerders opslagruimte on-demand kunnen toewijzen in plaats van deze vooraf te moeten toewijzen. Thin provisioning helpt het opslaggebruik te optimaliseren door verspilling van ruimte te verminderen en maakt efficiënter beheer van opslagresources mogelijk.
Data encryptie: LVM biedt ondersteuning voor het versleutelen van gegevens op volumeniveau met behulp van technologieën zoals dm-crypt en LUKS (Linux Unified Key Setup). Deze functie verbetert de gegevensbeveiliging door gevoelige informatie die op logische volumes is opgeslagen te versleutelen, waardoor deze wordt beschermd tegen ongeautoriseerde toegang of diefstal.
Veerkracht en fouttolerantie: LVM verbetert de systeemveerkracht en fouttolerantie door functies zoals RAID (Redundant Array of Independent Disks) en volume mirroring te bieden. Deze functies helpen beschermen tegen gegevensverlies en minimaliseren downtime in geval van schijfstoringen of andere hardwareproblemen.
Schijfgrootte wijzigen met LVM #
RELIANOID Huishoudelijke apparaten worden geleverd in een lichtgewicht formaat om de implementatie en installatie op elk platform eenvoudig te maken. Als er echter meer opslagruimte nodig is voor het logsysteem of voor integratie met aangepaste applicaties, moet de omvang van het bestandssysteem worden aangepast.
Deze handleiding biedt stapsgewijze instructies voor het wijzigen van de grootte van partities op RELIANOID Load Balancer met behulp van Logical Volume Manager (LVM). In dit geval wordt uitgelegd hoe u een nieuwe schijf aan het systeem koppelt en de logpartitie uitbreidt die te weinig ruimte heeft.
Partities identificeren waarvan de grootte moet worden gewijzigd #
Gebruik de opdracht lvdisplay om de partities te identificeren waarvan de grootte aangepast kan worden.
root@ee-noid-01:~# lvdisplay | grep "LV-pad" | grep root LV-pad /dev/root/backup LV-pad /dev/root/config LV-pad /dev/root/log LV-pad /dev/root/root LV-pad /dev/root/swap
Let op: Als het LV-pad niet wordt weergegeven, kan de rootpartitie niet worden vergroot.
Controleer de huidige schijfruimte #
Gebruik df om de huidige schijfruimte te controleren en de beschikbare ruimte voor het wijzigen van de grootte te identificeren.
root@ee-noid-01:~# df -h Bestandssysteem Grootte Gebruikt Beschikbaar Gebruik% Gekoppeld op udev 983M 0 983M 0% /dev tmpfs 200M 3.0M 197M 2% /run /dev/mapper/root-root 5.0G 1.5G 3.3G 30% / tmpfs 998M 0 998M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 998M 0 998M 0% /sys/fs/cgroup /dev/mapper/root-log 3.4G 15M 3.2G 1% /var/log /dev/mapper/root-config 430M 2.4M 401M 1% /usr/local/zevenet/config /dev/mapper/root-backup 874M 2.2M 811M 1% /usr/local/zevenet/backups tmpfs 200M 0 200M 0% /run/user/0
Een nieuwe virtuele schijf koppelen #
Van de Hypervisor-client In het geval van een virtueel apparaat of fysiek met een nieuwe schijf in het geval van een hardwareapparaat, koppelt u een nieuwe virtuele schijf met de gewenste ruimte (bijv. 2 GB). Identificeer de nieuwe schijf, bijvoorbeeld: / Dev / sdbgebruik fdisk.
root@ee-noid-01:~# fdisk -l Schijf /dev/sdb: 2 GiB, 2147483648 bytes, 4194304 sectoren Schijfmodel: Eenheden: sectoren van 1 * 512 = 512 bytes Sectorgrootte (logisch/fysiek): 512 bytes / 512 bytes I/O-grootte (minimum/optimaal): 512 bytes / 512 bytes Schijf /dev/sda: 12 GiB, 12884901888 bytes, 25165824 sectoren [...]
Een partitie maken #
Gebruik fdisk / Dev / sdb Om een ​​partitie te maken die de volledige schijfruimte beslaat. Selecteer partitietype p voor primair en wijs de volledige schijfruimte toe. Wijzig het partitietype naar Linux LVM met t commando. Schrijf wijzigingen met behulp van w opdracht.
root@ee-noid-01:~# fdisk /dev/sdb Welkom bij fdisk (util-linux 2.33.1). Wijzigingen blijven alleen in het geheugen staan ​​totdat u besluit ze weg te schrijven. Wees voorzichtig met het gebruik van de schrijfopdracht. Het apparaat bevat geen herkende partitietabel. Er is een nieuwe DOS-disklabel aangemaakt met schijf-ID 0xeb0c8ed2. Commando (m voor hulp): n Partitietype p primair (0 primair, 0 uitgebreid, 4 vrij) e uitgebreid (container voor logische partities) Selecteer (standaard p): p Partitienummer (1-4, standaard 1): 1 Eerste sector (2048-4194303, standaard 2048):Laatste sector, +/-sectoren of +/-grootte{K,M,G,T,P} (2048-4194303, standaard 4194303): Nieuwe partitie 1 van het type 'Linux' en grootte 2 GiB aangemaakt. Commando (m voor hulp): t Geselecteerde partitie 1 Hex-code (typ L om alle codes weer te geven): 8e Het partitietype 'Linux' is gewijzigd naar 'Linux LVM'. Commando (m voor hulp): w De partitietabel is gewijzigd. ioctl() aanroepen om de partitietabel opnieuw te lezen. Schijven synchroniseren.
Bevestig het aanmaken van de partitie #
Controleer de aanmaak van / Dev / sdb1 gebruik fdisk -l /dev/sdb.
root@ee-noid-01:~# fdisk -l /dev/sdb Schijf /dev/sdb: 2 GiB, 2147483648 bytes, 4194304 sectoren Schijfmodel: VBOX HARDDISK Eenheden: sectoren van 1 * 512 = 512 bytes Sectorgrootte (logisch/fysiek): 512 bytes / 512 bytes I/O-grootte (minimum/optimaal): 512 bytes / 512 bytes Disklabel-type: dos Schijf-ID: 0xeb0c8ed2 Apparaat Opstarten Start Einde Sectoren Grootte Id Type /dev/sdb1 2048 4194303 4192256 2G 8e Linux LVM
Volumegroep identificeren #
Controleer de huidige details van de volumegroep die moet worden uitgebreid met de vgweergave opdracht.
root@ee-noid-01:~# vgdisplay --- Volumegroep --- VG Naam root Systeem-ID-formaat lvm2 Metadata-gebieden 1 Metadata-sequentie nr. 6 VG-toegang lezen/schrijven VG-status aanpasbaar MAX LV 0 Huidige LV 5 Open LV 5 Max PV 0 Huidige PV 1 Act PV 1 VG-formaat <12.00 GiB PE-grootte 4.00 MiB Totale PE 3071 Toegewezen PE / Grootte 2862 / <11.18 GiB Vrije PE / Grootte 209 / 836.00 MiB VG UUID FxCrfj-5Rt7-1CrE-9hUv-7qwj-0yAb-AJ2euu
Volumegroep uitbreiden #
Gebruik vgextend root /dev/sdb1 om de volumegroep uit te breiden met de nieuwe partitie.
root@ee-noid-01:~# vgextend root /dev/sdb1 Fysiek volume "/dev/sdb1" succesvol aangemaakt. Volumegroep "root" succesvol uitgebreid
Bevestig volumegroepuitbreiding #
Controleer de uitbreiding van de volumegroep met behulp van vgweergave.
root@ee-noid-01:~# vgdisplay --- Volumegroep --- VG Naam root Systeem-ID-formaat lvm2 Metadata-gebieden 2 Metadata-sequentie nr. 7 VG-toegang lezen/schrijven VG-status aanpasbaar MAX LV 0 Huidige LV 5 Open LV 5 Max PV 0 Huidige PV 2 Act PV 2 VG-maat 13.99 GiB PE-grootte 4.00 MiB Totale PE 3582 Toegewezen PE / Grootte 2862 / <11.18 GiB Vrije PE / Grootte 720 / 2.81 GiB VG UUID FxCrfj-5Rt7-1CrE-9hUv-7qwj-0yAb-AJ2euu
Wijs extra ruimte toe aan de gewenste partitie #
Gebruik lvextend -l +100%GRATIS /dev/root/log om de extra ruimte aan de gewenste partitie toe te wijzen (bijvoorbeeld logboeken).
root@ee-noid-01:~# lvextend -l +100%GRATIS /dev/root/log Grootte van logisch volume root/log gewijzigd van 3.46 GiB (886 extents) naar 6.27 GiB (1606 extents). De grootte van logisch volume root/log is succesvol aangepast.
Bevestig toewijzing #
Bevestig de toewijzing met lvdisplay.
root@ee-noid-01:~# lvdisplay [...] --- Logisch volume --- LV-pad /dev/root/log LV Naam log VG Naam root LV UUID 3TJZYd-gT8Z-JjJY-2mNB-wxLr-Xcdt-6bMrVs LV Schrijftoegang lezen/schrijven LV Aanmaak host, tijd zva6000, 2023-06-20 12:43:08 +0000 LV Status beschikbaar # open 1 LV-formaat 6.27 GiB Huidige LE 1606 Segmenten 3 Toewijzing overnemen Sectoren vooruitlezen automatisch - momenteel ingesteld op 256 Apparaat blokkeren 254:4 [...]
De partitiegrootte wijzigen #
Gebruik resize2fs /dev/root/log om de partitie te vergroten of te verkleinen met de nieuwe vrije ruimte.
root@ee-noid-01:~# resize2fs /dev/root/log resize2fs 1.44.5 (15-dec-2018) Het bestandssysteem op /dev/root/log is gekoppeld op /var/log; online aanpassing van de grootte is vereist old_desc_blocks = 1, new_desc_blocks = 1 Het bestandssysteem op /dev/root/log is nu 1644544 (4k) blokken lang.
Bevestig formaatwijziging #
Controleer of de nieuwe vrije ruimte beschikbaar is met df.
root@ee-noid-01:~# df -h Bestandssysteem Grootte Gebruikt Beschikbaar Gebruik% Gekoppeld op udev 983M 0 983M 0% /dev tmpfs 200M 3.1M 197M 2% /run /dev/mapper/root-root 5.0G 1.5G 3.3G 30% / tmpfs 998M 0 998M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 998M 0 998M 0% /sys/fs/cgroup /dev/mapper/root-config 430M 2.4M 401M 1% /usr/local/zevenet/config /dev/mapper/root-backup 874M 2.2M 811M 1% /usr/local/zevenet/backups /dev/mapper/root-log 6.2G 17M 5.8G 1% /var/log tmpfs 200M 0 200M 0% /run/gebruiker/0
Door deze stappen te volgen, kunt u effectief de grootte van partities wijzigen op RELIANOID Load Balancer die gebruikmaakt van LVM, zorgt voor een optimale benutting van de schijfruimte en is klaar om meer services op te schalen.