Grow Multipath Block Device

From LUG
Revision as of 14:48, 3 January 2018 by Dawes001 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Enlarging a multipath device

multipath -ll should show you:

# multipath -ll san4_Data

san4_Data (360002ac00000000000000dfa00004ca6) dm-3 3PARdata,VV             
size=250G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='round-robin 0' prio=50 status=active
  |- 0:0:1:2 sdb 8:16  active ready running
  `- 1:0:1:2 sdg 8:96  active ready running

Or possibly, after peer persistence:

san4_Data (360002ac000000000000003bb0000d16e) dm-9 3PARdata,VV
size=1.5T features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
|-+- policy='round-robin 0' prio=50 status=active
| |- 0:0:1:2 sdg 8:96  active ready running
| `- 1:0:1:2 sdq 65:0  active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
  |- 0:0:0:2 sdb 8:16  active ghost running
  `- 1:0:0:2 sdl 8:176 active ghost running

Also, dmsetup should give you something like this:

# dmsetup status san4_Data

0 524288000 multipath 2 0 1 0 1 1 A 0 2 0 8:16 A 0 8:96 A 0

One way to do this is to rescan the partition table for each device:

# blockdev --rereadpt /dev/sdg

But by far the quickest method is to rescan each SCSI device from the kernel. This is done with:

# echo 1 > /sys/class/scsi_device/2\:0\:0\:0/device/rescan

Either way, once the capacity changes you should see this in dmesg: # dmesg

</nowiki>[4849955.387134] sdg: detected capacity change from 214748364800 to 322122547200</nowiki>

Having trouble? Try rescanning the entire scsi bus again with: # echo "- - -" > /sys/class/scsi_host/host1/scan

Once you see the dmesg line, then resize the path in multipathd with:

# multipathd -k"resize multipath san4_Data"

Once that's done, multipath will now report the larger size:

# multipath -ll san4_Data

san4_Data (360002ac00000000000000dfa00004ca6) dm-3 3PARdata,VV             
size=350G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='round-robin 0' prio=50 status=active
  |- 0:0:1:2 sdb 8:16  active ready running
  `- 1:0:1:2 sdg 8:96  active ready running

Now you can proceed to enlarge the upper level components.