在我所实施的企业应用中,创建虚拟机、为虚拟机安装操作系统的时候,一般遵循如下的原则。
1.系统盘与数据盘分离的原则。生产环境中的虚拟机至少要有2块硬盘,第一块硬盘为安装操作系统的磁盘,第二块硬盘为保存数据的磁盘。每块硬盘只创建一个分区。
2.操作系统的硬盘大小可以根据如下的公式进行估算:60GB~80GB+虚拟机内存大小×1.5。例如,一台Windows Server 2008 R2操作系统的虚拟机,分配了32GB内存,则系统盘大 小 =60+32×1.5=108GB≈ 120GB。
图1 操作系统硬盘
图2 数据磁盘
3.如果有多个应用,需要有多个不同的数据保存位置,建议为每个应用配置一块单独的磁盘。例如,某台虚拟机既是SQL Server数据库服务器,又是文件夹共享服务器,可以将SQL Server数据库保存在第二块硬盘(盘符为D),将共享文件夹保存在第三块硬盘(盘符为E)。这样做的优点是,在后期可以根据数据量的大小对硬盘进行扩充而不需要停机。
本文通过一些案例应用进行介绍。
生产环境中的虚拟机一般分配2块磁盘,第一块硬盘用来安装操作系统(如图1),本示例中操作系统磁盘大小为100GB),第二块硬盘保存数据(如图2),本示例中数据磁盘大小为2TB。
进入虚拟机控制台,打开“服务器管理器→存储→磁盘管理”控制台可以看到,每块硬盘只创建了一个分区。
打开“资源管理器”查看每个分区的大小及可用空间。
在当前的配置中,无论是扩充C盘还是D盘的空间,都可以做到在不关机、应用不中断的前提下动态扩充。
对于采用前文进行磁盘规划的虚拟机,当C盘、D盘(或其他磁盘)空间不足时,可以先修改虚拟机的配置,增加虚拟磁盘的大小,然后再进入虚拟机中,为C盘、D盘扩容。下面介绍主要的步骤。
1.修改虚拟机的配置,调整硬盘的大小,在此硬盘空间只能增加不能减小。
2.进入虚拟机系统,在“计算机管理→磁盘管理”中刷新磁盘,可以看到C盘后面新增加的“未分配”空间,右键单击C盘选择“扩展卷”。
3.在“扩展卷向导”中,选择磁盘,在“选择空间量”中,输入要扩展的大小,一般选择默认值即可。
4.在“完成扩展卷向导”对话框中单击“完成”按钮,完成磁盘扩展。
5.返回到“计算机管理→存储→磁盘管理”中,可以看到C盘空间已扩充。在扩展卷的过程中,系统不受影响,数据不丢,磁盘可用空间增加。D盘、E盘等的扩展以此类似,不一一介绍。
图3 扩展卷之后截图
图4 创建超过2TB的单一分区
前面介绍的方法适用于磁盘空间小于2TB的虚拟机。如果虚拟机的硬盘使用即将超过2TB,需要继续添加空间时,应采用如下的方法。
1.修改虚拟机配置,添加一块新的虚拟硬盘,本示例中新添加的虚拟硬盘大小为200GB。
2.进入虚拟机控制台,打开“服务器管理器→存储→磁盘管理”,先将新添加的“硬盘2”联机并初始化,然后右击D盘选择“扩展卷”,扩展之后如图3所示。
3.打开“资源管理器”可以看到,D盘可用空间已经从12GB扩展到212GB,增加了200GB。此检查表示磁盘扩充已经完成。
在新建虚拟机的时候,如果添加的第一块硬盘(即用来安装操作系统的磁盘)大于2TB,则最多只能使用2TB,超过2TB的空间不能使用,可以通过下面的实验进行验证。
1.在vSphere Web Client或vSphere Client中创建虚拟机,设置硬盘大小为3000GB。
2.在虚拟机中安装操作系统。安装完操作系统之后,打开“计算机管理→存储→磁盘管理”可以看到,C分区只有2TB,而2TB后面剩余约952GB。
3.当前2TB的系统卷是最大值,右击C可以看到“扩展卷”选项为灰色不可选,2TB之后的空间也不能创建分区。
如果虚拟机中想使用单一磁盘超过2TB的空间,则有两种方法(此处2TB硬盘为数据盘,不是系统磁盘)。
1.新建虚拟硬盘,在创建虚拟硬盘的时候超过2TB。
2.如果创建硬盘的时候小于2TB,当虚拟机中已经分区之后,再在虚拟机配置中修改硬盘大小并超过2TB,则在虚拟机中只能删除已经创建的分区,将磁盘转换为GPT分区之后,再次创建分区才能超过2TB。下面将通过实验验证。
(1)修改虚拟机配置,添加一块5TB大小的硬盘。
(2)启动虚拟机,打开“计算机管理→存储→磁盘管理”,将新添加的硬盘联机并初始化,初始化的时候选择GPT分区,之后分区格式化,如图4所示,这是格式化之后的截图。