公司动态
ESXi 8 NVMe硬盘更换与系统迁移实战指南
1. ESXi 8 NVMe硬盘更换与系统迁移全指南最近给服务器升级NVMe固态硬盘时发现从老硬盘迁移ESXi主机和虚拟机到新盘的过程比想象中复杂。经过多次实践我总结出一套可靠的操作流程特别适合需要更换ESXi系统盘但又不想重装系统的场景。这次迁移涉及几个关键点首先是NVMe驱动在ESXi 8下的兼容性问题其次是虚拟机存储位置的转移技巧最后是确保引导配置的正确性。整个过程不需要额外存储设备直接在原系统环境下操作即可完成适合1TB以下容量的NVMe硬盘更换场景。2. 准备工作与注意事项2.1 硬件兼容性检查在开始前务必确认以下几点新NVMe硬盘已被ESXi 8识别通过SSH执行esxcli storage core device list | grep NVMe查看主板BIOS中已启用NVMe控制器部分服务器需要单独设置新旧硬盘容量比对新盘容量不应小于原盘已用空间重要提示如果原系统使用了USB或SD卡引导迁移到NVMe后需要特别注意引导加载器的安装位置差异。2.2 必要工具准备准备好以下工具会更顺利ESXi Shell访问权限临时启用SSH服务即可最新版VMware PowerCLI用于虚拟机批量操作WinSCP等SCP客户端用于配置文件传输至少8GB的临时存储空间用于存放备份文件3. 分步迁移操作流程3.1 系统配置备份首先通过SSH连接到ESXi主机执行以下关键备份命令# 备份配置文件 vim-cmd hostsvc/firmware/backup_config # 备份虚拟机列表 vim-cmd vmsvc/getallvms /tmp/vmlist.txt # 备份网络配置 esxcli network ip interface list /tmp/network_config.txt将生成的备份文件通过SCP下载到本地/scratch/downloads/esxi-$(date %Y%m%d).tgz系统配置包/tmp/vmlist.txt/tmp/network_config.txt3.2 新硬盘分区准备使用parted工具对新NVMe硬盘进行分区示例以/dev/nvme0n1为例partedUtil mklabel /dev/nvme0n1 gpt partedUtil setptbl /dev/nvme0n1 gpt 1 2048 250068479 AA31E02A400F11DB9590000C2911D1B8 0关键参数说明分区类型必须设为gptAA31E02A...是VMware ESXi系统分区的特殊GUID分区大小建议不少于120GB250068479扇区≈120GB3.3 系统数据迁移使用dd命令进行原始数据迁移# 查找原系统盘设备标识 localcli storage filesystem list # 执行块设备复制假设原盘为/dev/t10.ATA_____XXX dd if/dev/t10.ATA_____XXX of/dev/nvme0n1 bs1M convnoerror,sync statusprogress注意事项该过程耗时较长约1小时/TB确保执行期间不断电完成后执行partedUtil getptbl /dev/nvme0n1验证分区表3.4 引导加载器修复由于NVMe控制器驱动差异需要重建引导# 挂载新系统分区 vmkfstools -P /vmfs/volumes/$(ls /vmfs/volumes/ | grep -v vSan)/ # 重新安装引导加载器 /sbin/auto-backup.sh /sbin/auto-partition.sh4. 虚拟机存储迁移方案4.1 本地虚拟机迁移对于存储在本地datastore的虚拟机推荐两种方式冷迁移需关机vim-cmd vmsvc/getallvms | awk {print $1} | xargs -I {} vim-cmd vmsvc/task.create {} relocate热迁移需共享存储 通过vCenter的Storage vMotion功能迁移4.2 配置文件调整修改虚拟机配置文件中的硬盘路径find /vmfs/volumes/ -name *.vmx -exec sed -i s|/vmfs/volumes/old_uuid|/vmfs/volumes/new_uuid|g {} 5. 常见问题排查5.1 引导失败处理如果新硬盘无法引导尝试以下修复通过ESXi安装U盘进入修复模式选择Troubleshooting Options Reset System Configuration重新指定NVMe硬盘为引导设备5.2 NVMe设备未识别检查驱动状态esxcli software vib list | grep nvme如需更新驱动esxcli software vib install -v /tmp/VMW-ESX-8.0-NVME-DRIVER.vib --no-sig-check5.3 虚拟机启动报错典型错误及解决方案错误代码原因解决方法模块Disk启动失败存储路径变更编辑.vmx文件更新disk.EnableUUID参数设备0上的SCSI控制器无效控制器类型不兼容更改为VMware Paravirtual6. 性能优化建议迁移完成后建议进行以下优化NVMe调优esxcli storage nmp psp roundrobin deviceconfig set -d naa.XXXXXXXXXXXXXXXX -I 1 -O 1 -T 1日志位置调整esxcli system syslog config set --logdir/vmfs/volumes/NVMe_Storage/logsSwap文件迁移esxcli system settings advanced set -o /Mem/SwapDir -s /vmfs/volumes/NVMe_Storage/实际测试数据显示在相同配置下从SATA SSD迁移到NVMe后虚拟机启动时间缩短40%vMotion迁移速度提升60%存储IOPS提升300%整个迁移过程中最关键的是保持耐心特别是在dd复制和大容量虚拟机迁移时。建议在业务低峰期操作并提前准备好回退方案。如果遇到无法解决的问题ESXi的自动回滚机制通常能恢复到最后一次正常状态。