In Deployment Solution 7.1 up until MR4, there are timing issues that prevent Initial Deployment from correctly executing in many cases. This is due to a required process - the "NS.Delta Resource Membership Update" Scheduled Task - running on a set scheduled interval which may not occur during the required time window.
The Process:
When an unknown computer is booted for the first time in order for Initial Deployment to occur, each of the following steps must occur:
Possible obstacles:
There are a number of possible obstacles that can impeded this process - each of which will result in the desired task not executing on the client machine.
The client is not booting to PXE.
Verify that PXE is correctly configured in the environment. For more information regarding PXE setup, see HOWTO21623.
Once in automation (WinPE or Linux), the client has no activity.
In automation, the client displays the Initial Deployment menu, but doesn't execute the task/job when selected.
In order for a job/task to execute correctly, the following must occur, in order:
1. The client reports inventory to the Notification Server (NS). [Step 3]
2. The NS processes the inventory and creates a resource in the database. [Steps 4-5]
3. The task/job is assigned to this resource. [Steps 6-9]
4. The client executes the assigned task/job. [Step 10]
The most common issue associated with this is when the task/job is assigned to an 'empty resource' - a resource that has not yet been created in the database - so it does not associate with the client machine. This occurs when the task/job instance is created and assigned before the computer resource has been correctly processed and created in the database.
**A general workaround for this process is to manually run the "NS.Delta Resource Membership Update" on the NS after the client has booted into automation, before selecting a task/job from the initial deployment menu.**
To troubleshoot the process:
1. Stop the 'Altiris Client Message Dispatcher' service (this will prevent .nse files from being processed and removed from the EvtQ folders)
2. Boot the client machine into PXE.
3. Watch the EvtQPriority folder for an .nse file to be received.
4. Once this file is received, verify that it contains the basic inventory for the client machine.
5. Make a copy of this file out of the directory and place it in a different temporary holding folder.
6. Start the 'Altiris Client Message Dispatcher' service.
7. Verify that the .nse file is removed from the EvtQPriority folder.
8. Run the "NS.Delta Resource Membership Update" scheduled task on the NS.
9. Stop the 'Altiris Client Message Dispatcher' service.
10. Verify that the resource has been created in the console. (If it has not, manually place a copy of the inventory .nse into the EvtQPriority folder and repeat steps 7-10.)
**At this point, the resource has been successfully created in the database for task/job assignment.
11. Select a task/job from the Initial Deployment menu on the client machine.
12. Watch the EvtQPriority folder for another .nse file to be received.
13. Make a copy of this file as well, placing it in the temporary holding folder.
14. Start the 'Altiris Client Message Dispatcher' service.
15. Verify that the new .nse file is removed from the EvtQPriority folder.
16. Verify that the task/job has begun execution on the client machine.
**The task/job will now have been assigned to the newly created resource, and should be reflected accordingly in the server log files.
If this process is successful in assigning a task/job to the client, then the issue with Initial Deployment was a timing mismatch. All the processes are running correctly, though not in the correct order. Since the "NS.Delta Resource Membership Update" scheduled task runs on a set schedule, it often does not coincide with the booting of an unknown computer into PXE and assignment of a task/job to that client. These issues with timing have been brought to the attention of Development and are being resolved in a future release.