虚拟桌面管理

Microsoft.Windows.Server.10.0.RemoteDesktopServices.NewUnitMonitor_5 (UnitMonitor)

此对象监视虚拟桌面的管理。

Knowledge Base article:

摘要

分配为个人虚拟桌面或分配给虚拟桌面池的虚拟桌面使用 Hyper-V 管理器进行管理。

解决方案

若要解决此问题,请检查事件 ID,然后在下面的内容中查看有关该事件的疑难解答信息。

适用于下列事件 ID 的解决步骤: 4878

您可以使用 Hyper-V 管理器确保虚拟桌面存在。

要执行此过程,您必须是 Administrators 组的成员,或者被委派了适当的权限。

若要确保虚拟桌面存在,请执行以下操作:

1. 在 RD 虚拟化主机服务器上,打开 Hyper-V 管理器。要打开 Hyper-V 管理器,请单击“开始”,指向“管理工具”,然后单击“Hyper-V 管理器”。

2. 在左窗格中,单击 RD 虚拟化主机服务器。

3. 在“虚拟机”下,请确保存在虚拟桌面。

适用于以下事件 ID 的解决步骤:4608

若要确定如何修复此错误状态,请检查事件消息文本中报告的错误代码。

事件消息可能报告下列错误代码:

要执行这些过程,您必须是 Administrators 组的成员,或者被委派了适当的权限。

RPC_S_SERVER_UNAVAILABLE (800706ba)

若要解决此问题,您应该启用远程 RPC 并确保允许远程服务管理通过 Windows 防火墙。

若要启用远程 RPC,请执行以下操作:

1. 在虚拟桌面计算机上,打开注册表编辑器。要打开注册表编辑器,请依次单击“开始”、“运行”,键入 regedit.exe,然后按 ENTER。

2. 导航到 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer。

3. 双击“AllowRemoteRPC”注册表项;在“值数据”框中键入 1,然后单击“确定”。

4. 关闭注册表编辑器。

5. 如果这不能解决问题,请使用名为“确保允许远程服务管理通过 Windows 防火墙”的过程。

可以使用 Windows 防火墙控制台允许远程服务管理通过 Windows 防火墙。

若要确保允许远程服务管理通过 Windows 防火墙,请执行以下操作:

1. 在虚拟桌面计算机上,打开 Windows 防火墙控制台。若要打开 Windows 防火墙控制台,请依次单击“开始”、“控制面板”、“系统和安全”和“允许程序通过 Windows 防火墙”。

2. 选中“远程服务管理”复选框,然后单击“确定”。

E_ACCESSDENIED (8007005)

若要解决此问题,您应该启用远程桌面,向虚拟桌面的 Remote Desktop Users 安全组中添加相应的用户帐户,然后添加相应的 RDP 协议权限。

若要启用远程桌面,请执行以下操作:

1. 在虚拟桌面上,打开“系统”控制面板。若要打开“系统”控制面板,请单击“开始”,右键单击“计算机”,然后单击“属性”。

2. 单击“远程设置”。

3. 单击以下选项之一:

4. 如果您想强制执行网络级别身份验证,请单击“只允许运行带网络级身份验证的远程桌面的计算机连接(更安全)”选项。

5. 如果您不想强制执行网络级别身份验证,单击“允许运行任意版本远程桌面的计算机连接(较不安全)”选项。

6. 单击“确定” 以关闭“系统属性”对话框。

7. 如果问题没有得到解决,请使用名为“向虚拟桌面的 Remote Desktop Users 安全组中添加相应的用户帐户”的过程。

您可以使用“本地用户和组”控制台向 Remote Desktop Users 安全组中添加用户帐户。

若要向虚拟桌面的 Remote Desktop Users 安全组中添加相应的用户帐户,请执行以下操作:

1. 在虚拟桌面上,单击“开始”,键入 lusrmgr.msc,然后按 ENTER。

2. 单击“”。

3. 右键单击“Remote Desktop Users”,然后单击“添加到组”。

4. 单击“添加”。

5. 在“选择用户、计算机、服务帐户或组”对话框的“输入要选择的对象名称”框中,键入用户帐户的名称,然后单击“确定”。

6. 单击“确定”以关闭“Remote Desktop Users 属性”对话框。

