VMware ESXi服务器存储扩容实战:从硬件RAID配置到虚拟机磁盘扩展

发布时间:2026/8/17 13:04:12
VMware ESXi服务器存储扩容实战:从硬件RAID配置到虚拟机磁盘扩展 1. 项目概述一次典型的服务器存储扩容实战最近在整理机房的资源发现一台跑着VMware ESXi的Dell PowerEdge R740服务器上面几个关键业务虚拟机的存储空间快见底了。告警邮件一天发好几封再不处理就得影响业务了。这种“磁盘空间不足”的警报对于运维来说就像悬在头顶的达摩克利斯之剑必须尽快解决。这次扩容的目标很明确在不影响现有业务、不停机的前提下为这台R740服务器新增物理磁盘并将其容量整合到ESXi的存储中最终分配给急需空间的虚拟机。这听起来像是一个标准的硬件添加和软件配置流程但实际操作中从硬件识别、驱动兼容性到ESXi存储策略和虚拟机磁盘扩展每一步都可能藏着“坑”。特别是对于像Dell R740这种企业级服务器其硬件管理iDRAC、阵列卡配置与ESXi系统的交互远比在普通电脑上加块硬盘复杂。这次我就把从规划到落地的完整过程以及中间遇到的那些教科书上不会写的细节和教训详细记录下来。无论你是刚开始接触企业级虚拟化的新手还是想了解特定型号服务器实操的老手这份记录应该都能提供直接的参考。2. 扩容前的核心规划与风险评估动手之前盲目操作是运维大忌。一次失败的存储扩容轻则导致性能下降重则可能引发数据丢失或服务中断。因此一个清晰的规划路线图至关重要。2.1 环境与需求确认首先需要全面摸清当前系统的“家底”。我的环境是一台Dell PowerEdge R740服务器安装的VMware ESXi 7.0 U3版本。通过ESXi主机客户端或vCenter我确认了现有存储的构成它主要使用了一个由多块SAS SSD组成的RAID 5阵列通过服务器的PERC H740P阵列卡管理并作为一个大的数据存储Datastore呈现给ESXi。当前的需求是为某台运行数据库服务的虚拟机VM增加约1TB的可用空间。该虚拟机使用的是厚置备延迟置零Thick Provision Lazy Zeroed的磁盘当前磁盘已满导致数据库日志无法写入。2.2 硬件选型与兼容性核查这是最容易出问题的环节。R740的磁盘背板支持多种规格SAS/SATA NVMe并且有前插槽和后插槽之分。我需要新增的是一块1.2TB的10K RPM SAS硬盘。关键步骤1查询硬件兼容性列表HCL。我直接登录了VMware Compatibility Guide和Dell的ESXi Ready Node列表输入R740和ESXi 7.0的型号确认计划添加的磁盘型号包括固件版本在官方支持范围内。这一步绝不能省不兼容的磁盘可能导致ESXi无法识别或者识别后出现性能异常、掉盘等问题。关键步骤2确认阵列卡和背板支持。我的R740配置了PERC H740P阵列卡它支持SAS 12Gb/s。我需要确保背板有空余的槽位并且槽位速率与磁盘匹配。通过Dell OpenManage Server AdministratorOMSA或直接登录iDRAC我可以查看物理磁盘托架Slot的空闲状态。关键步骤3规划扩容策略。这里有几种选择将新磁盘单独创建为一个新的RAID 0单盘阵列并在ESXi中表现为一个新的数据存储。优点是完全独立操作简单风险隔离。缺点是对于虚拟机来说如果需要跨数据存储扩展磁盘过程稍复杂且管理上多了一个存储单元。将新磁盘加入现有的RAID 5阵列进行在线扩容Online Capacity Expansion, OCE。优点是保持存储池的统一性虚拟机扩展磁盘操作更直接。缺点是操作时间较长阵列重构且期间阵列性能会下降存在一定风险尽管很低。用新磁盘替换现有阵列中一块较小容量的磁盘通过重构升级容量。这通常用于升级而非单纯扩容过程更漫长风险更高。考虑到业务连续性要求和对现有阵列性能影响的容忍度我选择了方案一新增磁盘单独建RAID 0创建新的数据存储。这样扩容操作对现有业务的影响最小风险最可控。注意选择方案二OCE需要你的阵列卡和当前RAID级别支持该功能。PERC H740P支持对RAID 5/6进行OCE但务必在业务低峰期进行并提前做好完整备份。2.3 制定详细操作流程与回滚方案规划好路线后我把操作步骤细化并明确了每个步骤的检查点和回滚方法物理安装磁盘关机如果支持热插拔则无需关机- 插入磁盘 - 上电。配置阵列通过iDRAC或开机进入PERC BIOS将新磁盘配置为RAID 0虚拟磁盘Virtual Disk。ESXi识别新存储在ESXi中重新扫描存储适配器发现新LUN。创建新的VMFS数据存储在新LUN上创建VMFS6文件系统。扩展虚拟机磁盘关闭目标虚拟机 - 编辑设置增加现有磁盘的大小如果空间来自同一数据存储或添加新硬盘如果来自新数据存储- 开机。操作系统内扩展分区进入虚拟机操作系统使用磁盘管理工具扩展卷。回滚方案如果在步骤5之前出现问题如阵列配置错误、ESXi无法识别最简单的回滚就是删除新配置的RAID 0虚拟磁盘物理拔出硬盘系统即恢复原状。这确保了操作的安全边界非常清晰。3. 实操步骤详解从硬件到系统的完整链路理论规划完毕下面进入实战环节。我将以通过Dell iDRAC远程管理为例进行说明这对于托管在机房的服务器是标准操作方式。3.1 物理磁盘安装与iDRAC初始化我的R740支持前端热插拔。在确保有冗余电源、系统运行稳定的情况下我直接找到了一个空闲的磁盘槽位。插入磁盘按下托架释放按钮取出空托架将1.2TB SAS硬盘装入托架并确保锁紧然后平稳地插入服务器槽位直到听到咔哒声且指示灯亮起。登录iDRAC通过浏览器登录R740的iDRAC管理IP地址。这是Dell服务器的“带外管理”核心所有硬件操作都可以在这里完成无需在操作系统层面进行。确认磁盘状态在iDRAC的“存储”概览中稍等片刻就能看到新磁盘被识别为“就绪”状态。这里要注意查看磁盘的“故障状态”是否为“否”以及“剩余寿命”等信息是否正常。3.2 配置PERC阵列卡创建虚拟磁盘这是将物理磁盘转化为服务器可用的逻辑存储的关键一步。在iDRAC界面导航到“存储” - “PERC H740P” - “控制器管理”。选择“创建虚拟磁盘”。选择磁盘在物理磁盘列表中勾选我刚插入的那块1.2TB磁盘。这里非常重要千万不要误选其他已属于现有阵列的磁盘仔细核对磁盘容量、型号和槽位号。选择RAID级别选择“RAID-0”。因为只有一块盘RAID 0是唯一选项也是我们的规划。配置虚拟磁盘参数大小选择“全部可用空间”。条带大小我保留了默认的64KB。对于顺序读写较多的应用如数据库日志文件较大的条带如256KB可能更好对于随机小文件IO较小的条带可能更优。除非有明确优化目标否则默认值是个稳妥的选择。读写策略保持默认的“WriteBack”和“ReadAhead”。WriteBack利用缓存提升写性能但需要电池/电容保护我的卡有Flash Backed Write CacheFBWC是性能首选。初始化这里我选择了“快速初始化”。对于全新磁盘快速初始化足以在几秒钟内完成它只清除磁盘的元数据而不是全盘写零。全初始化会对整个1.2TB空间写零耗时极长非必要不选。确认所有设置点击“创建”。操作通常在几十秒内完成。完成后在“虚拟磁盘”列表中就能看到这个新建的、容量约为1.1TB因进制换算和元数据占用的VD。3.3 ESXi主机识别并格式化新存储阵列卡层面准备好了接下来需要让ESXi操作系统“看见”并使用这块新空间。登录vSphere Client我使用的是连接到vCenter的HTML5客户端。直接选择对应的ESXi主机。重新扫描存储进入“配置” - “存储适配器”找到代表PERC H740P的适配器通常是vmhbaX如vmhba2。右键点击它选择“重新扫描存储适配器”。在弹出的对话框中确保“扫描新存储设备”被勾选然后点击“确定”。验证设备发现重新扫描后在“存储设备”选项卡下应该能看到一个新设备其容量与我们创建的虚拟磁盘一致。它的标识符通常以naa.或t10.开头。创建新的数据存储转到“存储”视图右键点击数据中心或主机选择“新建数据存储”。选择类型为“VMFS”。给数据存储起一个易于识别的名字例如R740_SAS_1.2TB_New。在选择设备步骤选中我们刚刚发现的那个新LUN设备。选择VMFS版本务必选择VMFS 6。VMFS 5是旧版本不支持自动空间回收UNMAP等高级特性。除非有特殊的兼容性要求否则一律用VMFS 6。分区配置使用默认的“使用所有可用分区”即可。在即将完成的摘要页面再次核对设备型号和容量确认无误后点击“完成”。格式化过程很快完成后在ESXi主机的存储列表中就能看到这个崭新的、亮闪闪的数据存储了其可用空间接近1.1TB。4. 虚拟机磁盘扩展与操作系统内扩容存储池已经就绪现在要把空间分配给那台“嗷嗷待哺”的数据库虚拟机。这里有一个关键决策点是在原有虚拟磁盘上扩容还是添加新虚拟磁盘情况分析我的虚拟机原有磁盘位于旧的Datastore A上新建的Datastore B是独立的。VMware不支持直接将一个虚拟磁盘跨两个数据存储进行扩展。因此我有两个选择 A. 将虚拟机整个迁移到新数据存储Storage vMotion然后在原虚拟磁盘上扩容。这需要vCenter标准版许可且迁移期间对性能有轻微影响。 B. 直接为虚拟机添加一块新的虚拟硬盘并指定存放在新的Datastore B上。这样操作最简单无需迁移。我选择了方案B因为我的目的是增加空间而不是移动数据。添加新盘对业务影响最小。关闭虚拟机为了保险起见我选择在业务维护窗口关闭目标虚拟机。虽然热添加虚拟磁盘通常没问题但涉及磁盘控制器类型变更时关机操作更稳妥。编辑虚拟机设置右键点击虚拟机 - “编辑设置”。点击“添加新设备” - “硬盘”。关键配置大小输入需要的容量例如1024 GB。位置在下拉菜单中务必选择我们新建的R740_SAS_1.2TB_New数据存储。这是将空间从新物理磁盘分配给虚拟机的关键一步。磁盘置备选择“厚置备延迟置零”。这与原有磁盘策略保持一致在性能和空间占用间取得平衡。“精简置备”虽然节省空间但可能引入性能波动对于数据库盘我倾向于避免。虚拟设备节点系统会自动分配一个空闲的SCSI控制器和ID如SCSI(0:1)。确保新磁盘的控制器类型LSI Logic SAS或VMware Paravirtual与原有磁盘一致除非有特殊优化考虑。开机并进入操作系统启动虚拟机登录系统我的是Windows Server 2019。操作系统内磁盘管理打开“磁盘管理”diskmgmt.msc。你会发现一块“未初始化”的新磁盘磁盘1。初始化它选择GPT分区表对于大于2TB的磁盘GPT是必须的。初始化后磁盘显示为“未分配”空间。右键点击 - “新建简单卷”按照向导分配驱动器号、格式化NTFS分配单元大小默认4KB即可并设置一个卷标以便识别。应用层配置最后根据数据库软件的要求将这个新的驱动器比如E盘配置为数据库日志文件或数据文件的新存储路径。至此从物理插盘到虚拟机应用层可用的完整链路已经打通。5. 性能验证、监控与后续优化建议扩容完成不是终点验证其稳定性和性能并纳入监控体系同样重要。5.1 基础性能验证我使用了一些简单的工具进行快速验证在ESXi层面通过SSH连接到主机使用esxtop命令查看新数据存储对应的设备如naa.xxxx的磁盘延迟DAVG/cmd、队列深度等指标在虚拟机进行大文件拷贝时观察是否正常。在虚拟机内部使用CrystalDiskMark或fioLinux进行简单的顺序读写和随机读写测试确保性能符合SAS 10K磁盘的预期顺序读写应在200MB/s左右或更高随机4K IOPS在数百级别。将结果与原有磁盘进行对比确保没有异常偏低。5.2 配置监控与告警空间问题解决了但要防患于未然vCenter告警在vCenter中为新数据存储设置“空间使用率”告警例如超过80%时触发警告超过90%时触发严重警报。操作系统监控在虚拟机内部使用操作系统自带的性能监视器或部署的监控代理如Zabbix Agent监控新磁盘分区的使用率、读写延迟和IOPS。硬件健康监控确保iDRAC的SNMP或SMTP告警功能已启用能及时报告磁盘预测性故障如介质错误率升高、坏块增长。5.3 常见问题与排查技巧实录在这次及以往的操作中我总结了一些典型问题问题1ESXi重新扫描后看不到新磁盘。排查思路首先回iDRAC确认虚拟磁盘是否创建成功状态是否为“Optimal”。在ESXi的“存储适配器”中检查对应HBA适配器的状态是否为“在线”并尝试“重新扫描”多次。通过SSH登录ESXi使用命令ls /vmfs/devices/disks/查看原始设备。如果这里也看不到naa.xxx设备问题可能出在驱动或阵列卡配置。检查ESXi主机是否安装了对应Dell定制镜像中的驱动包如dell-esxi-dellVIB。有时非Dell提供的ESXi镜像可能缺少最佳驱动。解决我遇到过一次是因为PERC卡固件版本较旧。通过iDRAC将PERC卡固件升级到Dell为ESXi 7.0认证的最新版本后重新扫描即识别。问题2创建VMFS数据存储时失败提示“设备已有分区表”。原因这块磁盘可能之前在其他系统上使用过留有旧的分区信息。VMFS格式化需要空白设备。解决这是一个危险操作务必确认设备无误通过ESXi SSH使用partedUtil命令清除分区表。例如假设设备是naa.600508e000000000abcdef1234567890partedUtil getptbl /vmfs/devices/disks/naa.600508e000000000abcdef1234567890 # 先查看现有分区 partedUtil delete /vmfs/devices/disks/naa.600508e000000000abcdef1234567890 1 # 删除分区如果有多个分区需依次删除 partedUtil mklabel /vmfs/devices/disks/naa.600508e000000000abcdef1234567890 gpt # 创建新的GPT标签清空执行完毕后再回到图形界面尝试创建数据存储。问题3虚拟机添加新硬盘后操作系统内无法识别。排查检查虚拟机设置确认硬盘已成功添加且控制器类型正确。在虚拟机开机时进入BIOS/EFI设置查看是否检测到新硬盘。对于Windows检查“磁盘管理”中是否提示需要“初始化磁盘”对于Linux检查dmesg | grep SCSI或lsblk命令输出。可能是SCSI控制器驱动问题。确保虚拟机内安装了VMware Tools它包含了必要的存储控制器驱动。解决我遇到过一次Windows Server 2016的案例原因是SCSI控制器类型为“LSI Logic SAS”而系统默认驱动有时不稳定。在编辑虚拟机设置中将控制器类型改为“VMware Paravirtual”并确保VMware Tools为最新版重启后问题解决。问题4磁盘性能远低于预期。排查在iDRAC中检查虚拟磁盘的缓存策略是否为“WriteBack”读策略是否为“ReadAhead”。检查ESXi主机上该数据存储的路径策略默认为“最近使用”的MRU对于活动-活动阵列卡改为“循环”RR可能提升多路径性能。在虚拟机内部确认磁盘分区对齐对于4K高级格式磁盘分区起始于1MB边界是良好实践。观察ESXi主机整体CPU和内存使用率资源瓶颈会间接影响存储IO。使用esxtop观察该设备的“%DRPT”设备读取时间百分比和“%DWPT”设备写入时间百分比如果持续很高说明磁盘本身繁忙可能是性能上限或存在瓶颈。6. 深入思考关于存储架构与未来规划的延伸完成一次扩容后不妨跳出来看看整体的存储架构。这次我选择了新增独立数据存储的方式它简单快捷但也会带来存储碎片化的问题。长期来看如果服务器需要频繁扩容数据存储数量会越来越多管理复杂度上升。对于未来可以考虑更长期的规划使用vSAN如果有多台ESXi主机可以考虑构建vSAN集群将本地磁盘聚合为一个分布式存储池扩容和存储策略管理会灵活得多。对接外部存储对于核心生产环境将存储从服务器本地剥离使用专用的SAN如Dell PowerStore或NAS设备通过光纤通道或iSCSI提供给ESXi集群。这样存储的扩容、性能提升和高可用都将由专业存储设备负责与计算资源解耦。存储策略与服务等级在vSphere中可以利用Storage Policy-Based Management (SPBM)来定义存储策略如磁盘类型、RAID级别、副本数量在创建虚拟机磁盘时直接应用实现存储的自动化服务等级交付。这次对Dell R740的磁盘扩容是一次非常典型的企业级运维操作。它串联起了硬件管理iDRAC、存储配置PERC、虚拟化平台ESXi和客户机操作系统多个层面。每一个环节的细致检查和理解都是确保操作平滑、业务不受影响的关键。尤其是在配置阵列和选择存储策略时没有“最好”的方案只有最“适合”当前业务场景和风险承受能力的方案。把这次过程中的检查清单、命令和排查思路保存下来下次再遇到类似任务效率至少能提升一倍。