Скачивание приложения в Configuration Manager
Относится к Configuration Manager (Current Branch)
Прежде чем продолжить, ознакомьтесь с клиентскими компонентами развертывания приложений , чтобы понять, как обрабатывать задания DCM и агента CI.
Запуск скачивания
Загрузка содержимого приложения запускается компонентом агента CI на клиенте на этапе StateDownloadingContents . Этот процесс одинаков, независимо от того, развернуто ли приложение в коллекции устройств или в коллекции User.
- Для доступных развертываний содержимое приложения загружается, когда пользователь запускает установку приложения из Центра программного обеспечения.
- Для обязательных развертываний содержимое приложения загружается при активации назначения, а после оценки приложение становится применимым. Сведения об активации назначения см. в статьях Развертывание приложений в коллекциях устройств или Развертывание приложений в пользовательских коллекциях .
Когда агент CI запускает скачивание содержимого, он создает задачу, которая обрабатывается компонентом диспетчера задач CI. Затем диспетчер задач CI запускает скачивание содержимого. Это действие можно отслеживать в CITaskMgr.log с помощью уникального идентификатора типа развертывания.
Initiating task ContentDownload for CI ScopeId_B63CEBE7-8A69-4FBE-994F-5AD0A8488D27/DeploymentType_1d49ef88-cf3b-42fa-b198-388d220ccb44.2 (ConfigMgr Toolkit - Windows Installer (*.msi file)) for target: , consumer: {53EA65C2-D596-4215-83E4-F7007B78E18C}
Расположение точки распространения
Все задачи загрузки обрабатываются компонентом доступа к содержимому, который отвечает за управление кэшем клиента. После создания задачи загрузки компонент доступа к содержимому проверяет, доступно ли содержимое в кэше клиента. Если содержимое недоступно, создается запрос на расположение для получения списка точек распространения, из которых можно получить содержимое. Это действие можно отслеживать в CAS.log и LocationServices.log на клиенте с помощью уникального идентификатора содержимого.
Requesting locations synchronously for content Content_00a8f9e6-8e44-42f5-a0ef-9b5c86a88498.1 with priority Foreground
ContentLocationRequest : <Request XML Body>
Reply Message Body : <Reply XML Body>
Важно!
Хотя компонент службы определения местоположения обрабатывает запросы на размещение, он не запрашивает расположения напрямую из точки управления. Все запросы к точке управления обычно проходят через компонент обмена сообщениями CCM, который регистрируется в CcmMessaging.log.
XML-код ответа location содержит список точек распространения на основе группы границ клиента. Этот список анализируется и сохраняется в WMI на клиенте в соответствии с приоритетом источника содержимого. Это действие можно увидеть в ContentTransferManager.log с помощью уникального идентификатора содержимого и поиска Persisted location
.
Если XML-код ответа о расположении не содержит точек распространения, ContentTransferManager.log будет отображаться Received empty location update
и клиент может зависнуть на уровне 0 % при скачивании приложения. Этот ответ обычно может возникать из-за проблем с конфигурацией группы границ. Дополнительные сведения см. в разделе Сбои загрузки.
Скачивание содержимого
После получения расположений точки распространения компонент доступа к содержимому создает задание передачи содержимого. Это действие можно отслеживать в CAS.log с помощью уникального идентификатора содержимого.
Submitted CTM job {6D0EA720-EB4E-4893-8395-8B27470A6CFB} to download Content Content_00a8f9e6-8e44-42f5-a0ef-9b5c86a88498.1 under context System
Затем диспетчер передачи содержимого создает задание службы передачи данных для скачивания содержимого. Это действие можно отслеживать в ContentTransferManager.log на клиенте с помощью уникального идентификатора содержимого.
CTM job {6D0EA720-EB4E-4893-8395-8B27470A6CFB} (corresponding DTS job {708C7F21-8898-49AB-900E-BA6E5F1A39BC}) started download from '<Distribution Point URL>/Content_00a8f9e6-8e44-42f5-a0ef-9b5c86a88498.1' for full content download.
Примечание.
Эта запись журнала может использоваться для идентификации идентификаторов заданий CTM и DTS, которые можно использовать для отслеживания хода передачи содержимого в ContentTransferManager.log и DataTransferService.log соответственно.
Служба передачи данных скачивает содержимое приложения, создавая задание фоновой интеллектуальной службы передачи (BITS) и ожидая завершения загрузки. Это действие можно отслеживать в DataTransferService.log на клиенте с помощью идентификатора задания DTS, полученного из ContentTransferManager.log.
Starting BITS job '{40263E01-2EDD-462F-ABBA-A5E892CB9229}' for DTS job '{708C7F21-8898-49AB-900E-BA6E5F1A39BC}' under user 'S-1-5-18'.
DTSJob {708C7F21-8898-49AB-900E-BA6E5F1A39BC} in state 'DownloadingData'.
DTS job {708C7F21-8898-49AB-900E-BA6E5F1A39BC} has completed
После завершения загрузки компонент доступа к содержимому будет уведомлен. Затем компонент доступа к содержимому проверяет скачаемое содержимое, чтобы убедиться, что содержимое не было изменено во время скачивания. Это действие можно отслеживать в CAS.log с помощью уникального идентификатора содержимого.
Hash verification succeeded for content Content_00a8f9e6-8e44-42f5-a0ef-9b5c86a88498.1 downloaded under context System
Наконец, после проверки содержимого агент CI получает уведомление о завершении задачи и задание агента CI переходит к следующему этапу.
CIAgentJob({2BF84225-C9E8-49A6-A308-A160C4B799D3}): CAgentJob::HandleEvent(Event=CITaskComplete, CurrentState=StateDownloadingContents)