Microsoft AZ-140: 监视、诊断和故障排除 — 学习指南
属于 Microsoft Azure Virtual Desktop Specialty AZ-140 — 学习指南. 使用经过验证的答案练习: Microsoft 考试中心, 或参加限时模拟考试: ExamRoll.io.
运维分析与故障排查技术
工作簿与仪表板
- 使用 AVD Insights 工作簿获取精心策划的概览:连接成功/失败率、会话分布、主机注册状态以及会话主机性能。为业务部门或主机池创建自定义工作簿,其中包含与 SLA 对齐的关键性能指标(例如,首次故障检测时间、登录持续时间代理指标、会话密度)。
用于常见调查的 Kusto 查询
- 按阶段和消息分类的连接失败:
AzureDiagnostics
| where Category == "Connection"
| extend p = parse_json(Properties)
| summarize Attempts = count(), Failures = countif(tostring(p.Status) != "Success")
by FailureStage = tostring(p.FailureStage),
FailureMessage = tostring(p.FailureMessage)
| order by Failures desc
- 每台主机的会话计数与容量压力:
Perf
| where ObjectName == "Terminal Services" and CounterName in ("Active Sessions","Total Sessions")
| summarize Avg=count(), AvgValue=avg(CounterValue) by bin(TimeGenerated, 5m), Computer, CounterName
- 代理注册健康状况:
AzureDiagnostics
| where Category == "HostRegistration"
| extend p = parse_json(Properties)
| summarize Latest = arg_max(TimeGenerated, tostring(p.RegistrationState), tostring(p.Details))
by ResourceId
| where Latest_RegistrationState != "Registered"
- 高 CPU 使用率检测:
Perf
| where ObjectName == "Processor" and CounterName == "% Processor Time" and InstanceName == "_Total"
| summarize AvgCPU = avg(CounterValue) by Computer, bin(TimeGenerated, 5m)
| where AvgCPU > 85
- FSLogix 错误:
Event
| where Source == "Microsoft-FSLogix-Apps"
| project TimeGenerated, Computer, EventID, RenderedDescription
| order by TimeGenerated desc
连接诊断与常见客户端问题
- 需要验证的阶段:
- 源发现:工作区检索需要互联网访问和成功的 Azure AD 身份验证。条件访问或时间偏差可能会阻止令牌获取;请验证设备符合性策略和 NTP 同步。
- 中转站和网关协商:确保防火墙和代理允许出站 TCP 443 流量访问 AVD 服务终结点。SSL 检查可能会破坏 WebSocket 连接;请将 AVD 终结点从拦截中豁免。
- RDP 传输:当为公共或托管网络启用 RDP Shortpath 时,请按设计允许 UDP 3390。如果被阻止,客户端将回退到 TCP,这可能会降低用户体验。
- 症状与原因:
- 频繁断开连接或视频质量差:UDP 被阻止或丢包率高;请验证 QoS 和 WAN 容量,并优先处理实时流量。
- “无可用资源”:主机注册失败或容量耗尽;请确认代理健康状况和会话限制。
- 登录缓慢:配置文件容器附加延迟、GPO 处理或对配置文件路径进行防病毒实时扫描。
Windows 事件日志、远程桌面组件和 AVD 代理
- 关键服务:Remote Desktop Services (TermService)、Remote Desktop Services Infrastructure Agent (RdAgent) 和 Remote Desktop Agent Loader (RDAgentBootLoader)。
- 磁盘上的代理日志:C:\ProgramData\Microsoft\RDInfra\RDAgent\Logs 和 C:\ProgramData\Microsoft\RDInfra\RDAgentBootLoader\Logs。
- 相关事件通道:
- RdpCoreTS/Operational 用于传输和协议错误。
- TerminalServices-LocalSessionManager/Operational 用于会话生命周期。
- TerminalServices-RemoteConnectionManager/Operational 用于连接授权和中转。
- 排查代理注册问题:
- 验证 DNS、时间同步和出站 443 端口。
- 确保会话主机可以解析并访问 AVD 服务终结点。
- 如果主机是手动加入的且令牌已过期,请重新生成并应用一个当前的注册令牌。
FSLogix 日志与配置文件故障排查
- 日志:C:\ProgramData\FSLogix\Logs\Profile*.log 以及事件查看器中的 Microsoft-FSLogix-Apps。
- 常见故障模式:
- VHD(X) 上的访问被拒绝或共享冲突:修复共享和 NTFS ACLs;如果不允许多会话重叠,请确保每个用户配置文件只有一个活动会话。
- 磁盘已满或延迟峰值:监控存储容量和 IOPS。对于大型、IOPS 密集型环境,通常需要 Premium 或 Azure NetApp Files。
- Cloud Cache:检查 CCDLocations 和缓存驱动器容量;不稳定的 WAN 会增加登录时间。
- 最佳实践:
- 从防病毒软件的实时扫描中排除 VHD(X) 附加路径。
- 使用 redirections.xml 将大型易失性文件夹排除在配置文件容器之外。
- 为 Azure Files AD DS 身份验证验证 Kerberos;DNS 和 SPN 必须正确。
CPU、内存、磁盘和网络分析
- CPU:高 % Processor Time 且持续的 System\Processor Queue Length > 2 per vCPU 表明存在 CPU 争用。增加 vCPU 或降低会话密度。
- 内存:低的 Memory\Available MBytes 和高的分页活动 (Memory\Pages/sec) 会导致停顿;增加 RAM 或降低会话密度。关注重量级应用程序的提交限制和工作集。
- 磁盘:配置文件和临时路径上读/写的延迟阈值通常 < 5–10 毫秒;监控 LogicalDisk\Avg. Disk sec/Read 和 Write。存储类别不匹配表现为登录时间长和应用程序 I/O 迟缓。
- 网络:Network Interface\Bytes Total/sec 和 Output Queue Length 显示饱和。高的 TCP 重传和丢包会降低 RDP 质量;确认对 AVD 流量的 QoS 优先级设置。
主动式仪表板、警报和服务运行状况
- 仪表板:发布工作簿,显示每台主机的会话密度与配置的最大值对比、代理状态计数(已注册 vs. 未注册)、最常见的连接失败消息以及性能热图。
- 警报:
- 注册失败:
AzureDiagnostics
| where Category == "HostRegistration"
| extend p = parse_json(Properties)
| where tostring(p.RegistrationState) != "Registered"
- 容量压力(示例阈值:平均活动会话数在 10 分钟内与主机限制相差不到 1):
Perf
| where ObjectName == "Terminal Services" and CounterName == "Active Sessions"
| summarize AvgActive = avg(CounterValue) by Computer, bin(TimeGenerated, 10m)
| join kind=leftouter (
// Replace 20 with your per-host maximum sessions
datatable(Computer:string, MaxSessions:int) [
// Populate from CMDB or tag-driven mapping
]
) on Computer
| where AvgActive >= MaxSessions - 1
- 用户影响事件:当 AVD 连接属性中可用时,针对连接失败、FSLogix 附加错误或登录持续时间的激增触发警报。
- 资源争用:当 CPU 持续 > 85%、Memory\Available MBytes < 500 MB、Disk Avg. sec/Write 或 Read > 20 ms 时发出警报。
- 操作组:将警报路由到电子邮件、Teams、ITSM、Automation runbook 或 Functions,以进行自动缩放或修复。
- 服务运行状况:为 Azure Virtual Desktop、Storage、Azure Files、Azure NetApp Files 和 Azure AD 配置 Azure Service Health 警报,以便在用户发现之前了解可能影响登录、配置文件或会话的中断或维护。
实际问题场景
Adobe Inc. 报告称,在使用 FSLogix on Azure Files Premium 的池化 Windows 11 企业版多会话主机池中,高峰时段出现间歇性的 Azure Virtual Desktop 断开连接和登录时间过长的问题。
- 验证服务和网络先决条件
- 原因:排除任何主机修复都无法解决的外部原因。
- 操作:
- 检查 Azure Service Health,查看目标区域中是否存在影响 Desktop Virtualization 或 Storage 的事件。
- 确认分支机构防火墙允许出站 TCP 443 流量,并且不对 AVD 端点进行 SSL 检查;在适用情况下,验证是否允许 UDP 3390 以通过 Shortpath 提高 RDP 质量。
- 验证诊断管道
- 原因:AVD Insights 需要资源日志和来宾内遥测数据,才能将故障与资源瓶颈关联起来。
- 操作:
- 确保为主机池、工作区和应用程序组启用诊断设置,并将 Connection、HostRegistration、Checkpoint、Management、Error 和 NetworkData 类别的数据发送到中央 Log Analytics 工作区。
- 确认所有会话主机上都安装了 AMA,并且 DCR 正在收集与 RDP 相关的事件日志和性能计数器。
- 分析连接失败和代理运行状况
- 原因:频繁断开连接通常与传输回退或代理注册不稳定有关。
- 操作:
- 运行 AVD 连接查询以识别失败阶段和消息;隔离与代理或令牌相关的错误。
- 查询 HostRegistration 以查找未注册的主机;如果存在,则重启 RDAgentBootLoader 和 RdAgent,验证 DNS 和时间同步,并在注册令牌过期时重新注册主机。
- 调查登录延迟和 FSLogix 配置文件附加问题
- 原因:配置文件操作是导致登录时间过长的主要因素。
- 操作:
- 审查 Microsoft-FSLogix-Apps 日志,查找访问被拒绝、共享冲突或装载超时等问题;验证共享和 NTFS ACLs,并将 VHD(X) 路径从防病毒扫描中排除。
- 检查 Azure Files Premium 指标和虚拟机性能计数器以了解磁盘延迟;如果 IOPS 持续超出容量,则增加文件共享吞吐量或将配置文件迁移到 Azure NetApp Files。
- 识别资源瓶颈和容量压力
- 原因:过载的主机会在资源争用下导致性能下降和断开连接的症状。
- 操作:
- 使用性能计数器检测持续的 CPU > 85%、可用内存不足或高磁盘延迟;降低每台主机的会话限制或横向扩展主机。
- 启用或调整自动缩放以在高峰前增加容量;验证排空模式的行为,以在缩容期间保护活动会话。
- 实施主动式警报和仪表板
- 原因:通过检测早期预警信号来防止问题再次发生。
- 操作:
- 为 HostRegistration 状态不是“已注册”、连接失败次数增加以及 FSLogix 错误激增创建警报。
- 构建一个容量仪表板,显示每台主机的活动会话数与最大会话数对比以及资源热图;与运营和服务所有者共享。
此方法结合了用于外部依赖项的 Azure Service Health、用于平台可见性的诊断设置、用于主机遥测的 AMA+DCR、用于隔离故障域的 KQL 驱动分析,以及跨网络、代理运行状况、配置文件和容量的定向修复——确保 Adobe Inc. 能够稳定用户体验并防止未来问题复发。
← 安全性、合规性和终结点保护 · 所有领域 · 复原能力、恢复和迁移 →
练习这些题目 → · 在 ExamRoll.io 上限时练习 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
通过考试 →