前期准备
虚拟机硬件扩容
对虚拟机进行硬件扩容,扩容方式一般为两种,扩展原有的虚拟硬盘与添加新的虚拟硬盘,建议采用添加新的虚拟硬盘的方式
停止虚拟机上的所有服务
项停下虚拟机上的所有服务(如数据库以及各类应用)
备份虚拟机
对虚拟机进行备份(所有的磁盘操作都是有风险的,一定要进行备份)
重启虚拟机
重启虚拟机。建议使用命令reboot
扩容步骤
检查硬盘空间
在root用户下终端执行命令fdisk –l
如若采用扩展原有硬盘的方式进行的硬件扩容,则会如下图所示
原有的sda盘的总容量扩展了但是没有新的分区产生,如上图所示,原本的sda容量为119G,硬件扩容之后容量扩展为了322.1G,但是硬盘的分区仍旧为原来的sda1和sda2,因此,在“扩展原有硬盘”的方式下,在下一步硬盘分区中,对sda进行分区的时候就创建sda3
2. 如若采用添加新的硬盘的方式进行的硬件扩容,则会如下图所示
新增了sdb硬盘,但是此硬盘没有分区
硬盘分区
以添加新的硬盘的扩容方式为例,在fdisk –l下可以看到/dev/sdb
以下操作均在root用户终端执行(斜体为终端提示,深色为命令)
fdisk /dev/sdb
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
注:这一步是分区编号,因为sdb硬盘还没有分区过,所以这里填1
如果是sda扩容的情况,在已经有sda1和sda2两个分区的情况下,就需要填3
First cylinder (1-2610, default 1): "enter"
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610): "enter"
Using default value 2610
注:此步中的“enter”为按下“enter”键
Command (m for help):t
Selected partition 1
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
注:此步可能最后会提示重启虚拟机,reboot一下即可
fisk –l
可以看到sdb分出了sdb1
扩展逻辑卷
以下操作均在root用户终端执行(斜体为终端提示,深色为命令,高亮内表示据实际变动)
pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created
vgdisplay
主要关注VG_Name,例如:此处为vg_distance
vgextend vg_distance /dev/sdb1
pvscan
lvdisplay
此处关注LV Path,即上图中为 /dev/vg_distance/lv_root
lvextend/dev/vg_distance/lv_root/dev/sdb1
resize2fs/dev/vg_distance/lv_root
注:这一步很重要,一定要记得执行
df –h
相应的目录相比原来成功进行了扩容