Hardware/Infrastructure Opinion (if you had it to do over)

So I run a small shop of about 100 users.  Our back office software is a mix of SQL based products, and our IT shop (aka me) is really setup for vendor support instead of a lot of IT overhead in house. However we aren't keen on, and some vendor products don't support a full cloud based option, so in house SQL is still a must.

The project at hand is migrating SQL from 2005 to 2012. Currently we don't have high avail, we run tran backups every 15 min and full nightly (with offsites...), and accept the potential for data loss/downtime with this setup. Given this project, I have some funds to step up my redundancy (not shooting for uber high 99.99% uptime maintenance windows are still ok). This post is primarily a discussion on what you would suggest. Here is my proposal.

2 - Physical Storage boxes clustered using Server 2012 and SMB 3.0 (this will be the landing point for the VM's). Mix of SSD/SATA/SAS partitions.
2 - Physical VM host servers, clustered using Server 2012 with VM's landin on the SMB 3.0 shares. Guests on this host will be all our clients. Exchange, File Server, Print Server, Web Server, App Servers, New SQL (all with the exception of SQL currently reside as VM's).

Plan on running all 4 boxes on a 10Gb switch with an uplink to our normal 1Gb switches.

The other option would be to run 2 SQL 2012 boxes in an AG, and not as VM's at all, but my way gets me redundancy everywhere not just SQL.
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Simon Butler (Sembee)ConsultantCommented:
I have a standard design for this level of end user base.
3 physical machines.
1 copy of VMWARE Essentials (which allows three physical hosts).

VM 1: DC 1 / SQL
VM 2: DC 2 / Exchange / Application
VM 3: DC 3 / Exchange / SQL / Web Site

VM 3 is located off site using a DAG for Exchange replication, DFS for file replication and SQL replicating either via native tools or doing a backup which is replicated via DFS.

If the client has a heavy application (finance product for example) then that goes on one of the VMs as a dedicated machine.
One of the DCs is also the print server and also the file server.
VM 3 is naturally of higher spec than the other two, particularly in storage.

However if you have a very heavy SQL requirement, where a physical box would be a better option, then introduce that as a fourth machine, dedicated to SQL tasks. remove the SQL server as a VM.

Windows 2012 R2 across the board, Exchange 2013.
For 100 users I don't see the need to have dedicated machines for things like printer server, file server etc.
Obviously being VM, you can add Linux based things in there quite easily. VMWARE have a management appliance for example, you can also get appliances for monitoring tools like Observium, and the APC Network shutdown tools.

Aaron TomoskySD-WAN SimplifiedCommented:
personally I wouldn't run exchange for 100 users. office 365 (or even gmail) is usually the way to go for small shops.
bhiebAuthor Commented:
Let me clarify, we are already on Exchange 2010, and will continue to host that. Next year we will likely go to Office365.

What I'm looking for here is really hardware failure redundancy, running a DAG or SQL Avail Group is all fine and well (in fact we may do that eventually too). But I'm just looking for protection for the VM hosts themselves. Simon in your example if VM1 has a major hardware failure, it is going to take hours to diagnose and repair/rebuild. What I want to avoid is downtime while that box is repaired.

So either we can run high avail on each type of server (exchange, File, Print, DNS, DC, SQL...) or my thinking was just run a high avail for the entire VM host. That way if Host 1 blows out a drive array or controller, host 2 picks up and I can take my time repairing 1 without the user being any the wiser.
Has Powershell sent you back into the Stone Age?

If managing Active Directory using Windows Powershell® is making you feel like you stepped back in time, you are not alone.  For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why.

Simon Butler (Sembee)ConsultantCommented:
VMWARE have solutions that provide redundancy for the virtual machine infrastructure if you want to go down that path. At a cost of course.

"personally I wouldn't run exchange for 100 users. office 365 (or even gmail) is usually the way to go for small shops. "

That kind of comment makes me laugh. Try running 100 users in the cloud on a 4mb ADSL line. I have clients where that is all they can get and it means the cloud is not even possible. Cloud is not a one size fits all solution - I would go as far as to say that cloud is not a solution for a significant majority of end user environments for one reason or another. Most of the cloud deployments I do now are hybrid - some on premise, some in the cloud. That goes for clients of all sizes - from 10 users up to 150,000.

bhiebAuthor Commented:
Simon, thanks for the input. We will be using Hyper-V, it is our current platform and works well for our needs. The added benefit of the guest OS license being included in the Datacenter edition, means I can turn up a new VM at no cost. Our current VM host has 13 server 2008 guests, and runs quite nicely.

Sounds like your a VMware guy, and that fine. But using 2012 clustering I should be able to cluster the VM hosts so that all guests get the protection from that.

I guess if I had one question it would be what is better. Running high availability on the hosts, or the individual servers. I'm leaning toward the hosts for 2 reasons. 1 it protects everything all in one fail swoop, and 2 it should be more cost effective as I don't need 2 licenses for SQL and Exchange. I can always add high availability to things like SQL, later and have the best of both worlds.

The drawback with this is that I'm getting hardware failure only protection. I cannot easily take one offline to do an update and test a corruption in host A will also impact host B.  Or maybe I can, I just haven't gotten that far yet.
Simon Butler (Sembee)ConsultantCommented:
"2 it should be more cost effective as I don't need 2 licenses for SQL and Exchange."

You should probably check with Microsoft (and only Microsoft) about the licencing to answer that question. I am not sure that you can do it with single licences and would require additional ones.

Yes, I am a VMWARE person, I like my VM Hosts to not require a reboot every month.

The drawback is exactly what you have identified. On Exchange, with a  DAG, database corruption does not cross between the servers, because it is using the logs to build the database.


Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
bhiebAuthor Commented:
Good advice, I didn't think about the VM clones needing another copy. I'll let that help drive my decision. Thanks for bouncing the ball around on this. Much appreciated.
Aaron TomoskySD-WAN SimplifiedCommented:
Try running 100 users in the cloud on a 4mb ADSL line.

I'm only talking about an email server here, not office online or onedrive or any other "cloud" services. 100 users accessing email on a remote server, office 365 or not is not going to be a problem unless they are using email to send large attachments to internal users. I see far too many people running exchange and managing exchange and paying for exchange and hopefully paying for backup mx services when their resources could be better spend elsewhere.

Since the question includes hardware and software to support exchange, I wanted to at least bring up the question so the asker might look into it for their specific situation.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Windows Server 2012

From novice to tech pro — start learning today.