我有使用 MS SQL 2012 作为数据库的 WSUS。由于我们的 Internet 带宽有限,因此更新存储在 WSUS 服务器上。除驱动程序和新功能包外,所有更新类别都从 Microsoft 同步。更新以 3 种语言同步。WSUS 版本为 10.0.17763.678。WSUS 服务器本身已完全更新。数据库大小C:\Program Files\Microsoft SQL Server\MSSQL11.WSUSSQL\MSSQL\DATA\SUSDB.mdf
约为 10GB。当我尝试在 WSUS 控制台中显示所有更新时 - 它会挂起大约 3-5 分钟,然后 崩溃。
The WSUS administration console was unable to connect to the WSUS Server via the remote API.
Verify that the Update Services service, IIS and SQL are running on the server. If the problem persists, try restarting IIS, SQL, and the Update Services Service.
System.Net.WebException -- The operation has timed out
Source
System.Web.Services
Stack Trace:
at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
at Microsoft.UpdateServices.Internal.DatabaseAccess.ApiRemotingCompressionProxy.GetWebResponse(WebRequest webRequest)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Microsoft.UpdateServices.Internal.ApiRemoting.ExecuteSPSearchUpdates(String updateScopeXml, String preferredCulture, Int32 publicationState)
at Microsoft.UpdateServices.Internal.DatabaseAccess.AdminDataAccessProxy.ExecuteSPSearchUpdates(String updateScopeXml, String preferredCulture, ExtendedPublicationState publicationState)
at Microsoft.UpdateServices.Internal.BaseApi.Update.SearchUpdates(UpdateScope searchScope, ExtendedPublicationState publicationState, UpdateServer updateServer)
at Microsoft.UpdateServices.UI.AdminApiAccess.UpdateManager.GetUpdates(ExtendedUpdateScope filter)
at Microsoft.UpdateServices.UI.AdminApiAccess.BulkUpdatePropertiesCache.GetAndCacheUpdates(ExtendedUpdateScope updateScope, ComputerTargetScope computerTargetScope)
at Microsoft.UpdateServices.UI.SnapIn.Pages.UpdatesListPage.GetListRows()
查询太大,SQL 没有时间处理它。WSUS 控制台的超时时间非常短,没有办法增加它。只有当我要求它显示未批准 - 任何更新时,WSUS 才会崩溃,因为这个查询非常大。如果我要求显示已批准 - 失败或需要,它会成功完成查询。
我尝试调整 IIS WsusPool 高级设置:将私有内存限制设置为 0(无限制)、将队列长度设置为 25000、将“服务不可用”响应类型设置为 TcpLevel、将故障间隔(分钟)设置为 30、将“最大故障数”设置为 60、将常规时间间隔(分钟)设置为 0、将 Ping 启用设置为 False。
我尝试运行 WSUS 数据库重新索引脚本https://gallery.technet.microsoft.com/scriptcenter/6f8cde49-5c52-4abd-9820-f1d270ddea61
我尝试将虚拟机的核心数增加到 32 个(SQL 进程仍然没有使用超过 15% 的 CPU),将内存增加到 32 GB(有大量可用内存)。我尝试将磁盘 C(数据库位置)移动到更快的存储。
<httpRuntime maxRequestLength="4096" />
我尝试通过将 \Program Files\Update Services\WebServices\ClientWebService\Web.Config 更改为来增加 WSUS 的 asp 超时<httpRuntime maxRequestLength="4096" executionTimeout="3600" />
我尝试从 WSUS 控制台的选项部分制作 WSUS 服务器清理向导。清理向导中的所有复选框都已选中。该向导运行了大约 5 个小时并成功完成。它删除了大约 25000 个不需要的更新。
实际上 WSUS mmc 控制台并不总是崩溃。在清理向导和重新索引脚本之后,它成功显示了所有更新的列表,但在 2 次成功尝试之后它再次开始崩溃。
如何使 WSUS mmc 控制台始终成功显示所有更新列表?