Назад | Перейти на главную страницу

Почему один нисходящий поток WSUS не выполняет репликацию, а другие нет?

Недавно я добавил несколько нижестоящих серверов в среду WSUS для клиента. Все серверы работают под управлением WSUS версии 3 SP2 (3.2.7600.226). Кажется, все они работают хорошо, за одним исключением.

Указанное местоположение является действующим, клиенты зарегистрировались и получают обновления. Однако каждая синхронизация, начиная с начальной, не удалась. Консоль управления WSUS показывает следующую ошибку для каждой неудачной синхронизации:

SqlException: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlDataReader.ReadInternal(Boolean setTimeout)
   at Microsoft.UpdateServices.DatabaseAccess.DBConnection.ReadOneRow()
   at Microsoft.UpdateServices.Internal.DataAccess.HideUpdatesForReplicaSync(String xmlUpdateIds)
   at Microsoft.UpdateServices.ServerSync.CatalogSyncAgentCore.ProcessHiddenUpdates(Guid[] hiddenUpdates)
   at Microsoft.UpdateServices.ServerSync.CatalogSyncAgentCore.ReplicaSync()
   at Microsoft.UpdateServices.ServerSync.CatalogSyncAgentCore.ExecuteSyncProtocol(Boolean allowRedirect)

Это происходит в конце синхронизации, после того как сервер уже получил новые обновления от вышестоящего сервера. Кажется, что изменения сохраняются должным образом, так как новые, пересмотренные и просроченные счетчики не растут постоянно.

Я также вижу идентификаторы событий 10022 и 10032 в журнале приложений в средстве просмотра событий во время каждого сбоя.

Я попытался запустить мастер очистки сервера как на восходящем, так и на подчиненном сервере, но он зависает на обоих, когда доходит до стадии удаления неиспользуемых обновлений. Я запустил его в восходящем направлении около недели назад, непосредственно перед настройкой всех подчиненных серверов, и тогда он работал нормально.

Я также успешно запустил сценарий переиндексации из этого обсуждения на форуме Microsoft на обоих серверах. (Мастер очистки по-прежнему зависает после этого.)

Я довольно много искал в Интернете эту проблему, и мне не удалось найти ничего, что работало бы в этой ситуации. Я должен думать, что проблема специфична для вышедшего из строя нижестоящего сервера, поскольку все остальные работают нормально.

Есть ли способ точно определить, что он делает по истечении времени ожидания?

Кажется, я нашел решение своей проблемы, хотя я не совсем понимаю, почему это не было проблемой на других машинах. Возможны различия между внутренней базой данных в разных версиях / пакетах обновления Windows Server.

В диспетчере конфигурации SQL Server (входит в состав SQL Server Management Studio) для экземпляра внутренней базы данных (MICROSOFT ## SSEE) были отключены именованные каналы и TCP / IP в разделе «Конфигурация сети SQL Server».

После включения обоих синхронизация начала работать нормально. Я запустил несколько синхронизаций, и все они работали нормально.