Вопрос или проблема
У меня есть последовательность задач развертывания ОС SCCM, которая работает нормально — с одним условием, которое я не могу понять…
Как только последовательность задач завершается, требуется от 4 до 16 часов для обработки клиентских настроек. Это означает, что только что созданные компьютеры не получают никаких развертываний или настроек антивируса в это время. Клиент SCCM в конечном итоге синхронизируется с сервером, и когда это происходит, все работает нормально. Но из-за этой проблемы нам в основном приходится оставлять компьютеры на ночь, прежде чем мы сможем entregar их пользователям. Переустановка неисправного компьютера на месте не является вариантом, если мы не сделаем это прямо перед тем, как пользователь уходит домой, чтобы он был готов для них, когда они придут на работу утром.
Одной из основных проблем является клиент Защиты конечных точек. В Windows 10 нет способа (насколько я знаю) перевести Windows Defender в управляемый режим, так как он является встроенным компонентом операционной системы. Мы абсолютно должны ждать, пока клиент SCCM выполнит свои задачи, чтобы исключения обрабатывались корректно (что требуется для определенного приложения, которое мы используем).
Вот соответствующие детали:
- Мы используем SCCM 1710
- Это происходит на всех наших образах, как в Windows 7, так и в Windows 10.
- Никакое количество ручного запуска клиентских действий в панели управления Config Manager не заставляет политику применяться быстрее.
- Перезагрузка затронутого компьютера не дает никакой разницы.
- Все работает нормально после того, как клиент наконец синхронизируется. Развертывания, обновления программного обеспечения и оценки политики обрабатываются по графику после этого.
- Консоль управления SCCM показывает, что клиент установлен и активен.
- Наша иерархия SCCM имеет только один сервер сайта с ролями БД, DP, MP и SUP, работающими на нем. Все группы границ сконфигурированы правильно.
- Обнаружение пользователей и систем в AD происходит каждые 24 часа, с активированным дельта-обнаружением на 5 минут.
- Никакие окна обслуживания не определены ни в одной из наших коллекций (мы в основном работаем 24/7). Все развертывания настроены на игнорирование окон обслуживания в любом случае.
- В журналах нет ошибок или чего-то необычного (хотя я признаю, что не совсем уверен, что именно я ищу там).
Есть ли какой-либо способ заставить клиент загружать и применять политику во время процесса создания образа?
ОБНОВЛЕНИЕ:
Я проследил эту проблему до процесса обнаружения на стороне сервера.
Когда я смотрю на затронутую машину в консоли SCCM, она показывает, что клиент установлен, активен и здоров, НО Ресурсный обозреватель не показывает никаких данных для этого. SCCM ничего не знает об устройстве — какая ОС установлена, какое оборудование у него есть, какое программное обеспечение установлено, в каком OU оно находится… ничего.
Все наши коллекции основаны на запросах, так что пока данные не станут доступными для запроса, SCCM не имеет понятия, в какой коллекции оно должно находиться, и, следовательно, ничего не рекламируется для него. Клиент должен заполнять эти данные на сервере в ходе своего цикла обнаружения, но по какой-то причине этого не происходит.
ЕСЛИ я принудительно перезапускаю обнаружение системы AD, принудительно переоцениваю участников коллекции и вручную активирую действия сайта на клиенте, ТО я могу заставить SCCM вести себя в пределах часа или около того. Но я действительно просто нажимаю кнопки случайным образом в данный момент. Я не знаю, какая комбинация времени и порядка действий является волшебным решением здесь.
- Обнаружение систем AD настроено на выполнение каждый день с дельта-обнаружением, установленным на 5 минут.
- Оценки коллекций настроены на выполнение каждые 7 дней, с активированным дельта-обнаружением также на 5 минут.
Но все это не имеет смысла, потому что заполнение не занимает полных 24 часов. Если я создаю образ машины рано утром, она обычно будет готова к позднему afternoon, но обнаружение выполняется только посредине ночи.
Также:
- Если я переустанавливаю существующий компьютер с ТОЖЕ ОС, я добивался успеха с правильной оценкой компьютера после часа или около того, просто активируя действия сайта на клиенте. Но это потому, что БД уже имела запись для этих компьютеров, и никакая информация о них не изменилась.
Так что обновленная информация чем-то помогает кому-то?
Если вы находитесь в режиме только HTTPS, это может быть задержка получения компьютером его сертификата от вашего центра сертификации.
Если это так, в ccmexec.log вы увидите строку “Не удалось найти никакой сертификат на основе издателя сертификатов”.
Сначала нужно, чтобы он автоматически регистрировался для сертификатов.
Поведение, которое вы описываете, кажется ожидаемым.
Что помогло бы вам, называется Дельта-обнаружение. Оно активно ищет изменения в AD (например, добавление нового компьютера в каталог) и делает их видимыми для SCCM. То, что дельта-обнаружение для Методов обнаружения SCCM, называется Инкрементальное обновление для его Коллекций.
Исходя из того, что вы говорите, самая длинная возможная цепочка, которую я могу представить, выглядит следующим образом:
Создание -> Обнаружение системы AD -> Обновление коллекции -> Настройки клиента ->
Политика машины -> Аппаратный инвентаризация -> Обновление коллекции ->
Настройки Защиты конечных точек -> Политика машины -> Готово
Сократить это можно несколькими способами:
- Настройки по умолчанию для Аппаратного инвентаризации и Защиты конечных точек, а не нацеленные на коллекции – т.е. защищенные/управляемые по умолчанию, переопределять по мере необходимости
- Сделайте ваши коллекции зависимыми от атрибутов, обнаруженных в AD, а не от атрибутов, обнаруженных в аппаратном инвентаризации – вам нужно убедиться, что коллекция содержит системы, которые имеют клиент как None и активность клиента. Моя коллекция для Windows 10 имеет SMS_R_System.OperatingSystemNameandVersion, как “%Microsoft Windows NT Workstation 10%”
Я думаю, у меня нет этой проблемы, потому что, хотя существует конкурентная ситуация для последовательности задач против членства в коллекции, членство в коллекции всегда быстрее.
Вы можете использовать PowerShell, добавив его как задачу в последовательность задач:
Invoke-WmiMethod -Namespace root\ccm\clientsdk -Class CCM_ClientUtilities -Name GetMachinePolicy
Ответ или решение
Чтобы принудить клиент SCCM к немедленной оценке политики сразу после развертывания ОС, существуют несколько подходов, которые помогут сократить время ожидания, когда только что установленное устройство становится активным участником сети с полной поддержкой настройками.
1. Понимание проблемы
По вашему описанию, клиент SCCM после развертывания ОС не получает необходимые политики в течение длительного времени (от 4 до 16 часов). Причина этой проблемы заключается в том, что SCCM не имеет информации о новом устройстве, так как не происходит необходимой обработки данных о системе. Основой данной проблемы является работа методов обнаружения, которые не обеспечивают timely обновление информации, в том числе касающейся Endpoint Protection.
2. Изменение параметров обнаружения
Убедитесь, что у вас включены и оптимизированы все методы обнаружения:
- AD System Discovery: Убедитесь, что она настроена на более частый запуск (например, каждые 5 минут с использованием дельта-обнаружения).
- Коллекции: Попробуйте использовать коллекции, основывающиеся на свойствах, полученных от Active Directory, чтобы ускорить процесс. Это позволит вам избежать зависимости от хранения данных оборудования.
3. Принудительное обновление и триггеры
С помощью PowerShell можно добавить в последовательность задач (Task Sequence) вызов метода, который будет принудительно запрашивать обновление политик, когда операционная система завершает установку. Используйте следующую команду:
Invoke-WmiMethod -Namespace root\ccm\clientsdk -Class CCM_ClientUtilities -Name GetMachinePolicy
Данная команда принудительно инициирует процесс получения политик для клиента.
4. Автоматизация через Task Sequence
-
Добавьте PowerShell сценарий в Task Sequence: Включите в вашу последовательность задач после установки ОС шаг, где будет выполнена команда на вызов WMI.
-
Оптимизация порядка задач: Определите порядок запуска задач в Task Sequence так, чтобы сначала выполнялась настройка клиента. Это должно произойти до того, как Windows Defender начнет активную работу, чтобы избежать конфликтов и ожиданий.
5. Изменение настроек Endpoint Protection
С учетом актуального состояния SCCM 1710 рассмотрите возможность активирования настройки Endpoint Protection по умолчанию для новых устройств, чтобы минимизировать время ожидания после развертывания ОС.
6. Использование SCCM Reporting для мониторинга
Для более глубокой диагностики проведите анализ логов, таких как ccmexec.log
и ClientLocation.log
. Убедитесь, что они не содержат ошибок, указывающих на проблемы с сетевыми подключениями или сертификатами (например, отсутствие сертификата от вашего Центра сертификации).
Заключение
Реализация предложенных методов значительно сократит время ожидания и ускорит процесс, позволяя доставлять готовые к работе устройства конечным пользователям. Важно также следить за нужной настройкой SCCM и корректно организовать путь от развертывания до активации клиентских политик. Попробуйте применить вышеперечисленные подходы, и, возможно, удастся значительно сократить время ожидания после развертывания ОС.