Помилка 0x80244022 і проблема зупинки wsuspool через нестачу пам'яті, windows для системних

Комп'ютери клієнтів не можуть отримати оновлення з Software Update Point, в журналах при цьому фіксується помилка 0x80244022.

На стороні клієнта журнал WUAhandler.log містить помилки:

OnSearchComplete - Failed to end search job. Error = 0x80244022.
Scan failed with error = 0x80244022.

У журналі служби Windows Update WindowsUpdate.log теж безліч помилок виду:

Помилка 0x80244022 і проблема зупинки wsuspool через нестачу пам'яті, windows для системних
На стороні сервера при цьому в балці WSUSCtrl.log є помилка:

request failed with HTTP status 503: Service Unavailable
Failures reported during periodic health check by the WSUS Server SPB-MAN1. Will retry check in 1 minutes

HTTP Error 503. The service is unavailable

Помилка 0x80244022 і проблема зупинки wsuspool через нестачу пам'яті, windows для системних

Відкривши консоль управління IIS Manager, я побачив що пул, який відповідає за роботу WSUS (WsusPool) знаходиться в відключеному стані.

Помилка 0x80244022 і проблема зупинки wsuspool через нестачу пам'яті, windows для системних
Після ручного запуску пулу, через 20-30 хвилин він знову впаде. У журналі системи при цьому виявилося цікаве повідомлення Event ID 5117 WAS з текстом:

A worker process serving application pool 'WsusPool' has requested a recycle because it reached its private bytes memory limit

За замовчуванням в системі ліміт використовуваної пам'яті для пулу WsusPool
обмежений 1,8 Гб. При перевищенні цього значення (а це може запросто трапиться при великій кількості клієнтів WSUS, особливо при першому скануванні), пул скидається. Щоб зрозуміти скільки пам'яті використовує ваш пул WSUS, досить подивитися за процесом w3wp.exe. При перевищенні ліміту 1,8 Гб, процес перезапускається. Таким чином для вирішення проблеми потрібно збільшити обсяг виділеної пам'яті.

Примітка. Проблема частково нагадує розглянутий раніше кейс з помилкою 0x8024401 при отримання оновлень c в Windows 10.

Помилка 0x80244022 і проблема зупинки wsuspool через нестачу пам'яті, windows для системних

Розмір виділеної пам'яті також можна змінити і з розділу розширених налаштувань пулу (Advanced Settings), збільшивши значення в поле Privatememoryusage (KB).

Помилка 0x80244022 і проблема зупинки wsuspool через нестачу пам'яті, windows для системних
Залишилося перезапустити пул через кнопки Start / Stop або Recycle.

Помилка 0x80244022 і проблема зупинки wsuspool через нестачу пам'яті, windows для системних
Після чого процес w3wp.exe перестав споживати більше 3 Гб RAM. А на наступний день на комп'ютерах стали закачуватимуться поновлення.

Порада. При великій кількості клієнтів WSUS, які отримують оновлення з SCCM Software Update Point (особливо отримують поновлення вперше), в розширених налаштуваннях пулу можна збільшити наступні параметри:

  • Queue Length з 1000 до 25000
  • "Service Unavailable" Response Type - c HttpLevel на TcpLevel
  • Failure Interval (minutes) - з 5 до 30
  • Change 'Maximum Failures' - з 5 to 60