Maintenance windows provide administrators with an effective means of managing client changes. However, it is critical that administrators be aware of the possible conflict that may occur between the maintenance windows and the Maximum allowed run time setting on advertised programs.
When a client computer has a maintenance window policy set, the following evaluation is made before an advertised program is be launched by Configuration Manager 2007:
- Is the available time left in the defined
maintenance window greater or equal to (>=) the maximum allowed
run time for the advertised program plus (+) the Advertised
Programs Client Agent countdown duration.
If the answer is yes, the advertised program will run; if not, Configuration Manager 2007 will wait until the next scheduled maintenance window in which there is sufficient time available.
|Any advertised program will fail to run when the maintenance windows defined on the client computer are set for a period less than that program's Maximum allowed run time setting.|
Program Run Sequences
Advertised programs are typically run in the order in which they are downloaded to the client computer, based on the advertisement start time and assignment time (if the program is mandatory). However, when maintenance windows are used, this order may not be followed.
When a maintenance window is in place, a program will only be launched according to the available time evaluation. If time remains in the maintenance window after the program is complete and additional programs are queued for launch, Configuration Manager 2007 will evaluate the next program in sequence. If the evaluation is positive and there is enough time available to run this program, it will be launched. If the evaluation is negative and there is insufficient time within the maintenance window to run the program, Configuration Manager 2007 will then evaluate the next program in sequence, leaving the skipped program to be run in the next maintenance window with sufficient available time. If necessary, this process will be run on all programs queued for launch.
When the Maximum Allowed Run Time option is Unknown
If an advertised program has the Maximum allowed run time option set to Unknown, however, the available time evaluation proceeds differently. Although an Unknown setting is evaluated by Configuration Manager 2007 as 12 hours, this is for monitoring purposes only. When determining whether there is sufficient time to run a program within a given maintenance window, a setting of Unknown is evaluated as 0 minutes, regardless of whether the program actually takes 1 minute to run or 3 hours.
As a result, a program with the maximum run time set to Unknown will start running during a maintenance window that has even 1 minute available and can continue to run even if it finishes outside the designated maintenance window.
|In determining whether a program with the maximum run time set to Unknown will run during a maintenance window, the countdown duration set for the Advertised Programs Client Agent will still be considered. For more information about this setting, see Advertised Programs Client Agent Properties: Notification Tab.|
Sample Program Sequence Scenario
The following scenario provides an example of the sequences in which programs could run on a client computer subject to a daily 1 hour maintenance window. Each of four programs have a mandatory schedule, and are scheduled to be installed only once on Sunday at 1:00 pm. There is a maintenance window available every day at 5:00 pm for 1 hour. Each program requires the installation time as specified in the MaxRunTime field. The countdown duration is set to zero (0).
The following table indicates when each program will actually be installed.
(1) Program 1 runs on Sunday at 5:00 pm because there is sufficient time for installing the program based on the rule evaluating to true: (Remaining maintenance window duration – Countdown >= MaxRunTime of Program 1) or (60 – 0 >= 30).
(2) Program 2 does not run on Sunday because the rule evaluated to false: (Remaining maintenance window duration – Countdown >= MaxRunTime of Program 2.) or (30 – 0 >= 45). It will run on Monday at 5 PM because there is sufficient time for installing the program based on the rule evaluating to true: (Remaining maintenance window duration – Countdown >= MaxRunTime of Program 2) or (60 – 0 >= 45).
(3) Program 3 does not run on Sunday because the rule evaluated to false: (Remaining maintenance window duration – Countdown >= MaxRunTime of Program 3.) or (30 – 0 >= 90). In fact, Program 3 will never run because there is insufficient time for installing the program based on the rule evaluating to false: (Remaining maintenance window duration – Countdown >= MaxRunTime of Program 3) or (60 – 0 >= 90). When this program does not run, Configuration Manager 2007 evaluates if it will ever run and because the rule always evaluate to false, the program will fail on Sunday.
(4) Program 4 runs on Sunday at 5:30 pm because there is sufficient time for installing the program based on the rule evaluating to true: (Remaining maintenance window duration – Countdown >= MaxRunTime of Program 4) or (60 – 0 (because Unknown is resolved to 0) >= 0).
|Although the actual run time of Program 4 exceeds the length of the maintenance window, Configuration Manager 2007 will only stop the program if it is set to run with administrative rights and the allow users to interact with this program setting is not selected. Otherwise the program will not be stopped and will continue until the program completes or fails.|