虚拟机系统的磁盘扩容妙招及案例

转载请通知老方,获许后方可(本文首发于CUblog)。

随着服务器虚拟化在企业中的应用越来越广,对寄宿其上的虚拟机系统的管理也越来越受到重视,在本文中,笔者通过实例来帮助大家如何实现虚拟机系统在磁盘空间方面的扩容。

本文虽然取场景于VMware的服务器虚拟化,但其方法同样可被借鉴在在其他如微软HYPER-V的服务器虚拟化中。

在VSphere中扩展磁盘是一件很容易的事情,因为其摆脱了传统磁盘的物理限制。只需轻点几下鼠标即可完成磁盘的扩充。

 

1. 非系统盘磁盘扩容

 

①非系统盘的扩容异常简单,只需要在VSphere Client中编辑虚机配置,在需要扩充的虚拟磁盘上直接改变磁盘大小即可。

②将磁盘大小更改为25G,这时,操作系统会认为有25G的连续空间,但是只有15G被分配,未指派的10G空间则需要进入扩充磁盘操作系统去扩展。

③扩展连续空间需要使用系统自带的DiskPart命令。

关于DiskPart的介绍:(摘自百度百科)

diskpart可实现对硬盘的分区管理,包括创建分区、删除分区、合并(扩展)分区,完全可取代分区魔术师等第三方工具软件,它还有分区魔术师无法实现的功能,如设置动态磁盘、镜像卷等,而且设置分区后不用重启电脑也能生效。只不过它运行于命令提示符下.。

④打开DiskPart后,使用【List Volume】列出当前系统的磁盘卷。

⑤此次要扩展的卷为卷1,使用【Select Volume】选择卷1,然后再使用【List Volume】查看当前已经选择卷,被选中的卷前会有【*】作为标识。

⑥使用【extend】命令扩展被选中的卷,顺利扩展,会有【DiskPart成功地扩展了卷】的提示。

此时,磁盘扩展完成。

 

2. 系统盘磁盘扩容

系统盘扩充与非系统扩充在操作系统配置方面没有差别,方法请参考以上。

不同之处在于:在服务器开机状态下是无法动态的扩展磁盘的,需要将服务器关机,将系统磁盘挂载到其他服务器中,然后再进行扩展。具体配置步骤如下:

①关闭需要扩容系统盘的服务器。

②在VSphere Client中更改系统磁盘的容量。

③将系统盘挂载到其他的服务器中。

④使用DiskPart扩展磁盘空间。

⑤将系统盘从其他服务器上取消挂载。

⑥将扩容好的服务器开机。

⑦检查扩容是否正常。

 

3. 注意事项

 

①磁盘扩容存在一定风险,建议在为重要系统扩容时,提前进行克隆备份,以便可以灾难恢复。

②系统盘扩容一定要用VSphere Client在原服务器中更改磁盘空间大小,不可挂载到其他服务器后在更改磁盘空间,否则会造成操作系统启动蓝屏。

 

4. 案例分析

一旦出现注意事项2中情况,会造成比较大的麻烦,下面为微软工程师在处理此问题的思路,可供参考。

问题简述

==========

服务器无法启动,在系统Logo处出现一个蓝屏并立即自动重启。

案件分析

==========

· 由于蓝屏一闪而过,在系统启动时强制按F8键进入启动菜单,找到Disable Auto Restart选项;

· 确认系统蓝屏代码为0x7B (INACCESSIBLE_BOOT_DEVICE),即系统启动时无法找到启动设备;一般此问题可能由以下原因导致:

1. 操作系统问题 – 由于文件损坏,配置错误,或File System corruption导致;

2. 硬件问题

3. 病毒问题

· 尝试安全模式、Last Known Good模式,问题依然出现;

· 进入Win RE环境,尝试了如下修复指令:

1. Startrep.exe – 未能修复问题

2. Chkdsk,排查是否有File System corruption或系统文件损坏问题 – Chkdsk结果正常

3. 替换系统注册表文件,排查是否由于系统驱动或者配置错误导致问题 – 将WINDOWS\system32\config\system替换为WINDOWS\System32\config\regback\system后,问题依然出现

· 通过以上操作,可以基本排除系统本身有文件损坏或配置错误的情况;问题可能存在于硬件层面;

· 鉴于问题出现前的最后一个操作是扩展磁盘,我们进一步确认了磁盘扩展操作是否成功;

· 为防止由于拆卸磁盘导致OS在重启时误认为本磁盘为新磁盘而拒绝加载,我们备份并删除了HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices下的所有设备,强迫OS在重启时重新遍历、加载所有设备 – 问题依然出现;

· 经过以上排查,问题范围缩小到硬件本身,对于VM而言即虚拟机宿主或虚拟机磁盘问题:

1. 尝试建立一个新的VM,将出问题的虚拟机磁盘直接挂载并启动 – 问题仍然发生;

2. 尝试建立一个新的可引导的虚拟机磁盘,将原磁盘中的所有文件全部复制进去,尝试启动机器;

- 在文件复制过程中出现了一些Access Deny的情况,经检查发现是由于某些文件没有权限导致的;

- 采用先备份、后恢复的方式来进行文件拷贝,系统成功启动;

问题解决

==========

采用NTbackup先备份、后恢复的方式来进行文件拷贝,将原问题磁盘中的所有文件全部复制到一个新的可引导的虚拟机磁盘,系统成功启动。

你可能感兴趣的:(虚拟机系统的磁盘扩容妙招及案例)