一、磁盘扩容
1、首先,先使用命令查看一下磁盘空间
df -h # 查看磁盘空间
可以发现根目录下的磁盘空间使用率达到了99%,为不影响系统的运行需要对其进行扩容
2. 查看虚拟机状态
在正式开始扩容时,要在宿主机中完成扩容前的准备工作。以下操作均在宿主机内执行
virsh domstate *** # 星号处替换成虚拟机的名称
如下图,显示running,表示系统正在运行中
3. 查看虚拟机的磁盘列表
virsh domblklist *** # 星号表示虚拟机名称
这里框内的名称需要记住(因为后续会用到),主要是记住vba 的目录
4. 随后查看一下相应的磁盘信息,此时需要进入vda所在的目录中。
qemu-img info *** # 星号处为vda 所在目录中的文件,上述图片第二个红框
5. 这步就到了最为关键的一步,磁盘扩容,这里扩容的是100G的磁盘空间
virsh blockresize (1) /var/lib/images /(2) 100G # (1) 处虚拟机名称 (2)处目录名称有后缀的。
可以使用 echo $? 命令进行测试如果输出为0,则表示命令执行成功。
6. 可以对其验证,查看,是否扩容到100G
qemu-img info *** # 星号处为vda 所在目录中的文件,上述图片第二个红框
很明显可以看到已扩容到100G
二、 虚拟机内磁盘的在线扩容
1. 回到需要扩容的虚拟机内,执行磁盘扩容。以下命令均可以查看分区情况,二选一即可
fdisk /dev/vda -l # 查看磁盘分区情况
fdisk -l # 查看磁盘分区情况
2. 进行格式化分区 fdisk /dev/vda 因为上图中分区分到vda中,故在vda中进行分区。按照顺序执行即可
按照顺序进行执行。箭头出,即为新添加的盘,因为执行的是LVM扩容所以要将vda4存储设置为LVM格式的
显示正在同步磁盘,则表示运行成功
3. 查看一下磁盘情况 ,以下命令均可
fdisk /dev/vds -l # 查看磁盘分区情况
fdisk -l # 查看磁盘分区情况
可以看到新增的盘格式为LVM格式的接下来按照,先创建pv然后扩容vg 然后扩容lv 的顺序执行操作
4. 创建pv(物理卷)
pvcreate /dev/ * # * 表示新增加的盘
使用pvcreate 命令进行pv的创建。并使用pvs进行查看可以看到vda4的创建
5. 扩容vg (卷组)
vgextend (1) /dev/ (2) # (1)表示 创建pv的名称 (2)表示创建的盘的名称
执行VG的扩容,使用vgs 进行查看,可以很明显的看到有100G的写入 此时的vda4 进行扩容后名字发生了改变为centos
![](https://img-blog.csdnimg.cn/8f4c569e77074b5f9677e0b502e940bd.png)
6. 扩容 lv (逻辑卷)
使用lvextend -l +100%FREE命令进行执行LV(逻辑卷)的扩容
lvextend -l +100%FREE /dev/mapper/centos-root 将其扩容到root中进行挂载
lvextend -l +100%FREE /dev/mapper/centos-root # 扩容lv ,并将其挂载到root中
并使用echo $? 进行测试
7. 查看创建LVM格式的文件系统,因为不同的文件系统所使用的命令不同
8. 刷新命令使磁盘扩容生效,因为文件系统中显示的是xfs文件系统。故执行xfs_growfs 命令,并进行测试
特别注意的是:
resize2fs 命令 针对的是ext2、ext3、ext4文件系统
xfs_growfs 命令 针对的是xfs文件系统
因为上图中查询到的文件系统为xfs ,所以使用 xfs_growfs 命令
9. 最后,使用 df -h 命令进行查看,是否成功
如图所示,扩容成功