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)