0

假设我有以下情况。我的一个Azure角色实例恰好在运行在故障服务器内的虚拟机上启动,但Azure接线过程没有发现任何问题。我以某种方式推论出这个事实 - 例如,我看到一个“不可能”的调用堆栈 - 在任何正常情况下,我的程序都不会发生这种情况。如果我决定VM发生故障,我该如何让Azure移动我的实例?

所以我希望Azure将我的实例移动到另一个虚拟机并检查和修复底层硬件。

除联系支持外,我该怎么做?

回答

2

我不认为你可以移动虚拟机。但是您可以创建一个新的分段部署,将其交换到生产环境中,然后销毁旧的部署。你实际上不能保证虚拟机在不同的物理机器上,但它似乎是合理的。虚拟机越大,它们更可能位于不同的服务器上。

这就是说,你的问题似乎不太可能是由于硬件故障而不是一些微妙的错误。

3

几点意见:

  1. 你可以有这个工作,sortof,通过调用支持。支持小组不会将您的虚拟机迁移到新的服务器,只是因为您问了,但他们会与您一起确定物理服务器是否真的不好,如果是这样,将其移出服务。
  2. RequestRecycle将仅关闭主机进程(即WaIISHost)和相关进程,然后重新启动它们。它不会重新启动虚拟机,干净启动或重新部署。
  3. 如果您怀疑自己的Windows安装可能已损坏,则可以尝试从门户或Powershell执行'Reimage'。 Reimage会从头开始重新创建Windows分区。
  4. 为了强制新的虚拟机在新服务器上,您必须进行就地升级并修改虚拟机的大小(即从小到中)。这将导致在新服务器上创建新的虚拟机。然后,您可以执行其他就地升级以恢复原始大小。

这就是说,我非常同意Brian的评论,说坏的硬件不太可能导致“不可能”的调用堆栈。我会建议打开支持事件,以便找到实际的根本原因,而不是仅仅修复最明显的症状。

相关问题