生产环境KVM虚拟机增加磁盘扩容逻辑卷

虚拟机扩容数据盘操作(MBR格式)

因为现有的九期节点ansible主机环境vdb是MBR格式,MBR最大只能支持2T,如果要扩容3T,就要改为GPT格式,但是修改为GPT格式会清除整个vdb盘的数据,现有vdb有数据,其他盘空间有限,不能迁移数据,所以只能新加一个vdc的盘,具体步骤如下:

一、增加磁盘:
1. 登录到相应资源池堡垒机,再登录到ansible主机,ssh到宿主机;
2. 查询ansible主机的虚拟机数据盘路径,使用命令:virsh domblklist 虚拟机名称
3. cd 到该路径下:cd /apps/vmimages/虚机名
4.创建一个3T的新数据盘disk3.0,命令:qemu-img create -f qcow2 disk.3 3T
5.创建attach-volume.xml 文件:
vim attach-volume.xml





6.加载新数据盘,命令:virsh attach-device 虚机名 attach-volume.xml
7.回到ansible主机,查看是否增加成功:lsblk 查看是否有vdc的盘
8.初始化新数据盘vdc,命令:pvcreate /dev/vdc

二、挂载数据盘,这部分有两种情况:
(1)情况一、原有vdb盘已经挂载在/apps下,则用以下方式扩容(其中逻辑卷名称以实际环境为准):
1. 首先查询逻辑卷组名称:lsblk或vgs、lvscan
2. 将vdc加入卷组,命令:vgextend 卷组名称 /dev/vdc
3. 扩容逻辑卷:lvextend -L +3T 逻辑卷名称
4. 查询逻辑卷格式以及UUID,命令:blkid
5. 重新加载逻辑卷:
如果是ext4格式,使用命令: resize2fs 逻辑卷名称
如果是xfs格式,使用命令:xfs_growfs 逻辑卷名称
6.确认是否成功,lsblk或df -Th

(2)情况二、原有vdb盘挂载在其他目录下,则用以下方式扩容(其中逻辑卷名称以实际需求为准):
1.首先查询当前vdb盘下有无逻辑卷,如果没有,需要重建一个,步骤如下:
(1)创建卷组:vgcreate 卷组名称 /dev/vdc #如果需要指定PE大小,可加 -s PE大小
(2)创建逻辑卷:lvcreate -l 100%VG -n 逻辑卷名称 卷组名称 #也可以加-L 指定大小
(3)格式化新的逻辑卷,命令:mkfs.ext4 逻辑卷 或 mkfs.xfs 逻辑卷
(4)在/ 下建立一个目录:mkdir /backup
(5)将原vdb数据盘重新挂载到该目录下:
a.检查是否有在用进程:ps -elf | grep -i 当前挂载点 或 lsof | grep -i 当前挂载点
如有需要通知相关人员进行停止,需要重新挂载;处理完后,将vdb重新挂载到/backup目录;
b.如果没有,将vdb重新挂载到/backup目录:mount /dev/卷组/逻辑卷 /apps
(6)将逻辑卷挂载到/apps目录,并将/backup下的文件拷贝到/apps,命令:
cp -rf /backup/* /apps/
(7)将挂载写入fstab,持久化,命令:
vim /etc/fstab
UUID /apps 逻辑卷格式 defsults 0 0
#注释之前的挂载
(8)通过命令:df -Th或lsblk 可以查看当前挂载是否成功;
(9)修改/apps 权限、属组、属主,必做,不然其他用户无权限写入数据,命令:
chown -R deployer:apps /apps
chmod -R 0775 /apps
(10)通知相关人员,重新挂载已完成,解除告警,重启相关进程,恢复业务!

到此整个过程已完成,如果需要保留原/vdb挂载,可以重新挂载,如果不需要,可以将/vdb 扩容到卷组,增加逻辑卷容量;

你可能感兴趣的:(Linux,逻辑卷,kvm,linux)