在我们的 Powershell 部署脚本中,我们终止了由以下查询标识的飞行中的实例:
get-wmiobject -namespace Root\MicrosoftBizTalkServer -query "SELECT * FROM MSBTS_ServiceInstance WHERE (ServiceClass = 1 OR ServiceClass = 64) AND AssemblyName LIKE 'Our.AssemblyName'"
由于某种原因,这已停止在 Windows 2016 服务器上运行,并显示以下消息:
get-wmiobject : An internal failure occurred for unknown reasons.
At line:1 char:1
+ get-wmiobject -namespace Root\MicrosoftBizTalkServer -query "SELECT * ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Get-WmiObject], COMException
+ FullyQualifiedErrorId : GetWMICOMException,Microsoft.PowerShell.Commands.GetWmiObjectCommand
一些搜索指向最近的操作系统安全补丁。我们从所有节点卸载了提到的 KB。
上述查询在一个环境中的 2 个节点和另一个环境中的 1 个节点上运行而没有失败。这一个框仍然给出上述错误。不知道是什么导致了最初的问题,但也许卸载没有正确清理。
任何想法从哪里开始寻找解决问题?我在想也许再次安装补丁并卸载它以确保它正确清理。卸载后虚拟机启动大约需要 4 小时,因此测试这些理论需要很长时间。