Within Microsoft System Center Configuration Manager 2007, maintenance windows (sometimes called "service windows") provide administrators with a way to define a period of time that limits when changes can be made on the systems that are members of a collection. These windows restrict the running of operating system advertisements, as well as software update deployments and software distribution advertisements. When a maintenance window is applied to the collection, configuration changes to collection member systems cannot normally be made outside of this timeframe through Configuration Manager. This provides a safety net for administrators to ensure that client configuration changes only occur during periods when little or no impact to the organization will occur.
|When creating an advertisement or deployment, you can set it to override the preset maintenance windows if the advertised program is critical.|
Maintenance Windows are defined by collection, and when configured, can be set with an effective start date, start and end times, and a set recurrence pattern. Although a window can thus recur on a regular basis, each window must be less than 24 hours in duration. System restarts caused by an advertised program or deployment are normally not allowed outside of this window, but this can be overridden on a per advertisement or per deployment basis. Maintenance windows affect only when the program runs; packages configured to download and run locally can still download content outside of the maintenance window.
|Maintenance windows are not inherited by subcollections.|
How Maintenance Windows Are Used on Client Computers
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 (or effective maintenance windows if multiple windows overlap) that are defined on the client computer are set for a period less than that program's Maximum allowed run time setting. In this case, a status message will alert the user that the advertised program will not run.|
Advertised programs with the Maximum allowed run time option set to Unknown can run past the end of maintenance windows. As the program maximum allowed runtime (the program duration) is set to Unknown, client computers in the targeted collection will not evaluate the program runtime against the defined maintenance windows. For more information about the Maximum allowed run time setting, see Program Name Properties: Requirements Tab. For more information about the client agent's countdown length setting, see Advertised Programs Client Agent Properties: Notification Tab.
For additional information about program running sequences when using maintenance windows, including several sample scenarios, see Program Run Scenario using Maintenance Windows.
By default, maintenance windows are not defined on Configuration Manager collections, but they can be set by administrators with appropriate security permissions. Specific permissions are required for defining a maintenance window or for overriding a maintenance window at the advertisement level. These permissions must be granted separately from other security rights for a collection and can only be granted by a site administrator.
Best Practice Recommendations
Maintenance windows are not intended to function as a primary scheduling method for programs. Instead, they are designed to limit the interference of software deployments or changes with critical system functions. For example, one likely use of a maintenance window would be to specifically restrict system changes on a collection of client computers to the period between midnight and 2:00 a.m., when network traffic is at a minimum or when those computers were not engaged in other activities.
It is recommended that if you use maintenance windows to restrict system changes, you should create specific collections for this purpose rather than use the default collections. Additionally, naming these new collections in a specific manner (such as "MW-<window name>") can be helpful. One or both of these methods will help you manage your collections more easily.
Additionally, it is strongly recommended that maintenance windows be defined after consultation with the appropriate server administrators. This is because different sites in a hierarchy often have different requirements governing their maintenance window needs and these should be taken into account. For example, a data center server administrator will know the best time frame for a maintenance window for the servers under their control, and the Configuration Manager can then create maintenance windows based on that schedule for the collection that includes those servers. However, if a server is assigned to a different site (perhaps in another city or country), the same maintenance windows should probably not be enforced on that server, and it should not be included in the same collection.
Multiple Maintenance Windows
When using maintenance windows on your network, it will not be uncommon for a client computer to be a member of more than one collection with active maintenance windows on them. When this happens, client computers that are members of two or more collections with active maintenance windows will adhere to all defined windows. The Configuration Manager report Maintenance Windows Available to a Particular Client can be used to determine the currently defined windows. For more information on using reports, see Reporting in Configuration Manager.
Depending on when each of the separate maintenance windows is set to occur, this may have differing impact on running programs on a client computer:
If the maintenance windows occur at different times and do not overlap, the client computer will have two (or more) separate maintenance windows on them. Each window will function independently and will be self-contained.
If the maintenance windows occur at different times but over lap, the client will effectively have a single maintenance window that encompasses the period covered by both active windows. In this way, a client that has two maintenance windows of 1 hour each that over lap by 30 minutes would have an effective maintenance window of 90 minutes. This window will behave as if it were 90 minutes long, with respect to allowing programs to run or restarts to occur.
|Because the client software forecasts system restarts based on the next available maintenance window (and not based on combined or merged windows), administrators may receive an inaccurate status message saying "...the program may never reboot..." (ID 10079). However, the actual runtime evaluation of programs and restarts is done based on the combined maintenance window. Thus, when there is enough time from a combined or merged window, the system will restart, despite that status message.|
What Maintenance Windows Do Not Do
The goal of maintenance windows is to limit program runs and system restarts outside of set windows. It is important to know that certain types of Configuration Manager network usage are not bound by any maintenance windows that are set, including the following:
- Sending wake-up packets to computers by using
the Wake On LAN feature or out of band management
- Advertisements or deployments specifically
set to ignore maintenance windows while running or restarting the
- Some types of content downloads and advanced
- Configuration Manager client policy
- Inventory data and data collection
- Desired configuration management compliance
- Network Access Protection remediation
If a program is set with Unknown as its Maximum allowed run time, it is not bound by the length of a maintenance window as long as the client countdown period is within the time left in the maintenance window.
Additionally, if settings (such as Restart Countdown) that utilize or affect the maintenance window are changed while the maintenance window is open, those changes will not be considered until the next applicable maintenance window. For example, if a maintenance window is currently open and has 4 minutes remaining in it, and the Restart Countdown is changed from 5 minutes to 1 minute, a queued program will not run in that maintenance window, even if it would otherwise have run with the new Restart Countdown.