LVM高级特性之二(镜像卷故障恢复 及 镜像卷与raid1卷的相互转换 和 镜像卷的拆分)

镜像卷(有日志,能用于群集)VS raid1卷(无日志,不能用于群集)
镜像卷故障恢复
准备阶段
centos7.3,三块磁盘

#第一:使用fdisk工具将sdb,sdc,sdd各分一个区 ,类型设为8e linux lvm,(sdd备用)
	fdisk /dev/sdb
		n

		t
			8e	#lvm类型

#第二:强制刷新分区表
	partprobe

#第三:创建pv
	pvcreate /dev/sdb1
	pvcreate /dev/sdc1

#第四:查看刚才创建的pv是否属于某个vg(刚创建的当然不会属于任何vg)
	pvscan

#第五:创建vg,名为datavg,
	vgcreate datavg /dev/sdb1 /dev/sdc1

#第六:查看vg,lv,pv的分配状态
	vgs

创建镜像卷

#第一:全新方式创建镜像卷
	lvcreate --type mirror -m 1 -n lvdata1 -L 1G datavg

#第二:查看lv(同步)
	lvs
[root@localhost ~]# lvs
  LV      VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log            Cpy%Sync Convert
  root    cl     -wi-ao---- 28.99g                                                               
  swap    cl     -wi-ao----  2.00g                                                               
  lvdata1 datavg mwi-a-m---  1.00g                                [lvdata1_mlog] 33.59

	查看lv的具体特性
	lvs -ao +devices datavg

#第三:挂载使用
	mkfs.ext4 /dev/datavg/lvdata1
	mount /dev/datavg/lvdata1 /test
	cp /etc /test -a

模拟故障恢复

#第一:模拟故障
	dd if=/dev/zero of=/dev/sdb1 count=100

#第二:查看lvs
	lvs -ao +devices datavg
[root@localhost ~]# lvs -ao +devices datavg
  WARNING: Device for PV UhSNAL-0Wnw-NmlR-dU81-HtD2-1N11-xkx0hM not found or rejected by a filter.
  WARNING: Couldn't find all devices for LV datavg/lvdata1_mimage_0 while checking used and assumed devices.
  LV                 VG     Attr       LSize Pool Origin Data%  Meta%  Move Log            Cpy%Sync Convert Devices                                
  lvdata1            datavg mwi-aom-p- 1.00g                                [lvdata1_mlog] 100.00           lvdata1_mimage_0(0),lvdata1_mimage_1(0)
  [lvdata1_mimage_0] datavg iwi-aom-p- 1.00g                                                                [unknown](0)                           
  [lvdata1_mimage_1] datavg iwi-aom--- 1.00g                                                                /dev/sdc1(0)                           
  [lvdata1_mlog]     datavg lwi-aom--- 4.00m                                                                /dev/sdc1(256) 

第三:查看读写正常不(测试发现正常)
	touch /test/ww
	echo "dsfs" > /test/ww
	cat /test/ww

#第四:卸载
	umount /test/

#第五:在挂载行不行
	mount /dev/datavg/lvdata1 /test

补充:
(上面两步,若是重启后,你会发现lvscan里面,是inactive未激活状态),就不能挂载
手工激活(会有警告,提示强制启动参数)

	#查看
	lvscan

	lvchange -a y /dev/datavg/lvdata1
	lvchange -a y /dev/datavg/lvdata1 --activationmode partial

	#强制启动后,可挂载(经测试发现无法挂载)
	lvscan

	mount /dev/datavg/lvdata1 /test

#第六:踢出坏盘加入新盘
	#将sdd1加入datavg
	vgextend datavg /dev/sdd1

	#查看pv
	pvscan

	#移除datavg里的坏的盘

	vgreduce --removemissing datavg 
	vgreduce --removemissing datavg --force

	pvscan
	lvs

	lvdisplay /dev/datavg/lvdata1

#第七:修复(会在前台同步,若是数据大,可以加-b参数,进行后台同步)
	lvconvert --type mirror -m 1 /dev/datavg/lvdata1

#第八:挂载使用,测试读写(发现正常)
	mount /dev/datavg/lvdata1 /test/
	touch /test/sss

将镜像卷转换为raid1卷

	lvs
	lvconvert --type raid1 /dev/datavg/lvdata1
	lvs -ao +devices datavg

将raid1卷转换为镜像卷
注意:centos7.3以后可以将raid1卷转换为镜像卷,之前的版本不行

	lvconvert --type mirror /dev/datavg/lvdata1
	lvs

拆分镜像卷(将sdd1拆分为newlvdata)

	lvs -ao +devices datavg
	lvconvert --splitmirrors 1 --name newlvdata /dev/datavg/lvdata1 /dev/sdd1

#挂载使用,对比数据是否一致
	mount /dev/datavg/newlvdata /test2
声明:本文为原创,作者为 辣条①号,转载时请保留本声明及附带文章链接:https://boke.wsfnk.com/archives/340.html

最后编辑于:2017/10/8作者: 辣条①号

暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注