使用 Configuration Manager 排查Microsoft连接缓存问题
本文提供有关使用 Configuration Manager Microsoft连接缓存的技术详细信息。 使用它来帮助排查环境中可能存在的问题。 有关其工作原理和用法的详细信息,请参阅 使用 Configuration Manager Microsoft连接缓存。
验证
正确安装传递优化缓存服务器并正确配置客户端时,这些客户端将从安装在分发点上的缓存服务器(而不是 Internet)下载。
在客户端上验证
在运行受支持的 Windows 10 或更高版本的客户端上,下载云托管的内容。 有关连接缓存支持的内容类型的详细信息,请参阅 支持的内容类型。
打开 PowerShell 并运行以下命令:
Get-DeliveryOptimizationStatus
。例如:
PS C:\> Get-DeliveryOptimizationStatus FileId : ec523d49c4f7c3c4444f0d9b952286ce40fdcee4 FileSize : 549064 TotalBytesDownloaded : 549064 PercentPeerCaching : 0 BytesFromPeers : 0 BytesFromHttp : 0 Status : Caching Priority : Background BytesFromCacheServer : 549064 BytesFromLanPeers : 0 BytesFromGroupPeers : 0 BytesFromInternetPeers : 0 BytesToLanPeers : 0 BytesToGroupPeers : 0 BytesToInternetPeers : 0 DownloadDuration : 00:00:00.0780000 HttpConnectionCount : 2 LanConnectionCount : 0 GroupConnectionCount : 0 InternetConnectionCount : 0 DownloadMode : 99 SourceURL : http://au.download.windowsupdate.com/c/msdownload/update/software/defu/2019/09/am_delta_p atch_1.301.664.0_ec523d49c4f7c3c4444f0d9b952286ce40fdcee4.exe NumPeers : 0 PredefinedCallerApplication : WU Client Download ExpireOn : 9/6/2019 8:36:19 AM IsPinned : False
请注意, 属性 BytesFromCacheServer
不是零。
如果未正确配置客户端,或者缓存服务器未正确安装,则传递优化客户端会回退到原始云源。 然后,该 BytesFromCacheServer
属性将为零。
在服务器上验证
首先,验证是否已正确配置注册表属性: HKLM\SOFTWARE\Microsoft\Delivery Optimization In-Network Cache
。 例如,驱动器缓存位置为 PrimaryDrivesInput\DOINC-E77D08D0-5FEA-4315-8C95-10D359D59294
,其中 PrimaryDrivesInput
可以是多个驱动器,例如 C,D,E
。
接下来,使用以下方法模拟向服务器发送的客户端下载请求,其中包含必需的标头。
以管理员身份打开 64 位 PowerShell 窗口。
运行以下命令,并替换 服务器
<DoincServer>
的名称或 IP 地址:Invoke-WebRequest -URI "http://<DoincServer>/mscomtest/wuidt.gif" -Headers @{"Host"="b1.download.windowsupdate.com"}
输出类似于以下示例:
PS C:\WINDOWS\system32> Invoke-WebRequest -URI "http://SERVER01.CONTOSO.COM/mscomtest/wuidt.gif" -Headers @{"Host"="b1.download.windowsupdate.com"} StatusCode : 200 StatusDescription : OK Content : {71, 73, 70, 56...} RawContent : HTTP/1.1 200 OK X-HW: 1567797125.dop019.se2.t,1567797125.cds058.se2.s,1567797125.dop114.at2.r,1567797125.cds079.at2 .p,1567797125.cds058.se2.p X-CCC: cdP+dRBgUCoZO1mezA9zhg2VwQ7P1JWTh9k+GhfQmu8=_SLwv... Headers : {[X-HW, 1567797125.dop019.se2.t,1567797125.cds058.se2.s,1567797125.dop114.at2.r,1567797125.cds079.a t2.p,1567797125.cds058.se2.p], [X-CCC, cdP+dRBgUCoZO1mezA9zhg2VwQ7P1JWTh9k+GhfQmu8=_SLwvtSBQdT3uPQ5ikBe1ABMbdYIIncem+h5dtcLI6GY=], [X-CID, 100], [Accept-Ranges, bytes]...} RawContentLength : 969710
以下属性指示成功:
StatusCode : 200
StatusDescription : OK
日志文件
应用程序请求路由 (ARR) 安装日志:
%temp%\arr_setup.log
连接的缓存服务器设置日志:
SMS_DP$\Ms.Dsp.Do.Inc.Setup\DoincSetup.log
分发点和DistMgr.log
站点服务器上的Internet Information Services (IIS) 操作日志:默认情况下,
%SystemDrive%\inetpub\logs\LogFiles
连接的缓存服务器操作日志:
C:\Doinc\Product\Install\Logs
提示
在其他用途中,此日志可帮助你识别Microsoft云的连接问题。
安装错误代码
当 Configuration Manager 在分发点上安装连接缓存组件时,下表列出了可能出现的错误代码:
错误代码 | 错误说明 |
---|---|
0x00000000 | 成功 |
0x00000BC2 | 成功,需要重新启动 |
0x00000643 | 一般安装失败 |
0x00D00001 | 仅当已安装 Internet Information Services (IIS) 时,才能运行连接的缓存安装程序 |
0x00D00002 | 仅当服务器上存在“默认网站”时,才能运行连接的缓存设置 |
0x00D00003 | 如果已安装应用程序请求路由 (ARR) ,则无法安装连接缓存 |
0x00D00004 | 仅当应用程序请求路由 (ARR) 由 Install.ps1 脚本安装时,才能运行连接缓存安装程序 |
0x00D00005 | 连接的缓存设置需要以管理员身份运行的 PowerShell 会话 |
0x00D00006 | 连接缓存设置只能从 64 位 PowerShell 环境运行 |
0x00D00007 | 连接缓存安装程序只能在 Windows Server 上运行 |
0x00D00008 | 失败:指定的缓存驱动器数必须与指定的缓存驱动器大小百分比匹配 |
0x00D00009 | 失败:必须提供有效的缓存节点 ID |
0x00D0000A | 失败:必须提供有效的缓存驱动器集 |
0x00D0000B | 失败:必须提供有效的缓存驱动器大小百分比集 |
0x00D0000C | 失败:必须提供有效的缓存驱动器大小百分比集或缓存驱动器大小(以 GB 为单位) |
0x00D0000D | 失败:无法同时提供有效的缓存驱动器大小百分比集和缓存驱动器大小(以 GB 为单位) |
0x00D0000E | 失败:指定的缓存驱动器数必须与指定的缓存驱动器大小(以 GB 为单位)匹配 |
0x00D0000F | 失败:无法将 applicationhost.config 文件从$AppHostConfig备份到$AppHostConfigDestinationName |
0x00D00010 | 失败:无法将默认网站 web.config 文件从$WebsiteConfigFilePath备份到$WebConfigDestinationName |
0x00D00011 | 失败:SetupARRWebFarm.ps1 中发生异常 |
0x00D00012 | 失败:SetupARRWebFarmRewriteRules.ps1 中发生异常 |
0x00D00013 | 失败:SetupARRWebFarmProperties.ps1 中发生异常 |
0x00D00014 | 失败:SetupAllowableServerVariables.ps1 中发生异常 |
0x00D00015 | 失败:SetupFirewallRules.ps1 中发生异常 |
0x00D00016 | 失败:SetupAppPoolProperties.ps1 中发生异常 |
0x00D00017 | 失败:SetupARROutboundRules.ps1 中发生异常 |
0x00D00018 | 失败:SetupARRDiskCache.ps1 中发生异常 |
0x00D00019 | 失败:SetupARRProperties.ps1 中发生异常 |
0x00D0001A | 失败:SetupARRHealthProbes.ps1 中发生异常 |
0x00D0001B | 失败:VerifyIISSItesStarted.ps1 中发生异常 |
0x00D0001C | 失败:SetDrivesToHealthy.ps1 中发生异常 |
0x00D0001D | 失败:VerifyCacheNodeSetup.ps1 中发生异常 |
0x00D0001E | 如果默认网站不在端口 80 上,则无法安装连接缓存 |
0x00D0001F | 失败:缓存驱动器分配百分比不能超过 100 |
0x00D00020 | 失败:缓存驱动器分配(以 GB 为单位)不能超过驱动器的可用空间 |
0x00D00021 | 失败:缓存驱动器分配百分比必须大于 0 |
0x00D00022 | 失败:缓存驱动器分配(以 GB 为单位)必须大于 0 |
0x00D00023 | 失败:RegisterScheduledTask_CacheNodeKeepAlive中发生异常 |
0x00D00024 | 失败:RegisterScheduledTask_Maintenance中发生异常 |
0x00D00025 | 失败:为 HTTPS 场设置重写规则时出现异常:$FarmName |
0x00D00026 | 失败:为 HTTP 场设置重写规则时出现异常:$FarmName |
0x00D00027 | 无法安装连接缓存,因为依赖软件“应用程序请求路由 (ARR) ”安装失败。 请参阅位于 %temp%\arr_setup.log 的日志文件 |
IIS 配置
连接的缓存服务器安装对分发点上的 IIS 配置进行了多项修改。
应用程序请求路由
连接的缓存服务器安装并配置 IIS 应用程序请求路由。 为了避免潜在的冲突,分发点无法安装此组件。
允许的服务器变量
安装连接缓存服务器后,默认网站具有以下 本地 服务器变量:
- HTTP_HOST
- QUERY_STRING
- X-CCC
- X-CID
- X-DOINC-OUTBOUND
重写规则
连接的缓存服务器添加了以下重写规则:
入站重写规则
Doinc_ForwardToFarm_shswda01.download.manage-selfhost.microsoft.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_swdc01.manage.microsoft.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_swdc02.manage.microsoft.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_dl.delivery.mp.microsoft.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_officecdn.microsoft.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_b1.download.windowsupdate.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_download.windowsupdate.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_officecdn.microsoft.com.edgesuite.net_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_au.b1.download.windowsupdate.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_assets1.xboxlive.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_au.download.windowsupdate.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_emdl.ws.microsoft.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_tlu.dl.delivery.mp.microsoft.com_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_ForwardToFarm_assets2.xboxlive.com_E77D08D0-5FEA-4315-8C95-10D359D59294
出站重写规则
Doinc_Outbound_SetHeader_X_CID_E77D08D0-5FEA-4315-8C95-10D359D59294
Doinc_Outbound_SetHeader_X_CCC_E77D08D0-5FEA-4315-8C95-10D359D59294
IIS 自定义标头
如果在代理服务器上阻止具有 X-Forwarded-For
标头的请求,则允许代理服务器上的标头,或更改每个服务器场的 IIS 中的自定义标头名称。
更改每个服务器场的自定义标头名称:
- 打开 IIS 管理器。
- 选择“ 服务器场”。
- 选择服务器场和代理图标。
- 在 “自定义标头”下,将值
X-Forwarded-For
更改为X-Forwarded-For-<custom-name>
。
管理服务器资源
每个连接的缓存服务器所需的磁盘空间可能因组织的更新要求而异。 100 GB 的磁盘空间应足以缓存以下内容:
- 功能更新
- 两到三个月的质量和Microsoft 365 应用更新
- Microsoft Intune 应用和 Windows 收件箱应用
连接的缓存服务器不应消耗太多系统内存或处理器时间。 安装连接缓存服务器后,如果发现大量进程或内存资源消耗,请分析 IIS 和 ARR 日志文件。
如果 IIS 和 ARR 日志文件占用了服务器上的太多空间,可以使用多种方法来管理日志文件。 有关详细信息,请参阅 管理 IIS 日志文件存储。