MiniTip: Convert a Standard VG to Big VG Format
Contents
1. Introduction
For new volume groups I strongly recommend to only use scalable VGs with a physical partition size of 32.
But if you have a legacy system with old standard volume groups and you need to integrate new LUNs of a substantially bigger size you might run into a problem for two reasons:
The first problem can be solved by increasing the maximum PPs per PV with the t factor. But the same time you increase  the number of physical partitions per physical volume you decrease the number of physical volumes per volume group by the same factor.
But it is possible to convert a standard volume group to big VG format while all logical volume remain online. The number of physical volumes
in big VGs is four times higher than in standard VGs.
2. Convert to Big VG Format
To convert a standard VG to big VG format every physical volume in the volume group needs at least one free physical partiton.
The volume group myvg
contains 4 physical volumes with no free partitons left:
# lsvg -p myvg myvg: PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION vpath68 active 607 16 00..00..00..00..15 vpath69 active 607 16 00..00..00..00..15 vpath82 active 607 16 00..00..00..00..15 vpath83 active 607 16 00..00..00..00..16 vpath80 active 607 0 00..00..00..00..00 vpath81 active 607 0 00..00..00..00..00 vpath84 active 607 0 00..00..00..00..00 vpath85 active 607 0 00..00..00..00..00
Conclusion: The first physical partition of vpath80, vpath81, vpath84, and vpath85 have to be moved to vpath68, vpath69, vpath82/, and vpath83 respectively. To find the affected logical volumes we check disk by disk for the logical volume residing on the first PP:
# lspv -l vpath80 vpath80: LV NAME LPs PPs DISTRIBUTION MOUNT POINT lv01 593 593 122..120..121..121..109 /oracle/data01 lv02 13 13 00..00..00..00..13 /oracle/data02 loglv01 1 1 00..01..00..00..00 N/A # lspv -l vpath81 vpath81: LV NAME LPs PPs DISTRIBUTION MOUNT POINT lv01 595 595 122..121..121..121..110 /oracle/data01 lv02 12 12 00..00..00..00..12 /oracle/data02 # lspv -l vpath84 vpath84: LV NAME LPs PPs DISTRIBUTION MOUNT POINT lv01 595 595 122..121..121..121..110 /oracle/data01 lv02 12 12 00..00..00..00..12 /oracle/data02 # lspv -l vpath85 vpath85: LV NAME LPs PPs DISTRIBUTION MOUNT POINT lv01 595 595 122..121..121..121..110 /oracle/data01 lv02 12 12 00..00..00..00..12 /oracle/data02
Conclusion: Affected LV is lv01. To find the logical partitions to be migrated we look for physical partiton '0001' on each disk...
# lslv -m lv01 | grep -w 0001 | egrep '(vpath80|vpath81|vpath84|vpath85)' 0001 0123 vpath81 0968 0001 vpath80 0969 0001 vpath81 0970 0001 vpath84 0971 0001 vpath85
...and start the migration using migratelp:
# migratelp lv01/968 vpath68 0516-1291 migratelp: Mirror copy 1 of logical partition 968 of logical volume lv01 migrated to physical partition 592 of vpath68. # migratelp lv01/969 vpath69 0516-1291 migratelp: Mirror copy 1 of logical partition 969 of logical volume lv01 migrated to physical partition 592 of vpath69. # migratelp lv01/970 vpath82 0516-1291 migratelp: Mirror copy 1 of logical partition 970 of logical volume lv01 migrated to physical partition 592 of vpath82. # migratelp lv01/971 vpath83 0516-1291 migratelp: Mirror copy 1 of logical partition 971 of logical volume lv01 migrated to physical partition 592 of vpath83.
Checking...
# lsvg -p myvg myvg: PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION vpath68 active 607 15 00..00..00..00..15 vpath69 active 607 15 00..00..00..00..15 vpath82 active 607 15 00..00..00..00..15 vpath83 active 607 15 00..00..00..00..15 vpath80 active 607 1 01..00..00..00..00 vpath81 active 607 1 01..00..00..00..00 vpath84 active 607 1 01..00..00..00..00 vpath85 active 607 1 01..00..00..00..00
Finally we are ready to migrate the volume group to big VG format.
# chvg -B myvg 0516-1164 chvg: Volume group myvg changed. With given characteristics myvg can include up to 128 physical volumes with 1016 physical partitions each.
If the free partitions are not on the beginning of the disk an additional message appears:
0516-1216 chvg: Physical partitions are being migrated for volume group descriptor area expansion. Please wait.
To be able to integrate physical volumes with more than 1016 partitions we need to increase the limit of the number of physical partitions per physical volume:
# chvg -t 2 myvg 0516-1164 chvg: Volume group myvg changed. With given characteristics myvg can include up to 64 physical volumes with 2032 physical partitions each.
As we see we have one physical partiton less per disk. This is due to a larger VGDA with big VGs:
# lsvg -p myvg myvg: PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION vpath68 active 606 14 00..00..00..00..14 vpath69 active 606 14 00..00..00..00..14 vpath82 active 606 14 00..00..00..00..14 vpath83 active 606 14 00..00..00..00..14 vpath80 active 606 0 00..00..00..00..00 vpath81 active 606 0 00..00..00..00..00 vpath84 active 606 0 00..00..00..00..00 vpath85 active 606 0 00..00..00..00..00