System Center Configuration Manager 2012 Maintenance Windows - Getting to know you.

Issue:
You are thinking about using Maintenance Windows in your System Center Configuration Manager Environment for more control over Software Updates or Task Sequence deployed to a collection. You have questions but find multiple documents on the internet about Maintenance Windows so where to start.

Resolution:
I have placed together this post to be a one stop shopping introduction to Maintenance Windows covering the following areas:

* What they do
* How to configure
* How the math works
* Troubleshooting
* Reference Links

What are Maintenance Windows:

"Maintenance windows in System Center 2012 Configuration Manager provide a means by which administrative users can define a time period when various Configuration Manager operations can be carried out on members of a device collection. You can use maintenance windows to help ensure that client configuration changes occur during periods that do not affect the productivity of the organization."

Above is quoted from (How to use Maintenance Windows in Configuration Manager: https://technet.microsoft.com/en-us/library/hh508762.aspx)

How to Configure Maintenance Windows in ConfigMgr 2012:

(1) Open the ConfigMgr 2012 Console
(2) Navigate to Assets and Compliance \ Device Collections, then select the collection you want to configure the Maintenance Window for
(3) Right click the collection, select "Properties"

(4) Select the "Maintenance Windows" tab for the collection in the Properties dialog
(5) Click the Yellow asterisk to create a new Maintenance Window

(6) Configure the following:
    a. Name
    b. Effective date (When it will start being enforced)
    c. Start time and End time for the Maintenance Window
    d. If you want to use Coordinated Universal Time (UTC)
    e. Recurrence pattern (How often you want this Maintenance Window to occur)
    f. Apply the schedule to: comes with three options:
        * All deployments (Any deployment assigned to this collection)
        * Software updates (Software Updates only)
        * Task sequences (OSD Task Sequences only)
(7) Click OK and then click OK on the collection properties

Maintenance Window Math:

Components for a Maintenance Windows that Make up the Calculations:
(a) Restart Countdown – This is set in the ConfigMgr console and ONLY gets incorporated into the formula below if the user is actually logged onto the machine.
(b) Maximum Run Time - This is the amount of time it takes for a single update to install. The default for software updates is 20 minutes and for Service Packs it is 60 minutes.
(c) System Restart Turnaround Time - This is the amount of time we allow for the system to reboot. The default is set in the site control file and should not be changed without contacting Microsoft Support. The relevant section of the site control file looks like this: (setting is represented in seconds) PROPERTY <SystemRestartTurnaroundTime><><><600>

The formula:
Time for service window check = Restart Countdown (If a user is logged on) + Maximum Run Time + System Restart Turnaround Time

How it works:
During a Maintenance Window the client will calculate the time remaining using the formula after the first update is installed, this will determine if another update can be installed and the client will continue to re-calculate after each additional update installation. This will continue until, it is determined that the remaining time in the maintenance window is not enough time to allow another update, but still can accommodate the Restart Countdown and the System Restart Turnaround Time.

The Maximum Run Time does not set that time used in stone, example if you have a software update with a Maximum Run Time of 20 minutes but it only takes 5 minutes to install, because the calculations are performed after each install completes; you truly are only using 5 minutes in the equation not 20.

What if a Machine is a part of multiple collections with Maintenance Windows:

If Maintenance Windows do not overlap, they are treated as independent Maintenance Windows.
If Maintenance Windows do overlap, they are treated as a single Maintenance Window encompassing the time period covered by both Maintenance Windows.

Maintenance Window Troubleshooting:

Troubleshooting Maintenance Windows can take a little to get used to, however the following logs will assist you in locking down any trouble areas(Logs are located in "C:\Windows\CCM\Logs"):

* ServiceWindowsManager.log
* UpdatesDeployment.log
* RebootCoordinator.log

When looking at these logs, remember to watch for \ filter for key words like:

* Event Time
* Next Event
* Start Event
* Duration
* Time Required
* Active Service Window
* No Service Window Available
* Service Window not currently Active

Reference Links:

How to use Maintenance Windows in Configuration Manager: https://technet.microsoft.com/en-us/library/hh508762.aspx
Technical Reference for Log Files in Configuraiton Manager: https://technet.microsoft.com/en-us/library/hh427342.aspx
Want to know the difference between Business Hours vs. Maintenance Windows? Look at this great article here: https://blogs.technet.com/b/server-cloud/archive/2012/03/28/business-hours-vs-maintenance-windows-with-system-center-2012-configuration-manager.aspx