GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come convertire un volume in un volume Stripe (RAID0) in LVM

Per motivi di prestazioni, invece di utilizzare un volume LVM di grandi dimensioni, potrebbe essere sostituito da più volumi con striping piccolo (RAID0). Non esiste alcun comando per trasformare direttamente un volume logico del disco singolo in un volume logico con striping. Questo post spiegherà la procedura per eseguire la conversione.

Nota :Prima di iniziare, eseguire un backup completo del volume o del filesystem.

Questa procedura può essere eseguita in un sistema live, senza la necessità di riavviare. Il procedimento consiste nel creare uno specchio tra il volume originale ed i nuovi volumi rigati. Una volta completato il mirroring, possiamo rimuovere il volume originale dal mirror lasciando solo i volumi con striping.

Per poter eseguire la conversione, il numero di estensioni logiche (LE) nel volume logico LVM (LV) deve essere divisibile per il numero di volumi fisici (PV) che verranno utilizzati nel futuro striped LV.

Verificare il numero di LE assegnate:

# lvdisplay
 --- Logical volume ---
 LV Path                /dev/<VOLUME_GROUP>/<LOGICAL_VOLUME>
 LV Name                <LOGICAL_VOLUME>
 VG Name                <VOLUME_GROUP>
 LV UUID                <VOLUME_UUID>
 LV Write Access        read/write
 LV Creation host, time <HOSTNAME>, 2020-12-10 08:38:44 +0000
 LV Status              available
 # open                 1
 LV Size                <10.00 GiB
 Current LE             2559
 Segments               1
 Allocation             inherit
 Read ahead sectors     auto
 - currently set to     256
 Block device           252:0

In questo caso, il numero di LE è 2559.

Per conoscere il numero di LE necessarie, puoi utilizzare:
le =numero di LE assegnate, dal comando precedente (2559 in questo caso)
pv =numero di PV striped da utilizzare in futuro (es:5)

$ le=2559; pv=5; echo $((le%pv?(le/pv+1)*pv:le))
2560

In questo caso è necessaria una LE in più. Esempio per estendere la LV:

# lvresize --extents +1 /dev/<VOLUME_GROUP>/<LOGICAL_VOLUME> /dev/sdb
 Size of logical volume <VOLUME_GROUP>/<LOGICAL_VOLUME> changed from <10 GiB (2559 extents) to <10 giB (2560 extents).
 Logical volume <VOLUME_GROUP>/<LOGICAL_VOLUME> successfully resized.

Dopo aver preparato il LV, procedere:

1. Aggiungi i nuovi PV al LV creando uno specchio a strisce. Il numero di strisce dovrebbe essere il numero di PV:

# lvconvert --type mirror -m 1 --mirrorlog core --stripes 2 /dev/<VOLUME_GROUP>/<LOGICAL_VOLUME> /dev/<PV1> /dev/<PV2> ... /dev/<PV5>

2. Rimuovere il PV iniziale dal LV:

# lvconvert -m0 <VOLUME_GROUP>/<LOGICAL_VOLUME> /dev/<INITIAL_PV>

3. Rimuovere il PV da LVM:

# vgreduce <VOLUME_GROUP> /dev/<INITIAL_PV>
# pvremove /dev/<INITIAL_PV>


Cent OS
  1. Come estendere LVM quando non c'è spazio libero nel gruppo di volumi

  2. Come attivare un volume fisico LVM “SOSPESO”.

  3. Come rimuovere il disco da un gruppo di volumi LVM

  4. RHEL / CentOS:come ridurre il volume LVM

  5. CentOS / RHEL:come eliminare il volume LVM

Come creare un gruppo di volumi in Linux con LVM

CentOS / RHEL:come ripristinare/ripristinare un gruppo di volumi eliminato in LVM

Come configurare il gruppo di volumi Lvm esistente per utilizzare DM-Multipath

Come abilitare l'estensione automatica per un volume LVM sottile

Ubuntu:modifica della dimensione dello stripe di un volume LVM con striping

Come ridurre un volume LVM su Ubuntu