Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.4.12.2. Extendendo um Volume Lógico com a Política de Alocação cling.

Quando extender um volume LVM, você pode usar a opção --alloc cling do comando lvextend para especificar a política de alocação cling. Esta política escolherá espaço nos mesmos volumes físicos como no último segmento do volume lógico existente. Se há espaço insuficiente nos volumes físicos e uma lista de rótulos é definida no arquivo lvm.conf, o LVM checará se qualquer dos rótulos estão anexados aos volumes físicos e buscam coincidir aqueles rótulos de volume físico entre extensões existentes e novas extensões.
Por exemplo, se você possui volumes lógicos que estão espelhados entre dois lugares dentro de um grupo de volume único, você pode rotular os volumes físicos de acordo com onde eles estão situados rotulando os volumes físicos com tags @site1 e @site2 e especificar a seguinte linha no arquivo lvm.conf:
cling_tag_list = [ "@site1", "@site2" ]
Para informações sobre como rotular volumes físicos, veja o Apêndice C, Tags de Objetos do LVM.
No exemplo seguinte, o arquivo lvm.conf foi modificado para conter a seguinte linha:
cling_tag_list = [ "@A", "@B" ]
Também neste exemplo, um grupo de volume taft foi criado e consiste nos volumes físicos /dev/sdb1, /dev/sdc1, /dev/sdd1, /dev/sde1, /dev/sdf1, /dev/sdg1, e /dev/sdh1. Estes volumes físicos foram rotulados com as tags A, B e C. O exemplo não usa a tag C, mas isto mostrará que o LVM usa os rótulos para selecionar quais volumes físicos usar para as pernas do espelho.
[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
O seguinte comando cria um volume espelhado de 100G a partir do grupo de volume taft.
[root@taft-03 ~]# lvcreate -m 1 -n mirror --nosync -L 100G taft
O comando a seguir exibe quais dispositivos são usados pelas pernas do espelho e log do espelho.
[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)
O comando seguinte estende o tamanho do volume espelhado, usando a política de alocação cling para indicar que as pernas do espelho deveriam ser estendidas usando volumes físicos com o mesmo rótulo.
[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
O seguinte comando de exibição mostra que as pernas do espelho foram estendidas usando volumes físicos com o mesmo rótulo da perna. Note que volumes físicos com uma tag C foram ignorados.
[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)