我有一个5节点的Hyper-V群集正在运行。
所有5台服务器都运行Server 2012 R2,每个节点使用iSCSI连接两台设备。 我遇到问题的设备有一个用作CSV的单个卷。 这是提供给c:\clusterstorage\volume2
下的服务器
我已经完成将所有虚拟机存储移动到新设备上的过程,新的CSV已启动并正在运行,并且已连接节点。 新设备的一切工作正常。
然后,我尝试通过执行以下操作将旧设备作为共享存储设备删除。 我使用PowerShell获取群集上的所有VHD的path,没有指向c:\clusterstorage\volume2
我检查了configurationpath没有指向c:\clusterstorage\volume2
我也检查了快照path没有指向c:\clusterstorage\volume2
我开始删除4个节点上的iSCSI目标(4个存储资源目前没有“分配”),这是成功的。 然后我去了故障转移群集pipe理器并将CSV设置为脱机。 2个虚拟机立即进入保存状态(幸运的是不是关键的服务器)。 我将资源重新联机并启动机器。 我检查了每个虚拟机的设置页面,也没有提到c:\clusterstorage\volume2\
。 然后我去查找configuration文件只是为了手动确保他们和设置页面之间没有什么不同。 我首先查看了c:\clusterstorage\volume2\
这个虚拟机的文件夹不在这里。 我查看了新的位置c:\clusterstorage\volume5\
和c:\clusterstorage\volume6\
每个虚拟机的文件夹都在这里。 我检查了configuration文件,他们是完全一样的,没有包含任何对c:\clusterstorage\volume2\
我检查了C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machines
,每个虚拟机指向新的卷位置的快捷方式。
总之,没有什么我可以find指向c:\clusterstorage\volume2\
但如果我离线CSV这两台机器进入保存状态。
即使是陌生人,我在写这个时再试一次,是的,两台机器进入保存状态,但即使CSV保持离线状态,我仍能够再次启动它们。 我现在有两个虚拟机在每个存储资源选项卡显示为脱机,但他们正在'工作'
所以任何人都可以指出我可能的解决办法,也许我没有find一个configuration文件? 或者,我的最佳做法是在保留VHD的同时删除VM并创build一个新的VM并附加原始的VHD。
对不起,墙上的文字。
在2012 R2中,我对Hyper-V没有多less经验,但是在2008 R2上确实有很多Hyper-V,Clusters等等,所以会猜测这里可能存在的问题。
我发现使用故障转移群集(在2008 R2)将VM添加到故障转移群集时,它将检查连接的VHD以及它们所在的存储,并在群集configuration中logging此信息,以便它们可以显示为故障切换群集pipe理器中的相关资源(在select虚拟机时,在“存储”窗格中)。
这并不一定反映VHD文件的当前位置 – 如果自从将VM添加到故障转移群集之后将它们移到Hyper-V中,则不会更新相关性信息。 所以你可能有一个虚拟机可以很好地访问它的磁盘,但是故障转移集群认为它仍然依赖于你正在删除的磁盘。 当你离线磁盘时,它将离开虚拟机作为一个合乎逻辑的结果。 为了解决这个问题(假设这是问题所在 – 查看FCM中虚拟机的存储面板),从集群中删除虚拟机并重新添加。
顺便说一句,作为一个最佳实践,我通常不会开始拆除任何iSCSI连接,然后再从FCM中删除CSV。