2016-07-12 70 views
0

过去两个月我一直致力于Hyper-V故障转移群集,并且还使用了实时迁移功能和故障转移的其他方面关于其特征的集群。现在我的帖子的重点是,是否有任何一种编程方式(可以是powershell脚本或C++ API)来确定虚拟机的故障转移或故障恢复历史记录(在虚拟机已移动的所有节点中)。根据我的分析,我发现这些与迁移有关的活动将在事件查看器中使用EventID和必要的详细信息。但我的担心是通过powershell或C++ API具有相同的功能。任何帮助,高度赞赏。如何跟踪Hyper-V故障转移群集中虚拟机的故障转移历史记录

问候,
迪内希Ramalingam

回答

0

我不知道关于推动跟踪此事件的任何东西。在过去,我使用SQL Server来查询虚拟机的注册表以获取当前主机,然后将其存储在本地日志表中。然后安排这个建立一个历史记录并随着时间的推移跟踪虚拟机的移动。

如果虚拟机的运行SQL Server做这样的事情:

DECLARE @PhysicalHostName VARCHAR(20) 

EXEC master..xp_regread 
    @rootKey = 'HKEY_LOCAL_MACHINE', 
    @key = 'SOFTWARE\Microsoft\Virtual Machine\Guest\Parameters', 
    @value_name = 'PhysicalHostName', 
    @value = @PhysicalHostName OUTPUT 

SELECT 
    @PhysicalHostName 

如果使用SQL Server不是肯定的PowerShell可以用来使用Get-ItemProperty cmdlet来打注册表的选项。

像这样:

Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Virtual Machine\Guest\Parameters" -Name PhysicalHostName 

如果你有下PowerShell的路线,这是值得一读:https://msdn.microsoft.com/en-us/powershell/scripting/getting-started/cookbooks/working-with-registry-entries

希望这有助于。

+0

感谢您的答复。我们可以安排进程定期查找当前所有者节点,但问题是,如果虚拟机在下一个计划前往返迁移,该怎么办?还有,如果我执行在一个节点中指定的进程,以及该节点何时关闭,该怎么办?我将失去跟踪记录 –

+0

执行实时迁移时,我能够在虚拟机的事件查看器中获取事件详细信息,但无法在事件查看器中获取事件详细信息以进行快速迁移。为什么? –