La gestione dei volumi logici (LVM) rende più facile la gestione dello spazio su disco. Se un file system ha bisogno di più spazio, può essere aggiunto ai suoi volumi logici dagli spazi liberi nel suo gruppo di volumi e il file system può essere ridimensionato come vogliamo. Se un disco inizia a guastarsi, il disco sostitutivo può essere registrato come volume fisico con il gruppo di volumi e gli estratti dei volumi logici possono essere migrati sul nuovo disco senza perdita di dati.
In un mondo moderno ogni server ha bisogno di più spazio giorno dopo giorno per questo abbiamo bisogno di espandere a seconda delle nostre esigenze. I volumi logici possono essere utilizzati in RAID, SAN. Un disco fisico sarà raggruppato per creare un gruppo di volumi. All’interno del gruppo di volumi abbiamo bisogno di tagliare lo spazio per creare volumi logici. Usando i volumi logici possiamo estendere su più dischi, volumi logici o ridurre i volumi logici in dimensioni con alcuni comandi senza riformattare e ri-partizionare il disco corrente. I volumi possono fare lo striping dei dati su più dischi e questo può aumentare le statistiche di I/O.
Caratteristiche di LVM
- È flessibile per espandere lo spazio in qualsiasi momento.
- Qualsiasi file system può essere installato e gestito.
- La migrazione può essere usata per recuperare un disco difettoso.
- Ripristinare il file system utilizzando le funzioni Snapshot allo stadio precedente, ecc…
My Server Setup – Requisiti
- Sistema operativo – CentOS 6.5 con installazione LVM
- Ip del server – 192.168.0.200
Questa serie sarà intitolata Preparazione alla configurazione di LVM (Logical Volume Management) attraverso le parti 1-6 e copre i seguenti argomenti.
Creazione di storage su disco LVM in Linux
1. Abbiamo usato il sistema operativo CentOS 6.5 usando LVM in un disco virtuale (VDA). Qui possiamo vedere il volume fisico (PV), il gruppo di volumi (VG), il volume logico (LV) usando il seguente comando.
# pvs # vgs# lvs
Ecco la descrizione di ogni parametro mostrato nella schermata sopra.
- Dimensione fisica del disco (PV Size)
- Il disco utilizzato è il disco virtuale vda.
- Volume Group Size (VG Size)
- Nome del gruppo di volumi (vg_tecmint)
- Nome del volume logico (LogVol00, LogVol01)
- LogVol00 Assegnato per sawp con 1GB Size
- LogVol01 Assegnato per / con 16.5GB
Così, da qui veniamo a sapere che non c’è abbastanza spazio libero nel disco VDA.
2. Per creare un nuovo gruppo di volumi, abbiamo bisogno di aggiungere altri 3 dischi rigidi in questo server. Non è obbligatorio usare 3 dischi, solo 1 è sufficiente per creare un nuovo VG e LV all’interno di quel vg, ne sto aggiungendo altri qui a scopo dimostrativo e per ulteriori spiegazioni sui comandi delle funzioni.
Seguono i dischi che ho aggiunto in aggiunta.
sda, sdb, sdc
# fdisk -l
- Disco di default utilizzato per il sistema operativo (Centos6.5).
- Partizioni definite nel disco di default (vda1 = swap), (vda2 = /).
- I dischi aggiunti in via supplementare sono indicati come Disk1, Disk2, Disk3.
Ogni disco ha una dimensione di 20 GB. La dimensione PE predefinita di un gruppo di volumi è di 4 MB, il gruppo di volumi che stiamo usando in questo server è configurato usando la PE predefinita.
- Nome VG – Il nome di un Volume Group.
- Formato – Architettura LVM usata LVM2.
- Accesso VG – Il gruppo di volumi è in lettura e scrittura e pronto all’uso.
- VG Status – Volume Group può essere ridimensionato, possiamo espandere di più se abbiamo bisogno di aggiungere più spazio.
- Cur LV – Attualmente c’erano 2 volumi logici in questo Volume Group.
- CurPV e Act PV – Attualmente utilizzando il disco fisico era 1 (vda), E il suo attivo, in modo da poter utilizzare questo gruppo di volumi.
- PE Size – Estensione fisica, la dimensione di un disco può essere definita utilizzando PE o GB, 4MB è la dimensione predefinita PE di LVM. Per esempio, se abbiamo bisogno di creare 5 GB di volume logico possiamo usare la somma di 1280 PE, non capite cosa sto dicendo?
Qui la spiegazione -> 1024MB = 1GB, se così 1024MB x 5 = 5120PE = 5GB, Ora dividere il 5120/4 = 1280, 4 è il Default PE Size.
- Total PE – Questo gruppo di volume ha.
- Alloc PE – Total PE Used, full PE already Used, 4482 x 4PE = 17928.
- 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
L’immagine sopra mostra il punto di montaggio che stiamo usando 18GB completamente utilizzati per root, quindi non c’è spazio libero disponibile.
4. Quindi creiamo un nuovo volume fisico (pv), Volume Group (vg) con il nome di tecmint_add_vg e creiamo Logical Volumes (lv) in esso, qui possiamo creare 4 Logical Volumes con il nome di tecmint_documents, tecmint_manager e tecmint_public.
Possiamo estendere il Volume Group del VG attualmente in uso per ottenere più spazio. Ma qui, quello che faremo è creare un nuovo gruppo di volume e giocarci intorno, più tardi possiamo vedere come estendere il gruppo di volume dei file system che è attualmente in uso.
Prima di usare un nuovo disco dobbiamo partizionare il disco usando fdisk.
# fdisk -cu /dev/sda
- c – Disattiva la modalità DOS-compatibile è consigliabile includere questa opzione.
- u – Mentre elenca le tabelle delle partizioni ci darà in settore invece che in cilindro.
In seguito, seguire i seguenti passi per creare una nuova partizione.
- Scegliete n per creare una nuova partizione.
- Scegliere p per creare una partizione primaria.
- Scegliere quale numero di partizione abbiamo bisogno di creare.
- Premere Invio due volte per utilizzare l’intero spazio del disco.
- Abbiamo bisogno di cambiare il tipo di partizione appena creata di tipo t.
- Quale numero di partizione deve cambiare, scegliere il numero che abbiamo creato il suo 1.
- Qui abbiamo bisogno di cambiare il tipo, abbiamo bisogno di creare LVM quindi useremo il codice del tipo di LVM come 8e, se non conosciamo il codice del tipo Premere L per elencare tutti i codici del tipo.
- Stampare la partizione che abbiamo creato per confermare.
- Qui possiamo vedere l’ID come 8e LINUX LVM.
- Scrivere le modifiche e uscire da fdisk.
Fare i passi di cui sopra per altri 2 dischi sdb e sdc per creare nuove partizioni. Poi riavviate la macchina per verificare la tabella delle partizioni usando il comando fdisk.
# fdisk -l
Creazione di volumi fisici
5. Ora, è il momento di creare i Volumi Fisici usando tutti e 3 i dischi. Qui, ho elencato il disco fisico usando il comando pvs, solo un pvs di default è ora elencato.
# pvs
Poi create i nuovi dischi fisici usando il comando.
# pvcreate /dev/sda1 /dev/sdb1 /dev/sdc1
Di nuovo elencate il disco per vedere i dischi fisici appena creati.
# pvs
Creare Gruppi di Volume
6. Creare il gruppo di volumi con il nome di tecmint_add_vg usando i PV liberi disponibili Creare usando PE dimensione 32. Per visualizzare gli attuali gruppi di volumi, possiamo vedere che c’è un gruppo di volumi con 1 PV in uso.
# vgs
Questo creerà il gruppo di volumi usando 32MB PE size nel nome di tecmint_add_vg usando 3 volumi fisici che abbiamo creato negli ultimi passi.
# vgcreate -s 32M tecmint_add_vg /dev/sda1 /dev/sdb1 /dev/sdc1
In seguito, verificare il gruppo di volumi eseguendo nuovamente il comando vgs.
# vgs
Comprendere l’output del comando vgs:
- Nome del gruppo di volumi.
- Volumi fisici usati in questo gruppo di volume.
- Mostra lo spazio libero disponibile in questo gruppo di volume.
- Dimensione totale del gruppo di volume.
- Volumi logici all’interno di questo gruppo di volume, Qui non abbiamo ancora creato quindi c’è 0.
- SN = Numero di istantanee che il gruppo di volume contiene. (Più tardi possiamo creare uno snapshot).
- Stato del gruppo di volumi come Scrivibile, leggibile, ridimensionabile, esportato, parziale e clusterizzato, qui è wz-n- che significa w = Scrivibile, z = ridimensionabile..
- Numero di volumi fisici (PV) usati in questo gruppo di volumi.
7. Per visualizzare ulteriori informazioni sul gruppo di volumi usare il comando.
# vgs -v
8. Per ottenere maggiori informazioni sui gruppi di volumi appena creati, eseguire il seguente comando.
# vgdisplay tecmint_add_vg
- Nome del gruppo di volumi
- Architettura LVM utilizzata.
- Può essere in lettura e scrittura, pronto all’uso.
- Questo gruppo di volumi può essere ridimensionabile.
- Numero di dischi fisici utilizzati e sono attivi.
- Dimensione totale del gruppo di volume.
- Una dimensione PE singola era 32 qui.
- Numero totale di PE disponibili in questo gruppo di volume.
- Al momento non abbiamo creato alcun LV all’interno di questo VG quindi è totalmente libero.
- UUID di questo gruppo di volume.
Creazione di volumi logici
9. Ora, ceate 3 Volumi Logici nel nome di tecmint_documents, tecmint_manager e tecmint_public. Qui, possiamo vedere come creare volumi logici usando la dimensione PE e usando la dimensione GB. Per prima cosa, elenchiamo i volumi logici attuali utilizzando il seguente comando.
# lvs
10. Questi volumi logici sono nel gruppo di volumi vg_tecmint. Elencare e vedere quanto spazio libero c’è per creare volumi logici usando il comando pvs.
# pvs
11. La dimensione del gruppo di volumi è di 54GB ed è inutilizzato, quindi possiamo creare LV in esso. Dividiamo il gruppo di volumi in dimensioni uguali per creare 3 volumi logici. Ciò significa 54GB/3 = 18GB, un singolo volume logico sarà di 18GB dopo la creazione.
Metodo 1: Creazione di volumi logici usando le dimensioni PE
Prima creiamo i volumi logici usando le estensioni fisiche (PE). Abbiamo bisogno di conoscere la dimensione PE di default assegnata per questo gruppo di volumi e la dimensione PE totale disponibile per creare nuovi volumi logici, eseguire il comando per ottenere le informazioni utilizzando.
# vgdisplay tecmint_add_vg
- Il PE assegnato di default per questo VG è 32MB, Qui la dimensione del singolo PE sarà di 32MB.
- I PE totali disponibili sono 1725.
Basta fare e vedere un piccolo calcolo usando il comando bc.
# bc
1725PE/3 = 575 PE. 575 PE x 32MB = 18400 --> 18GB
Premere CRTL+D per uscire da bc. Creiamo ora 3 Volumi Logici usando 575 PE.
# 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
- -l – Creare usando l’Extent Size
- -n – Dare un nome al Volume Logico.
Listare i Volumi Logici creati usando il comando lvs.
# lvs
Metodo 2: Creazione di volumi logici usando la dimensione in GB
Mentre la creazione di un volume logico usando la dimensione in GB non possiamo ottenere la dimensione esatta. Quindi, il modo migliore è quello di creare usando extend.
# 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
Lista dei volumi logici creati usando il comando lvs.
# lvs
Qui, possiamo vedere che durante la creazione del 3° LV non possiamo arrotondare a 18GB, è a causa di piccoli cambiamenti nelle dimensioni, ma questo problema sarà ignorato durante la creazione di LV usando Extend size.
Creazione del file system
12. Per usare i volumi logici abbiamo bisogno di formattare. Qui sto usando il file system ext4 per creare i volumi e sto andando a montare sotto /mnt/.
# mkfs.ext4 /dev/tecmint_add_vg/tecmint_documents# mkfs.ext4 /dev/tecmint_add_vg/tecmint_public# mkfs.ext4 /dev/tecmint_add_vg/tecmint_manager
13. Creiamo le directory in /mnt e montiamo i volumi logici che abbiamo creato come file-system.
# 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/
Lista e conferma il punto di montaggio utilizzando.
# df -h
Montaggio permanente
Ora è montato temporaneamente, per il montaggio permanente abbiamo bisogno di aggiungere la voce in fstab, per questo otteniamo la voce di montaggio da mtab usando
# cat /etc/mtab
Abbiamo bisogno di fare leggere modifiche nella voce fstab mentre inseriamo il contenuto della voce di montaggio copia da mtab, abbiamo bisogno di cambiare il rw in default
# vim /etc/fstab
La nostra voce fstab vuole essere simile al seguente esempio. Salvare e uscire da fstab usando 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
Eseguire il comando mount -a per controllare la voce fstab prima del riavvio.
# mount -av
Qui abbiamo visto come configurare uno storage flessibile con volumi logici utilizzando il disco fisico al volume fisico, volume fisico a gruppo di volumi, gruppo di volumi a volumi logici.
Nei miei prossimi articoli futuri, vedrò come estendere il gruppo di volumi, i volumi logici, ridurre il volume logico, fare snapshot e ripristinare dallo snapshot. Fino ad allora rimani aggiornato su TecMint per altri articoli fantastici.