Should SQL Server 2012 & IIS be on the same machine?

Everyone:

I've seen some posting but nothing specific to 2012.  We purchased a large 2012 box replacing our old SQL 2005 machine that ran for 10 years.  Our networking group now wants to move IIS (Intranet) and possible the WinForm applications to this box.  From everything I've read is that even though it can be done you probably shouldn't do it.  Any details about why/why not would be very helpful.

Sincerely, Dale

September 2nd, 2015 3:50pm

For security purposes it is good to separate web and database servers, preferably having a firewall between the two to avoids any attacks. A web server is exposed to the world at large and hence prone to attack.

Then there is the performance aspect. It's common knowledge that SQL Server likes to consume memory. So does IIS, particularly if the web-site makes extensive use of caching and session information. So you have a potential conflict here as well. Having a dedicated machine for SQL Server is clearly better than having a single machine doing all the load.

Then, separation allows easier identification of the need to tune and the ability to tune individual hardware components.

Free Windows Admin Tool Kit Click here and download it now
September 2nd, 2015 4:08pm

Hi Dale,

You will probably get loads of answers.

Firstly, it is more than technically possibly and I would say that in some instances it actually makes sense. I am not saying in yours it does but it could. On Dev / Test it's almost always the same machine and for production.. its usually only separate because the SQL is used for more than 1 "application tier".

1) Security of the Data

Depending on what data you even have (PII, HBI, MBI etc), you may not want a service running on your machine that requires non-SQL admins to publish files and or data. You may end up with some security holes. Will it for sure, no but it's more likely as they are on the same machine (using the same memory etc too). Yes Yes different memory spaces, but physically.. still the same

However at the same time, I've had systems running IIS, BizTalk and SQL all on the same box SPECIFICALLY because we needed it to be sequestered from everything else on a private network and the machine itself was specifically large and intended for that purpose.

2) Performance. Really depends here. If you truly have a large box, and your traffic is not... super huge (I mean millions of page views etc a day), then...honestly buying two machines is a waste of time and money. (note you should at least have some type of VM backup :-) )

3) Supportability. What is your backup / recovery / maintenance etc that you must follow. How does that impact the fact (if at all) that they are together.

I've been doing this stuff for over 20 years and personally I have no issue with them on the same box. Especially if the box is large enough for it.

Other than personal preference, there is no technical reason you cannot run them together. There is also no specific set of reasons that I can think of NOT to run them together.

BizTalk, CRM, IIS, VSTF and even SharePoint can all be configured on a single system. And in many cases, while it's only done for Dev / Test, I've seen plenty of businesses whom don't have the resources to buy systems to run one system.

The biggest problem is if you have to have multiple "admins" or people touching the machine, and now all of a sudden you have all these remote sessions and people being goofy, rebooting, patching incorrectly etc etc and impacting the other "technology" stack.


  • Edited by Anokneemous 11 hours 6 minutes ago Updated Detail
September 2nd, 2015 4:10pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics