This document is designed to help diagnose and resolve common issues that happen in Ivanti EPM Software Distribution from the perspective of the core server.
A few notable services core side that must be started in order for the Software Distribution process to function correctly are as follows:
- LANDESK Scheduler Service
- LANDESK® Management Agent Service
- LANDESK Policy Server Service
Software Distribution Process
The following process outlines how Software Distribution works Core side.
Upon creation of a scheduled task from a Distribution Package, a Client Policy file is created which contains all client side information you've configured in the task properties as well as the ID number of your Distribution Package. This file will be contained in the following directory on your core server and will be in the following format :
Path: %ldms_home%\LANDESK\Files\Client Policies
File Format: CP.TaskID.RunNow.xml
If you elected to have your task display in the portal you will have no suffix after the task_id. If you elect to have your task run automatically and not display in the portal, you will have a RunNow suffix appended to the file.
Software Distribution Stages
Stage 1: Discovery (Core initiated)
When the task is initiated on the core, the Landesk.Scheduler.Global Scheduler will communicate with TaskHandlerProxy who in turn will talk to PolicyTaskHandler (see above diagram) in efforts to make the task information available to the targets in the task. This series of events will place the task in the Discovery Stage. For more info on the discovery process please reference How to troubleshoot Agent Discovery.
In order to attain more logging around the discovery process please enable verbose policy task handler logging by navigating to:
Tools | Distribution | Scheduled Tasks
|Configure Settings||Default Scheduled Task|
Below is an example of this sequence of events from a logging perspective:
In the PolicyTaskHandler.exe.log file, TasklD: 1099 is a RunNow task, so after a successful discovery, the command to synchronize policies in initiated from the core. If this was a "Display in Portal" task, the SyncPolicyTask command would not be sent:SyncPolicyTask:
Synchronizing policy with the command: [C:\Program Files (x86)\LANDESK\LDClient\PolicySync.exe -taskid=1099], to machine: [WIN8196]
Stage 2: Asynchronous Policy Execution (Client has initiated processing)During this stage, the client policy file has been made available to the client, and the client is in the process of retrieving the file from the core. If successful, the CP.TaskID.RunNow.xml or CP.TaskID.xml file will be downloaded to the (Programdata\LANDESK\Polices) directory. A status (.stat) file will be created by policysync.exe. This file corresponds to the activity taking place by sdclient.exe. For a listing of what the return codes mean in the .stat file please reference How to Interpret Client Policy .Stat file Status Codes.
Stage 3: Task Has Started
During this stage, the sdclient process on the client has been initiated. There will now be a sdclient_taskXXX.log file (XXX = taskID) on the client in %ldms_local_dir%.
Stage 4: DownloadingDuring this stage, the LANDESK download utility has begun downloading the files contained in the Software Distribution package. These files will reside in the %ldms_local_dir%\..\sdmcache directory.
Stage 5: CompleteDuring this stage, the sdclient process has completed processing the client policy task made available to the target.
Software Distribution (IIS)
There are a variety of web requests made over the HTTP protocol related to the Software Distribution process. To properly troubleshoot the process, you will need to understand what sites and web services are at play.
To access IIS Manager, open a run prompt and type in INETMGR. This command will take you to IIS.
|Run Prompt||IIS Manager|
The APMService site handles all Software Distribution activity and the LDAppAPM application pool serves the site.
The two (2) primary web services in the APMService site are as follows:
- Packageinfo.asmx (contains all pertinent information about the package being distributing to the client)
- PolicyRequest.asmx (contains all pertinent information configured in the task properties)
The operations contained in each web service allow the transfer of information from the core server to the client.
In the event a targeted client cannot get a policy file or package information, review the IIS log files to determine if the attempt made it from the client to the core. If no entry from the time frame of the request is contained in the IIS logging file, the traffic was dropped/blocked in route to the core or never left the client. To view the IIS logging please navigate to the following location on your core server: