4.4.12.2. Erweitern eines logischen Datenträgers mit der cling-Zuweisungsrichtlinie

Beim Erweitern eines LVM-Datenträgers können Sie die --alloc cling-Option des lvextend-Befehls verwenden, um die cling-Zuweisungsrichtlinie zu spezifizieren. Diese Richtlinie wählt Speicherplatz auf denselben physischen Datenträgern, auf denen sich das letzte Segment des vorhandenen logischen Datenträgers befindet. Falls die physischen Datenträger nicht ausreichend Platz bieten und eine Liste mit Tags in der lvm.conf-Datei definiert ist, überprüft LVM, ob diese Tags mit den physischen Datenträgern verknüpft sind und versucht, diese physischen Datenträger-Tags zwischen den vorhandenen und den neuen Extents abzugleichen.
Wenn Sie beispielsweise logische Datenträger, die an zwei Standorten gespiegelt sind, innerhalb derselben Datenträgergruppe haben, können Sie die physischen Datenträger je nach Standort mit Tags versehen, indem Sie den physischen Datenträgern die Tags @site1 und @site2 zuweisen und die folgende Zeile in der lvm.conf-Datei einfügen:
cling_tag_list = [ "@site1", "@site2" ]
Werfen Sie einen Blick auf Anhang C, LVM Objekt-Tags für Informationen zum Tagging von physischen Datenträgern.
In dem folgenden Beispiel wurde die lvm.conf-Datei verändert und enthält nun die folgende Zeile:
cling_tag_list = [ "@A", "@B" ]
Zudem wurde in diesem Beispiel eine Datenträgergruppe namens taft erstellt, welche die folgenden physischen Datenträger umfasst: /dev/sdb1, /dev/sdc1, /dev/sdd1, /dev/sde1, /dev/sdf1, /dev/sdg1 und /dev/sdh1. Diesen physischen Datenträgern wurden die Tags A, B und C zugewiesen. Das Beispiel verwendet den C-Tag zwar nicht, doch veranschaulicht dies, dass LVM die Tags nutzt, um die physischen Datenträger für die Mirror-Standbeine auszuwählen.
[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
Der folgende Befehl erstellt einen 100 GB großen gespiegelten Datenträger in der Datenträgergruppe taft.
[root@taft-03 ~]# lvcreate -m 1 -n mirror --nosync -L 100G taft
Der folgende Befehl zeigt, welche Geräte für die Mirror-Standbeine und das Mirror-Protokoll verwendet werden.
[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)
Der folgende Befehl erweitert die Größe des gespiegelten Datenträgers, wobei die cling-Zuweisungsrichtlinie verwendet wird um anzugeben, dass die Mirror-Standbeine unter Verwendung eines physischen Datenträgers mit demselben Tag erweitert werden sollen.
[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
Der folgende Befehl zeigt, dass die Mirror-Standbeine erweitert wurden unter Verwendung von physischen Datenträgern mit demselben Tag wie das Standbein. Beachten Sie, dass die physischen Datenträger mit dem Tag C ignoriert wurden.
[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)