Aug
2
ESXI虚拟机磁盘扩容总体上比较简单,为了数据的安全,动手前做好数据备份,或者克隆虚拟机备份,通过VMware vSphere Client客户端连接ESXI,编辑要扩容磁盘的虚拟机设置,选择磁盘可以直接修改为想要扩容的大小,注意该大小确定之后不能往小的修改,重启虚拟机之后你会发现磁盘的容量并没有发生改变,用fdisk -l查看硬盘的容量确实是已修改后的容量了,要想正常使用新增的容量我们还要做以下几步:
一、关闭要扩容的虚拟机,然后把磁盘添加到其他的虚拟机,或者使用LiveCD引导,我们这里直接把磁盘添加到另一台虚拟机,使用VMware vSphere Client客户端连接ESXI,选择要添加磁盘的那台虚拟机,编辑虚拟机设置-添加-硬盘-使用现有虚拟磁盘-浏览选择我们要扩容的那块磁盘之后确定保存,然后重启这台虚拟机。
二、登录虚拟机操作系统,执行以下操作:
[root@localhost ~]# fdisk -l /dev/sdb
Disk /dev/sdb: 268.4 GB, 268435456000 bytes
255 heads, 63 sectors/track, 32635 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd0b1bc7f
Device Boot Start End Blocks Id System
/dev/sdb1 1 1033 8297541 82 Linux swap / Solaris
/dev/sdb2 1034 20887 159477255 83 Linux
这是我们内部的测试机,磁盘空间有限,为了充分的利用磁盘空间,分区比较简单,就一个交换分区和根分区,下面我们使用fdisk删除根分区,并重新建根分区:
[root@localhost ~]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): d
Partition number (1-4): 2
Command (m for help): p
Disk /dev/sdb: 268.4 GB, 268435456000 bytes
255 heads, 63 sectors/track, 32635 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd0b1bc7f
Device Boot Start End Blocks Id System
/dev/sdb1 1 1033 8297541 82 Linux swap / Solaris
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1034-32635, default 1034):
Using default value 1034
Last cylinder, +cylinders or +size{K,M,G} (1034-32635, default 32635):
Using default value 32635
Command (m for help): wq
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
三、格式化磁盘
使用 resize2fs 扩大文件系统大小,磁盘原有的数据不会丢失。
e2fsck -f /dev/sdb2
resize2fs /dev/sdb2
四、关闭该虚拟机,移除这块磁盘,启动那台要扩容的虚拟机,登录系统之后我们发现磁盘已经是扩容后的大小了,最重要的是数据无损。
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 239G 101G 126G 45% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
[root@localhost ~]#
如果像阿里云那样,数据盘在单独的一块磁盘,就更好操作了。
一、关闭要扩容的虚拟机,然后把磁盘添加到其他的虚拟机,或者使用LiveCD引导,我们这里直接把磁盘添加到另一台虚拟机,使用VMware vSphere Client客户端连接ESXI,选择要添加磁盘的那台虚拟机,编辑虚拟机设置-添加-硬盘-使用现有虚拟磁盘-浏览选择我们要扩容的那块磁盘之后确定保存,然后重启这台虚拟机。
二、登录虚拟机操作系统,执行以下操作:
[root@localhost ~]# fdisk -l /dev/sdb
Disk /dev/sdb: 268.4 GB, 268435456000 bytes
255 heads, 63 sectors/track, 32635 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd0b1bc7f
Device Boot Start End Blocks Id System
/dev/sdb1 1 1033 8297541 82 Linux swap / Solaris
/dev/sdb2 1034 20887 159477255 83 Linux
这是我们内部的测试机,磁盘空间有限,为了充分的利用磁盘空间,分区比较简单,就一个交换分区和根分区,下面我们使用fdisk删除根分区,并重新建根分区:
[root@localhost ~]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): d
Partition number (1-4): 2
Command (m for help): p
Disk /dev/sdb: 268.4 GB, 268435456000 bytes
255 heads, 63 sectors/track, 32635 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd0b1bc7f
Device Boot Start End Blocks Id System
/dev/sdb1 1 1033 8297541 82 Linux swap / Solaris
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (1034-32635, default 1034):
Using default value 1034
Last cylinder, +cylinders or +size{K,M,G} (1034-32635, default 32635):
Using default value 32635
Command (m for help): wq
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
三、格式化磁盘
使用 resize2fs 扩大文件系统大小,磁盘原有的数据不会丢失。
e2fsck -f /dev/sdb2
resize2fs /dev/sdb2
四、关闭该虚拟机,移除这块磁盘,启动那台要扩容的虚拟机,登录系统之后我们发现磁盘已经是扩容后的大小了,最重要的是数据无损。
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 239G 101G 126G 45% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
[root@localhost ~]#
如果像阿里云那样,数据盘在单独的一块磁盘,就更好操作了。