4.4.12.2. Estensione di un volume logico con politica di assegnazione cling
Durante l'estensione di un volume LVM sarà possibile usare l'opzione
--alloc cling
del comando lvextend
per specificare la politica di assegnazione cling
. Questa politica selezionerà lo spazio sugli stessi volumi fisici come segmento ultimo del volume logico esistente. Se lo spazio sui volumi fisici non è sufficiente e l'elenco dei tag è definito nel file lvm.conf
, LVM controllerà la presenza di tag collegati ai volumi fisici e cercherà di corrispondere i tag dei volumi fisici tra estensioni esistenti e quelle nuove.
Per esempio, se siete in possesso di volumi logici speculari tra due siti all'interno di un gruppo singolo di volumi allora sarà possibile utilizzare i tag sui volumi fisici in base alla loro posizione con @site1 e @site2 specificando la seguente riga nel file
lvm.conf
:
cling_tag_list = [ "@site1", "@site2" ]
Per informazioni su come etichettare i volumi fisici consultare Appendice C, Tag oggetto LVM.
Nel seguente esempio il file
lvm.conf
è stato modificato in modo da contenere la seguente riga:
cling_tag_list = [ "@A", "@B" ]
In questo esempio è stato creato un gruppo di volumi
taft
il quale è composto da volumi fisici /dev/sdb1
, /dev/sdc1
, /dev/sdd1
, /dev/sde1
, /dev/sdf1
, /dev/sdg1
, e /dev/sdh1
. I suddetti volumi avranno i seguenti tag, A
, B
, e C
. In questo esempio il tag C
non viene utilizzato, ma in questo caso verrà mostrato che LVM utilizza i tag per selezionare i volumi fisici da usare per i segmenti 'o gambe' del mirror.
[root@taft-03 ~]# pvs -a -o +pv_tags /dev/sd[bcdefgh]1
PV VG Fmt Attr PSize PFree PV Tags
/dev/sdb1 taft lvm2 a- 135.66g 135.66g A
/dev/sdc1 taft lvm2 a- 135.66g 135.66g B
/dev/sdd1 taft lvm2 a- 135.66g 135.66g B
/dev/sde1 taft lvm2 a- 135.66g 135.66g C
/dev/sdf1 taft lvm2 a- 135.66g 135.66g C
/dev/sdg1 taft lvm2 a- 135.66g 135.66g A
/dev/sdh1 taft lvm2 a- 135.66g 135.66g A
Il seguente comando crea un volume speculare di 100G dal gruppo di volumi
taft
.
[root@taft-03 ~]# lvcreate -m 1 -n mirror --nosync -L 100G taft
Il seguente comando mostra i dispositivi usati per le sezioni ed i log del mirror.
[root@taft-03 ~]# lvs -a -o +devices
LV VG Attr LSize Log Copy% Devices
mirror taft Mwi-a- 100.00g mirror_mlog 100.00
mirror_mimage_0(0),mirror_mimage_1(0)
[mirror_mimage_0] taft iwi-ao 100.00g /dev/sdb1(0)
[mirror_mimage_1] taft iwi-ao 100.00g /dev/sdc1(0)
[mirror_mlog] taft lwi-ao 4.00m /dev/sdh1(0)
Il seguente comando estende la dimensione del volume speculare utilizzando la politica di assegnazione
cling
per indicare che i segmenti del mirror devono essere estesi utilizzando i volumi fisici con lo stesso tag.
[root@taft-03 ~]# lvextend --alloc cling -L +100G taft/mirror
Extending 2 mirror images.
Extending logical volume mirror to 200.00 GiB
Logical volume mirror successfully resized
Il seguente comando mostra l'estensione dei segmenti del mirror utilizzando i volumi fisici con lo stesso tag del segmento. Da notare come i volumi fisici con lo stesso tag, in questo caso
C
, sono stati ignorati.
[root@taft-03 ~]# lvs -a -o +devices
LV VG Attr LSize Log Copy% Devices
mirror taft Mwi-a- 200.00g mirror_mlog 50.16
mirror_mimage_0(0),mirror_mimage_1(0)
[mirror_mimage_0] taft Iwi-ao 200.00g /dev/sdb1(0)
[mirror_mimage_0] taft Iwi-ao 200.00g /dev/sdg1(0)
[mirror_mimage_1] taft Iwi-ao 200.00g /dev/sdc1(0)
[mirror_mimage_1] taft Iwi-ao 200.00g /dev/sdd1(0)
[mirror_mlog] taft lwi-ao 4.00m /dev/sdh1(0)