在客户站点,我们有 2 个(+1 个备份和测试)ESXi 服务器,独立工作(没有 vSphere)。客户要求用 2TB SSD RAID 替换 500GB SSD RAID。
ESXi 安装在该 SSD RAID 上。我们使用第三台服务器(测试服务器)来测试我们的工作流程,如下所述:https://kb.vmware.com/s/article/2002461
我们将原始 raid DD 到新 raid,因此我们有原始硬盘的精确副本。
我们成功启动了 ESXi。它丢失了数据存储的挂载,但 esxcfg-volume -M 成功了。所以一切都恢复正常了。
现在我们尝试调整包含数据存储的分区和文件系统的大小。
vmkfstools -P /vmfs/volumes/datastore1
在本例中给了我们名称和分区
naa.600605b00e7ef41025b05be20a1ac269:3
partedUtil get /vmfs/devices/disks/naa.600605b00e7ef41025b05be20a1ac269
回
243133 255 63 3905945600 1 64 8191 0 128 5 8224 520191 0 0 6 520224 1032191 0 0 7 1032224 1257471 0 0 8 1257504 1843199 0 0 9 1843200 7086079 0 0 2 7086080 15472639 0 0 3 15472640 975699934 0 0
partedUtil getUsableSectors /vmfs/devices/disks/naa.600605b00e7ef41025b05be20a1ac
回
34 3905945566
所以我们做到了
partedUtil resize /vmfs/devices/disks/naa.600605b00e7ef41025b05be20a1ac269 3 15472640 3905945566
并且符合知识库的预期
partedUtil fixGpt /vmfs/devices/disks/naa.600605b00e7ef41025b05be20a1ac269
获取分区表的备份
再次检查一切,一切看起来都很好,符合预期。我们有一个工作正常的硬盘,其分区已增大,ESXi 仍按预期报告 ~500GB SSD,因为最后一步是调整 vmfs 的大小。
vmkfstools --growfs /vmfs/devices/disks/naa.600605b00e7ef41025b05be20a1ac269:3 /vmfs/devices/disks/naa.600605b00e7ef41025b05be20a1ac269:3
返回此:
Not found Error: No such file or directory
这是我们不知道问题所在的地方。我们三次检查了路径,我们改用 /dev/disks,我们用 CD 进入目录并使用没有绝对路径的文件等。没有不同的输出。我们尝试使用“和 ',但我不认为会出现问题:
我们检查了临时分区上的日志,但没有找到原因。
我在网上搜索了大约一个小时,但我找到的唯一帮助要么没有回复,要么引用了知识库并提示他/她在某个地方犯了错误。
所以我们再次仔细检查了所有操作,我找不到任何可能犯的错误。本质上,这与任何其他 Linux 系统的工作流程相同 -> DD、调整分区大小、调整 FS 大小(卸载)。
(是的,我们也尝试过安装和卸载它)
如果您发现我没发现的任何错误,请告诉我。如果您需要任何信息,请直接询问。
如果此案例成功,则 2 个实时服务器需要在大约 2 周内跟进。但我需要确保该过程按预期进行。
感谢您的帮助并祝您有愉快的一天。
答案1
Reddit 上的完整帖子在此分享重要内容:
如果vmkfstools --growfs "/vmfs/devices/disks/devicename:partition#" "/vmfs/devices/disks/devicename:partition#"
显示“未找到”,则表示该分区上的 vmfs 卷 UUID 不匹配。至于为什么会这样,谁也不知道,但解决方法是重新签名该卷。
为了做到这一点,您必须移动/取消注册数据存储上的所有虚拟机并卸载数据存储。我不知道如何从 CLI 执行此操作,所以我只使用了 GUI。
[编辑] 命令是:esxcli storage filesystem unmount [-uUUID | -l label | -p path ]
卸载数据存储后,esxcfg-volume --list
验证您的 UUID/标签。
esxcfg-volume --resignature <VMFS UUID|label>
重新签名
vmkfstools -V
vmkfstools --growfs "/vmfs/devices/disks/devicename:partition#" "/vmfs/devices/disks/devicename:partition#"