7. 如果问题没有得到解决,请使用名为“添加相应的 RDP 协议权限”的过程。

您必须使用提升的命令提示符添加相应的 RDP 协议权限。

若要添加相应的 RDP 协议权限,请执行以下操作:

1. 在虚拟桌面上,打开提升的命令提示符。若要打开提升的命令提示符,依次单击“开始”、“所有程序”和“附件”,右键单击“命令提示符”,然后单击“以管理员身份运行”。

适用于下列事件 ID 的解决步骤:4877

仅当使用脚本配置虚拟桌面的 SaveDelay 属性时才会发生此问题。确保已正确配置脚本,然后尝试重新运行脚本。

适用于下列事件 ID 的解决步骤:4876

仅当使用脚本配置虚拟桌面的 GuestOSEnlightened 属性时才会发生此问题。确保已正确配置脚本,然后尝试重新运行脚本。

适用于下列事件 ID 的解决步骤: 4872

若要解决此问题,请执行以下操作:

要执行这些过程,您必须是 Administrators 组的成员,或者被委派了适当的权限。

重新启动Remote Desktop Connection Broker 服务

可以使用“服务”控制台重新启动Remote Desktop Connection Broker 服务。

若要重新启动Remote Desktop Connection Broker 服务,请执行以下操作:

1. 在 RD 连接 Broker 服务器上,单击“开始”, 指向“管理工具”,然后单击“服务”

2. 右键单击“Remote Desktop Connection Broker”,指向“所有任务”,然后单击“重新启动”

重新启动Remote Desktop Virtualization Host Agent服务

可以使用“服务”控制台重新启动Remote Desktop Virtualization Host Agent服务。

若要重新启动Remote Desktop Virtualization Host Agent服务,请执行以下操作:

1. 在 RD 虚拟化主机服务器上,单击“开始”,指向“管理工具”,然后单击“服务”。

2. 右键单击“Remote Desktop Virtualization Host Agent”,指向“所有任务”,然后单击“重新启动”。

适用于下列事件 ID 的解决步骤: 4875

仅当使用脚本配置虚拟桌面的 Exclude 属性时才会发生此问题。Exclude 属性必须设置为 True 或 False。

适用于下列事件 ID 的解决步骤:4868、4869

如果将“SaveDelay”属性设置为 True,但 Hyper-V 无法保存虚拟桌面,则会出现该问题。

使用 Hyper-V 疑难解答过程进一步诊断问题 ( http://technet.microsoft.com/en-us/library/dd578337(WS.10).aspx)。

Element properties:

TargetMicrosoft.Windows.Server.10.0.RemoteDesktopServicesRole.Service.RDVirtualizationHost
Parent MonitorSystem.Health.AvailabilityState
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityHigh
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLogManualReset3StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
虚拟桌面管理警报
事件 ID:{0} -- 描述:{1}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.10.0.RemoteDesktopServices.NewUnitMonitor_5" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.Server.10.0.RemoteDesktopServicesRole.Service.RDVirtualizationHost" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLogManualReset3StateMonitorType" ConfirmDelivery="true">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.10.0.RemoteDesktopServices.NewUnitMonitor_5_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>High</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDisplayNumber$</AlertParameter1>
<AlertParameter2>$Data/Context/EventDescription$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UIGeneratedOpStateIdbed6c28efd2e425dacd10c9e9624fd52" MonitorTypeStateID="ManualResetEventRaised" HealthState="Success"/>
<OperationalState ID="UIGeneratedOpStateId8fd6efab9e3847ff84f0269a577c05b6" MonitorTypeStateID="SecondEventRaised" HealthState="Warning"/>
<OperationalState ID="UIGeneratedOpStateIdde6a0bfc4a4348b8bc38d122e2376144" MonitorTypeStateID="FirstEventRaised" HealthState="Error"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>Microsoft-Windows-TerminalServices-TSV-VmHostAgent/Admin</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Channel</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-TerminalServices-TSV-VmHostAgent/Admin</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4872</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4868</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4875</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4874</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4876</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4877</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4873</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4878</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4869</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>Microsoft-Windows-TerminalServices-TSV-VmHostAgent/Admin</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">4608</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Channel</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-TerminalServices-TSV-VmHostAgent/Admin</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>