is it possible to move lvm2 logvols?
hi,
hi we've got a server with a lvm2 pv with a dozen of logvol in it. under the lvm we'd like to create a raid1 array on 2 disk. unfortunately we create raid0 under it. but the logvols contains a lots of important data. we'd like to
- put 2 new disks into the system,
- create the raid1 array on it,
- put a new volgroup over the raid1,
- create the same size logvols in the new volgroup,
- and move the old logvols to the new logvols, but how can i do that? everything is ok, except the last step. is there any easy way to do the last step? can i use vgexport and vgimport for this? or can i use a simple dd for it? or?
thank you for your help in advance.
Signature · 1 line
Levente "Si vis pacem para bellum!"
Quoted 8 lines · Farkas Levente
hi,
hi we've got a server with a lvm2 pv with a dozen of logvol in it. under the lvm we'd like to create a raid1 array on 2 disk. unfortunately we create raid0 under it. but the logvols contains a lots of important data. we'd like to
- put 2 new disks into the system,
- create the raid1 array on it,
- put a new volgroup over the raid1,
Hi!
Do not create a new vg.
Add the raid1 as a second pv to the existing vg.
Use pvmove to move the logical volumes from one pv to the other. This is an online operatipn.
Greetings
Signature · 4 lines
Robert Sander Senior Manager Information Systems Epigenomics AG Kleine Praesidentenstr. 1 10178 Berlin, Germany phone:+49-30-24345-0 fax:+49-30-24345-555 http://www.epigenomics.com [email protected]
Quoted 11 lines · Robert Sander
Quoted 8 lines · Farkas Levente
hi,
hi we've got a server with a lvm2 pv with a dozen of logvol in it. under the lvm we'd like to create a raid1 array on 2 disk. unfortunately we create raid0 under it. but the logvols contains a lots of important data. we'd like to
- put 2 new disks into the system,
- create the raid1 array on it,
- put a new volgroup over the raid1,
Quoted 6 lines
Hi!
Do not create a new vg.
Add the raid1 as a second pv to the existing vg.
Use pvmove to move the logical volumes from one pv to the other. This is an online operatipn.
ok everything seems to working. after i move the logvols i remove the old pv and try to boot the system. now the problem during the boot linux can't find the volume group so can't find it's / since the / is on the first logvol of the vg. this on centos-5.
the strange thing if i boot from centos rescue dvd it see the vg and logvols too and i can chroot /mnt/sysimage into the new real system. what can be the reason that if i boot the new system it can't find the vg and it's logvols?
Signature · 1 line
Levente "Si vis pacem para bellum!"
Quoted 18 lines · Farkas Levente
Quoted 10 lines · Robert Sander
Quoted 8 lines · Farkas Levente
hi,
hi we've got a server with a lvm2 pv with a dozen of logvol in it. under the lvm we'd like to create a raid1 array on 2 disk. unfortunately we create raid0 under it. but the logvols contains a lots of important data. we'd like to
- put 2 new disks into the system,
- create the raid1 array on it,
- put a new volgroup over the raid1,Quoted 6 lines
Hi!
Do not create a new vg.
Add the raid1 as a second pv to the existing vg.
Use pvmove to move the logical volumes from one pv to the other. This is an online operatipn.
Quoted 8 lines
ok everything seems to working. after i move the logvols i remove the old pv and try to boot the system. now the problem during the boot linux can't find the volume group so can't find it's / since the / is on the first logvol of the vg. this on centos-5.
the strange thing if i boot from centos rescue dvd it see the vg and logvols too and i can chroot/mnt/sysimageinto the new real system. what can be the reason that if i boot the new system it can't find the vg and it's logvols?
already find the old initrd contains only raid0.ko so it can't find the raid1 disk:-(
Signature · 1 line
Levente "Si vis pacem para bellum!"
Quoted 8 lines · Farkas Levente
ok everything seems to working. after i move the logvols i remove the old pv and try to boot the system. now the problem during the boot linux can't find the volume group so can't find it's / since the / is on the first logvol of the vg. this on centos-5.
the strange thing if i boot from centos rescue dvd it see the vg and logvols too and i can chroot/mnt/sysimageinto the new real system. what can be the reason that if i boot the new system it can't find the vg and it's logvols?
centos-5 puts hardcoded lvm and md activation into the initrd init script.
To see your init script,
# mkdir initrd # cd initrd # zcat /path/to/initrd...img | cpio -icvdmu # cat init
A typical init script has lvm related parts similar to this:
----------
...
echo "Loading dm-mod.ko module"
insmod /lib/dm-mod.ko
echo "Loading dm-mirror.ko module"
insmod /lib/dm-mirror.ko
echo "Loading dm-zero.ko module"
insmod /lib/dm-zero.ko
echo "Loading dm-snapshot.ko module"
insmod /lib/dm-snapshot.ko
echo Making device-mapper control node
mkdmnod
mkblkdevs
raidautorun /dev/md3
raidautorun /dev/md4
echo Scanning logical volumes
lvm vgscan --ignorelockingfailure
echo Activating logical volumes
lvm vgchange -ay --ignorelockingfailure rootvg
...
---------
You have to edit the script, make sure it activates any raid PVs your VG depends on, and change the name of the VG containing root fs.
This is done automatically by mkinitrd. But it has no options to creat a script for a different LVM environment than the one you are running on. So you have to manually edit init and package it back to a new initrd image with cpio.
# pwd /.../initrd # find * | cpio -ocv | gzip -9 >../newinitrd.img
This is not convenient. Assuming mkinitrd was more adaptable, it would still defeat much of the advantage of grub to have to remember to run it to change LVM environment. (Although, to be fair, this usually happens only when migrating to new hardware.)
Signature · 4 lines
Stuart D. Gathman <[email protected]> Business Management Systems Inc. Phone: 703 591-0911 Fax: 703 591-6154 "Confutatis maledictis, flammis acribus addictis" - background song for a Microsoft sponsored "Where do you want to go from here?" commercial.