LinuxProbe 发表于 2022-5-16 10:51:22

如何将lvm卷移动到另一台服务器中


在某些情况下,将卷组从一个系统移动到另一个系统可能是我们最需要的。下面看一下如何将一个包含多个磁盘的卷组从一台服务器移动到另一台服务器,而不会丢失任何文件。
环境
两台Centos8 虚拟机
第一台名字为:server1 , 第二台名字为:server2第一台Centos8额外添加4块硬盘。当配置完逻辑卷之后,用来移动到另一个Centos8系统中使用的。第一台Centos8 IP: 192.168.43.131第二台Centos8 IP: 192.168.43.137创建pv、vg、lv并挂载,复制数据到卷里面
下面4个硬盘创建为物理卷# fdisk -l|grep sdDisk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectorsDisk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectorsDisk /dev/sdc: 20 GiB, 21474836480 bytes, 41943040 sectorsDisk /dev/sdd: 20 GiB, 21474836480 bytes, 41943040 sectors# pvcreate /dev/sdPhysical volume "/dev/sda" successfully created.Physical volume "/dev/sdb" successfully created.Physical volume "/dev/sdc" successfully created.Physical volume "/dev/sdd" successfully created.创建卷组,卷组名称为vg_data# vgcreate vg_data /dev/sdVolume group "vg_data" successfully created# vgsVG      #PV #LV #SN Attr   VSize   VFree   cl      1   2   0 wz--n- <19.00g <2.00gvg_data   4   0   0 wz--n-79.98g 79.98g下面创建逻辑卷,卷的名称为lvdata,空间容量使用所有的# lvcreate -l +100%FREE -n lvdata vg_dataWARNING: xfs signature detected on /dev/vg_data/lvdata at offset 0. Wipe it? : yWiping xfs signature on /dev/vg_data/lvdata.Logical volume "lvdata" created.# lvs -o +devicesLV   VG      Attr       LSizePool Origin Data%Meta%Move Log Cpy%Sync Convert Devices            root   cl      -wi-ao---- 15.00g                                                   /dev/nvme0n1p2(512)swap   cl      -wi-ao----2.00g                                                   /dev/nvme0n1p2(0)    lvdata vg_data -wi-a----- 79.98g                                                   /dev/sda(0)          lvdata vg_data -wi-a----- 79.98g                                                   /dev/sdb(0)          lvdata vg_data -wi-a----- 79.98g                                                   /dev/sdc(0)          lvdata vg_data -wi-a----- 79.98g                                                   /dev/sdd(0)      https://www.linuxprobe.com/wp-content/uploads/2021/05/image1-2.png
创建挂载点、格式化分区、挂载分区、写入数据:# mkdir /data# mkfs.xfs /dev/vg_data/lvdata meta-data=/dev/vg_data/lvdata    isize=512    agcount=4, agsize=5241856 blks         =                     sectsz=512   attr=2, projid32bit=1         =                     crc=1      finobt=1, sparse=1, rmapbt=0         =                     reflink=1data   =                     bsize=4096   blocks=20967424, imaxpct=25         =                     sunit=0      swidth=0 blksnaming   =version 2            bsize=4096   ascii-ci=0, ftype=1log      =internal log         bsize=4096   blocks=10238, version=2         =                     sectsz=512   sunit=0 blks, lazy-count=1realtime =none                   extsz=4096   blocks=0, rtextents=0# mount /dev/vg_data/lvdata /data# df -h /dataFilesystem                  SizeUsed Avail Use% Mounted on/dev/mapper/vg_data-lvdata   80G604M   80G   1% /data# dd if=/dev/zero of=/data/disk.img bs=1M count=10241024+0 records in1024+0 records out1073741824 bytes (1.1 GB, 1.0 GiB) copied, 4.63086 s, 232 MB/s# touch /data/file{1..10}.txthttps://www.linuxprobe.com/wp-content/uploads/2021/05/image2-2.png卸载、停用逻辑卷和卷组
下面卸载分区# umount /data停用逻辑卷和卷组:# lvchange -an /dev/vg_data/lvdata # vgchange -an vg_data0 logical volume(s) in volume group "vg_data" now active# lvsLV   VG      Attr       LSizePool Origin Data%Meta%Move Log Cpy%Sync Convertroot   cl      -wi-ao---- 15.00g                                                      swap   cl      -wi-ao----2.00g                                                      lvdata vg_data -wi------- 79.98g                                                    停用逻辑卷之后,使用lvs命令查看逻辑卷,可看到lvdata卷的属性中a属性没有了,表示没有激活。
https://www.linuxprobe.com/wp-content/uploads/2021/05/image3-2.png导出卷组
在server1中导出卷组# vgexport vg_data   Volume group "vg_data" successfully exported导出之后,我们需要关闭server1系统。然后复制它的磁盘到server2中。复制server1的磁盘到server2目录中
将server1的四个磁盘复制到server2虚拟机的目录中。下面可以看到带有*-000002.vmdk的文件,这是因为我做了快照。需要一起复制到server2中。
https://www.linuxprobe.com/wp-content/uploads/2021/05/image4-2.png
复制到server2目录中:
https://www.linuxprobe.com/wp-content/uploads/2021/05/image5-2.png
打开server2的“编辑虚拟机设置”
https://www.linuxprobe.com/wp-content/uploads/2021/05/image6-2.png
添加现有虚拟磁盘
https://www.linuxprobe.com/wp-content/uploads/2021/05/image7-1.png
https://www.linuxprobe.com/wp-content/uploads/2021/05/image8-1.png
打开server2的电源。如果发现开机无法引导系统,开机按f2进入bios,设置启动项,将存在系统的磁盘顺序调到最顶。导入卷组
server2开机之后,使用pvscan扫描一下,新添加的磁盘是否可以检测到:# pvscan   PV /dev/nvme0n1p2   VG cl            lvm2 [<19.00 GiB / 0    free]PV /dev/sda          is in exported VG vg_data [<20.00 GiB / 0    free]PV /dev/sdb          is in exported VG vg_data [<20.00 GiB / 0    free]PV /dev/sdc          is in exported VG vg_data [<20.00 GiB / 0    free]PV /dev/sdd          is in exported VG vg_data [<20.00 GiB / 0    free]Total: 5 / in use: 5 / in no VG: 0 https://www.linuxprobe.com/wp-content/uploads/2021/05/image9-1.png
下面使用vgs命令查看一下,可以看到vg_data卷组,但是可以看到属性,有一个x属性,这代表是外部的卷组。# vgsVG      #PV #LV #SN Attr   VSize   VFreecl      1   2   0 wz--n- <19.00g    0   vg_data   4   1   0 wzx-n-79.98g    0 # https://www.linuxprobe.com/wp-content/uploads/2021/05/image10-1.png
下面使用vgimport命令导入vg_data卷组:# vgimport vg_data   Volume group "vg_data" successfully importedhttps://www.linuxprobe.com/wp-content/uploads/2021/05/image11-1.png
可以看到x属性消失了。激活卷组
下面使用lvs命令查看一下lvdata逻辑卷的属性:# lvsLV   VG      Attr       LSize   Pool Origin Data%Meta%Move Log Cpy%Sync Convertroot   cl      -wi-ao---- <17.00g                                                      swap   cl      -wi-ao----   2.00g                                                      lvdata vg_data -wi-------79.98g                                                    https://www.linuxprobe.com/wp-content/uploads/2021/05/image12-1.png
发现没有a, o这两个属性。a表示激活、o表示是否挂载。下面激活卷组:# vgchange -ay vg_data   1 logical volume(s) in volume group "vg_data" now active# lvsLV   VG      Attr       LSize   Pool Origin Data%Meta%Move Log Cpy%Sync Convertroot   cl      -wi-ao---- <17.00g                                                      swap   cl      -wi-ao----   2.00g                                                      lvdata vg_data -wi-a-----79.98g                  https://www.linuxprobe.com/wp-content/uploads/2021/05/image13-1.png
可以看到a属性显示了。挂载文件系统
首先创建挂载点,然后挂载文件系统:# mkdir /data# mount /dev/vg_data/lvdata /data/# df -h /dataFilesystem                  SizeUsed Avail Use% Mounted on/dev/mapper/vg_data-lvdata   80G1.6G   79G   2% /datahttps://www.linuxprobe.com/wp-content/uploads/2021/05/image14.png
再使用lvs命令查看一下,发现lvdata逻辑卷的o属性也显示了。# lvsLV   VG      Attr       LSize   Pool Origin Data%Meta%Move Log Cpy%Sync Convertroot   cl      -wi-ao---- <17.00g                                                      swap   cl      -wi-ao----   2.00g                                                      lvdata vg_data -wi-ao----79.98g                下面是导入之后,物理卷、卷组、逻辑卷的内容:
https://www.linuxprobe.com/wp-content/uploads/2021/05/image15.png总结
就这样我们已经成功完成了将卷组从一个系统移动到另一个系统的工作。

米豪 发表于 2022-5-16 11:35:24

6666666666
页: [1]
查看完整版本: 如何将lvm卷移动到另一台服务器中