RestartManager导致辅助角色重新启动

时间:2016-02-02 11:57:52

标签: wcf azure azure-worker-roles restartmanager

最近我们遇到了Azure Worker Role服务几乎每天都重启的问题。这对我们来说是一个巨大的问题,因为我们的服务需要大约20分钟来初始化,这些重启会导致停机 我通过RDP登录到实例并查看事件日志以找出导致这些看似随机重启的原因。我遇到了一些总是在重启之前的条目:

enter image description here

MsiInstaller安装的服务是" Windows Azure Remote Forwarder"。我假设此服务已安装,因为我们在worker角色配置中启用了远程桌面。有趣的是,我们长时间启用RDP(2年左右),但随机重启仅在4周前发生。
但有一些事情比我不太明白:

  1. 为什么这项服务经常安装或更新?
  2. 我知道RestartManager负责安装/更新服务,而不必通过停止阻止文件的其他服务来重启机器。
    我们的服务是否可能阻止某些重要文件? 我们将本地磁盘存储用于临时文件会不会成为问题?
  3. 是否可以告诉RestartManager单独留下我们的Worker Role服务?
  4. 这只是巧合,重启是由我们的服务以某种方式触发的,虽然没有日志表明我们这边有错误吗?
  5. 非常感谢任何帮助。

    谢谢,
    卡斯滕

1 个答案:

答案 0 :(得分:1)

  

自我修复 :您看到的很可能是Windows Installer的自我修复。如果文件被意外修改,这是一种将文件放回原处的机制,但是此原始目的可能会引发很多问题并导致无休止的修复循环-这可能就是这里发生的情况。 Very likely another product has been installed and an un-fixable error situation now exists that triggers continued and failed attempts to repair via MSI self-repair. The conflict situation must be identified with logging and event viewer debugging and a suitable fix has to be applied real-world fixes)。

     

Terse解释 :以下是关于自我修复或“复原力”真正含义的最简洁的解释:    Why does the MSI installer reconfigure if I delete a file?

重启管理器 Restart Manager feature是-正如您自己说的(其他人可能会读到的)-只是安装程序重启应用程序的一种方法,而无需通过“使应用程序能够自行关闭并以受控方式重新启动” 来重新启动系统。

默认MSI日志记录 :一个调试起点是log all your MSI operations properly-每次安装,重新安装或修复时,temp目录中都会有一个日志文件(某些系统管理员并不总是可以接受的)。您可以按照上面链接的 "Globally for all setups on a machine" 部分中的过程启用所有MSI安装的日志记录。


详细的自我修复 :我之前写过很多关于意外的自我修复的文章。比任何人都想知道的更多。这是一个非常愚蠢的问题,由于很少有人熟悉Windows Installer的操作,因此确实导致解决了非常昂贵的问题:

  1. Self-repair - explained
  2. Self-repair - finding real-world solutions
  3. Self-repair - how to avoid it in your own package

调试 :上面的答案提供了以下所有信息,但是这里有一些快速提示:

  • 您可以使用以下方法确定触发维修的确切MSI组件:http://www.installsite.org/pages/en/msifaq/a/1037.htm
  • 打开事件查看器,并在“应用程序” 中查找事件源为 "MsiInstaller" 的警告:ID为 { {1}} 1001
  • 最近安装的另一个软件包可能会引发持续的错误情况,在维修期间无法永久解决该错误情况,因此您必须确定来源并以某种方式消除它。上面的第二个链接(在此处重复:finding real-world solutions)。

待重新启动 :该计算机多长时间重启一次?许多计算机注册了许多待完成的重启,这些重启从未完成,并且可能导致问题。触发重新启动(警告)可能涉及许多注册表位置。 Get-PendingReboot-Query。还有a similar PowerShell script

锁定问题 :只想提及some applications locking resources in a very low-level way的问题,例如防病毒恶意软件保护套件