I just split a logical volume into two volumes.
I did this by using pvmove to move data around inside the volume group after adding more disks.
This left me with just 1 logical volume on a set of five physical volumes that I wanted to spit off from the others.
Note: I set physical volumes to non allocatable when using pvmove so that it moved them to the right place.
So, before I split, pvs looked something like this
PV VG Fmt Attr PSize PFree /dev/md1 system lvm2 a- 44.92G 8.32G /dev/md2 data lvm2 -- 93.75G 93.75G /dev/md3 data lvm2 -- 93.75G 93.75G /dev/md4 data lvm2 -- 93.75G 93.75G /dev/md5 data lvm2 -- 93.75G 11.73G /dev/md6 data lvm2 a- 92.62G 0 /dev/md7 data lvm2 a- 306.41G 212.67G /dev/md8 data lvm2 a- 306.41G 212.67G /dev/md9 data lvm2 a- 318.68G 213.21G
Then, I ran
vgchange -a n data
vgsplit -v data other /dev/md2 /dev/md3 /dev/md4 /dev/md5 /dev/md6
vgchange -a y data
vgchange -a y other
pvs then looked like
PV VG Fmt Attr PSize PFree /dev/md1 system lvm2 a- 44.92G 8.32G /dev/md2 other lvm2 -- 93.75G 93.75G /dev/md3 other lvm2 -- 93.75G 93.75G /dev/md4 other lvm2 -- 93.75G 93.75G /dev/md5 other lvm2 -- 93.75G 11.73G /dev/md6 other lvm2 a- 92.62G 0 /dev/md7 data lvm2 a- 306.41G 212.67G /dev/md8 data lvm2 a- 306.41G 212.67G /dev/md9 data lvm2 a- 318.68G 213.21G