Увеличение размера DRBD ресурса

Jan 25, 2016 17:27 · 779 words · 4 minute read drbd

Мы уже знаем, как расширить логический том в ОС Linux, но в случае с drbd-ресурсом потребуются дополнительные действия.

Например, нам необходимо «на лету» увеличить размер drbd-ресурса, созданного на lvm. Давайте разберемся!

Проверим заполненность диска до начала работ:

df -h
Filesystem                           Size  Used Avail Use% Mounted on
...
/dev/drbd2                           542G  431G  106G  81% /srv/www
...

Итак, искомый раздел заполнен на 81%.

Проверим состояние групп томов (Volume group) на обоих серверах. Первый сервер:

vgdisplay
...
--- Volume group ---
  VG Name               sata
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  20
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               880.71 GiB
  PE Size               4.00 MiB
  Total PE              225461
  Alloc PE / Size       140800 / 550.00 GiB
  Free  PE / Size       84661 / 330.71 GiB
  VG UUID               Y9cKNi-82zv-fEn2-IbS7-M00Y-5rPh-49cQox
...

второй сервер:

vgdisplay
...
  --- Volume group ---
  VG Name               sata
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  14
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               880.09 GiB
  PE Size               4.00 MiB
  Total PE              225304
  Alloc PE / Size       140800 / 550.00 GiB
  Free  PE / Size       84504 / 330.09 GiB
  VG UUID               8n4Goi-FyuU-KcPH-aY54-96Hn-RgRP-3mEy0y
...

Как видим, на обоих серверах есть свободное место (Free PE) в группе томов sata.

Проверим состояние логических томов в группе томов sata на обоих серверах. Первый сервер:

lvdisplay
...
--- Logical volume ---
  LV Path                /dev/sata/www
  LV Name                www
  VG Name                sata
  LV UUID                FaF2aC-QnZS-QbFX-hwB7-0cFP-xII9-y1loTm
  LV Write Access        read/write
  LV Creation host, time ,
  LV Status              available
  # open                 2
  LV Size                550.00 GiB
  Current LE             140800
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:1
...

второй сервер:

lvdisplay
...
--- Logical volume ---
  LV Path                /dev/sata/www
  LV Name                www
  VG Name                sata
  LV UUID                U8JESt-dcFx-dmmg-lNkX-K7YO-cFmw-UO2eTh
  LV Write Access        read/write
  LV Creation host, time ,
  LV Status              available
  # open                 2
  LV Size                550.00 GiB
  Current LE             140800
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:1

Смотрим состояние drbd-ресурсов на обоих серверах, на первом:

cat /proc/drbd
version: 8.3.11 (api:88/proto:86-96)
srcversion: F937DCB2E5D83C6CCE4A6C9

 1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
    ns:580966800 nr:0 dw:574780708 dr:829055181 al:2102442 bm:2875 lo:2 pe:2 ua:0 ap:2 ep:1 wo:f oos:0
 2: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
    ns:22532352 nr:0 dw:22473520 dr:72213873 al:120898 bm:824 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

на втором:

cat /proc/drbd
version: 8.3.11 (api:88/proto:86-96)
srcversion: F937DCB2E5D83C6CCE4A6C9

 1: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r-----
    ns:0 nr:580980756 dw:580980756 dr:0 al:0 bm:3388 lo:1 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
 2: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r-----
    ns:0 nr:22532488 dw:22532488 dr:0 al:0 bm:790 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

Примечание. Для успешного увеличения размера drbd-ресурса необходимо, чтобы на одной из нод ресурс находился в состоянии Secondary — как в нашем случае.

Расширяем логический том /dev/sata/www на обоих серверах, первый:

lvextend -L+250G /dev/sata/www
File descriptor 7 (pipe:[1414462951]) leaked on lvextend invocation. Parent PID 12147: bash
  Extending logical volume www to 800.00 GiB
  Logical volume www successfully resized

второй:

lvextend -L+250G /dev/sata/www
File descriptor 7 (pipe:[23754604]) leaked on lvextend invocation. Parent PID 24915: bash
  Extending logical volume www to 800.00 GiB
  Logical volume www successfully resized

Выполняем следующую команду на сервере, где drbd-ресурс находится в состоянии Primary:

drbdadm resize www

  --==  Thank you for participating in the global usage survey  ==--
The server's response is:

node already registered

Проверим состояние drbd-ресурсов, между ними должна начаться синхронизация:

cat /proc/drbd
version: 8.3.11 (api:88/proto:86-96)
srcversion: F937DCB2E5D83C6CCE4A6C9

 1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
    ns:583100940 nr:0 dw:576914832 dr:830717889 al:2110366 bm:2875 lo:2 pe:1 ua:0 ap:1 ep:1 wo:f oos:0
 2: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----
    ns:24141696 nr:0 dw:22489312 dr:73894105 al:121175 bm:921 lo:25 pe:111 ua:58 ap:15 ep:1 wo:f oos:260556636
	[>....................] sync'ed:  0.7% (254448/255992)Mfinish: 0:57:05 speed: 76,044 (75,204) K/sec

Дожидаемся завершения синхронизации ресурсов, проверяем состояние:

cat /proc/drbd
version: 8.3.11 (api:88/proto:86-96)
srcversion: F937DCB2E5D83C6CCE4A6C9

 1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
    ns:587986596 nr:0 dw:581800488 dr:834136653 al:2128615 bm:2875 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
 2: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
    ns:284992468 nr:0 dw:22797636 dr:334658225 al:122513 bm:16818 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

На ведущем сервере (drbd-ресурс находится в состоянии Primary) для расширения файловой системы выполняем:

resize2fs /dev/drbd2
resize2fs 1.42.5 (29-Jul-2012)
Filesystem at /dev/drbd2 is mounted on /srv/www; on-line resizing required
old_desc_blocks = 35, new_desc_blocks = 50
Performing an on-line resize of /dev/drbd2 to 209708791 (4k) blocks.
The filesystem on /dev/drbd2 is now 209708791 blocks long.

Изменение размера drbd-ресурса будет выполняться on-line. После завершения проверим заполненность интересующего нас диска:

df -h
Filesystem                           Size  Used Avail Use% Mounted on
...
/dev/drbd2                           788G  431G  350G  56% /srv/www
...

Готово!

tweet Share