A little background: We have several Windows servers (2003, 2008) for our department. We're a division of IT so we manage our own servers. Of the four of us here I'm the only one with a slight amount of IT knowledge. (Note the "slight amount".) My boss says the servers need to be restarted at least weekly. I disagree. Our IT Department says that because she restarts them constantly that's the reason why our hard drives fail and power supplies go out on them. (That's happened to a few of our servers a couple times over the last four years, and very recently.)
So the question is: How often does everyone restart their Windows servers? Is there an industry standard or recommendation? Is our IT department correct in saying that because we re-start that's why we're having hardware issues? (I need a reason if I'm going to change her mind!)
I strongly disagree. Microsoft has made great strides since the good-ole [NT, anyone?] days with regard to stability and uptime. It's a shame the consensus within IT support has not changed along with this.
Only when required -- Either because of an OS/software update, a critical software failure which cannot be recovered via other methods, hardware upgrade/replacement or other activity that cannot happen without a restart.1
I have never seen a standard recommendation, per se, but I could not agree with any recommendation [except from MS themselves] which would indicate a required reboot at a specific time interval "just-because".
Restarting [and, more so, power cycling] is the most stressful period of hardware activity for a computer. You have most everything spinning up to 100% -- disk and fans... ...as well as significant fluctuations in component temperatures. Modern hardware is incredibly resilient, but that shouldn't be a reason for just bouncing servers, on a whim, a few times a week.
1 Aside, I loathe when techs "just" reboot a Windows server in the case of a failed service, or the like. I understand the need to get the service running again, but a reboot should be the last step in trouble shooting a server. Identifying, and fixing[!], the root cause of failure should almost never result in "Meh, just reboot it...."
Windows servers need to be rebooted monthly, if you're applying patches. You are applying patches, right? Right?
I'll give an alternative answer for a very specific case. The advances of the last 2-3 years may have changed this, but if you have heavily-used TS or Citrix servers that run a lot of interactive application (like Office), it's been a good idea to do weekly reboots off-hours, just to start from a clean slate for resources like stuck sessions, used desktop heap, etc. If you have your farm set up right and stagger the reboots, even if you have light use off-hours, users should not be impacted.
Sure, it's regular reboots of servers, but they're being used like desktops.
This is more a political and psychological issue than a technical one.
In my experience, certain people who worked with some of the much older versions of windows got it into their heads that they needed weekly reboots, and they have enshrined that philosophy in a little corner of their mind (they never do seem to notice when a reboot is missed when they're on vacation, though). Unless you've got some very unstable systems and applications, it's no longer based in reality.
On the flip side, frequent reboots may catalyze hardware failure, but are not terribly likely to be the cause of it.
The only time they should need to be restarted is for maintenance if everything is working correctly. Scheduled reboots are truly only a requirement when A) upgrading software, B) performing hardware maintenance, or C) dealing with a memory leak that can't be solved by restarting the software/service causing it. While windows isn't known for long uptimes, it does happen (last job had some Win2k boxes that were up for months at a time - they just worked). Just remember that any patching will most likely require reboots.
Microsoft has done a great job of improving their server OS over the years. And some servers you can run for 6 - 12 months before they start experiencing problems, some only make it 2 - 3 months. It all depends on what services and apps the servers are running. But they will all have a problem at some point. Windows updates, memory leaks, imperfect software, are just a few reasons.
For our clients with maintenance contracts we install updates and reboot their servers monthly. These clients have a much lower indecent of unplanned server issues, on the order of 1/5th as many issues as those that don't reboot regularly.
For those that say rebooting causes premature hardware failure, there was time when restarting hard drives and systems was a potential issue. However today HDDs and other components are build to withstand thousands of start stop cycles. If your server hardware is weak, would you rather know about it at a controlled time when you are there to address the problem quickly, or a random failure with a call in the middle of the business day saying a department is down?
I feel there is no downside to regular monthly restarts, while the upsides are clear and proven over time.
I'm by no means an expert on the subject, but depending on what services you have running, some may be susceptible to overflow on certain timing functions, such as timeGetTime() and getTickCount().
timeGetTime has a 32bit result, which equals the number of milliseconds since the computer was started. This maxes out at approximately 49.7 days.
I used to restart all my Windows servers each week and there was certainly a time when that was required. These days I only restart them when an update requires it. Of course that means they still get restarted every few weeks anyway.
I rely on the windows updates to configure my 'reboot schedule'. Let Windows manage itself.. for once! Only very rarely is a reboot required with our setup due to memory leaks...
I am a network administrator with a company that operates on several Windows 2003 2008 servers. I restart servers on a monthly basis typically not waiting longer than 3 months, as it is very crucial to be down for that short period of time.
However, with patches and windows updates I will be installing WSUS on a domain controller to apply updates etc. on a schedule based on my liking. This is to avoid any servers from updating themselves and unexpectedly rebooting...