Rules To Better Windows Servers
RuleSummaryIntro
Hold on a second! How would you like to view this content?
Just the title!
A brief blurb!
Gimme everything!
Page Content
We all know it’s important to keep our servers updated. Unfortunately though, by default, Windows will automatically download and install all new Windows Updates on your servers. This will mean the servers will occasionally restart to install updates when you don’t want them too. You will also get annoying popups trying to get you to restart the computer.
-
- Bad example – it is automatically installing and you want control over your patching. Accidentally press Restart Now on a Production server and your users won't be happy!
Note : Server patching is also achievable via SCCM and you get more control over restarting windows like this. WSUS can also be used in conjunction with group policies to handle restart times better.
The best ensure you are still downloading updates but not installing them automatically is to use Group Policy.
- Create an Organization Unit (OU) in Active Directory, and put all your Production Servers in the OU
-
- Add all your Production Servers to the Production Server OU
- Create a new Group Policy object and link it to the Production Server OU
-
- Create a new Group Policy for your Production Servers
- Edit the new Group Policy object and drill down to Computer Configuration | Policies | Windows Components | Windows Update
- Edit the Configure Automatic Update Properties item and enable it
- Set the Configure Automatic Updating option to 3 – Auto download and notify for install
-
- Edit Configure Automatic Updates Properties and enable 'Auto download and notify for install
After the new Group Policy propagates, you will notice the update setting is now locked on the servers in the Production Server OU.
-
- The Group Policy locks the Windows Update setting
Now the next time you plan to reboot your server you can install updates quickly and reboot – keeping your servers updated without unplanned reboots.
The following screenshot is the settings applied to the default domain policy for the same group policy settings but this will apply to all machines joined to the SSW domain.
-
After a new Service Pack is released for a product (for example, Exchange 2010 Service Pack 1), users and management can get very excited about new features that the Service Pack will bring that will help them out, or fix problems that they had been having with the product.
Microsoft generally test their Service Packs very well, but things can go wrong.
As a general rule, we wait 4 weeks before installing a new Service Pack, and tell everyone to hold their horses.
Figure 1 - Even though managers and users might be pressing you to install a Service Pack - tell them to hold their horses!
After the 4 week period has expired perform the following tasks before installing the Service Pack:
- Do an search for any trending problem when updating to the new Service Pack
- Check for any known issues in the Microsoft KB with the Service Pack
- Read installation documentation
- Backup your system, or if you are using Hyper-V, take a snapshot
- Reboot before you are about to install a Service Pack
Following this rule should prevent disaster in the event that a Service Pack is troublesome.
How do you keep your system up to date?
FileHippo is a handy tool to check if there is any software on your machine need to be updated.
-

- Figure: FileHippo tells which software need to update
If you are dealing with a single server, there is no way to achieve 100% uptime, when updating or restarting a server.
So set your website up correctly with at least 2 front ends, and 1 backend (the SQL Server).
Figure: Good Example – When one server goes down, the web site remains up
Then, use a Network Load Balancer (we recommend Microsoft’s build in NLB) which allows you to spread web site load to multiple servers, but even more helpful when you need to do Windows Updates or make changes to web servers in your environment.
Follow the below steps on your test server first, get the application tested passed, then move on to production.
- Open the Network Load Balancing Manager
- Right click on the machine you want to update | Select Control Host | Click Drain Stop
Figure: The 2 green icons indicate both servers are live with users - Do a drain stop on the server you want to make changes too
- To view the current connections on the server, open a command prompt and enter netstat -an. You will be able to see the connections list dropping as users are sent to the other server
Figure: Run "netstat -an" to view the current connections on the server
- Allow the NLB to finish sending the connections to the remaining servers. The server you have drain stopped, will turn red when all the users have been moved to the other server
Figure: When the server turns red, the connections have been dropped and you're ready to update
- Optional – if you are using Hyper-V, take a snapshot of the server you are about to make changes on
- Restart
Figure: Now that the server isn't being hit with users, perform your updates. Click "Restart Now"
- Optional – Do a smoke test (open the site and check its working)
- Optional – Run any automated tests (for example Telerik Tests)
- When the server ready, add it back into the load balancer. Right click on the machine | Select Control Host | Click Start
- The server icon will return to green, and users will start being sent to the server again
Figure: The server will now accept connections again
- Follow the same process for the other server (or multiple)
Congratulations you've just updated your servers with 100% uptime.
It is important install your printers automatically to all clients that logon to the domain.
For PCs that are not in the domain, the printers won’t be automatically installed.
So you should add a DNS alias which maps \\printer to your print server.

- Figure: \\printer takes to this window, were you can "Add" the printer via Connect
Note: It is better to automate mappings via GPO preferences. As a backup, you can allow users to manually map as above.
A “Too
slow” is not enough info.
Request
an image of the “Resource Monitor”
Then
after you decide there is justification:
• Do a typical action – take a new
image or baseline.
• give the additional resources e.g. Ram
and processors….
• Do the typical action again – take
another image of the “Resource Monitor”
• If there is some improvement, reply
“done” (otherwise reply “not done”)
Note:
An ideal email subject prefix for more resources would be e.g. “Performance issue
– “Machine name”
Figure: Use “Resource Monitor”
prior to allocating more RAM on a VM

Figure: If you see something like
this, pass their request :-)