Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win


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

Posted on 2014-12-05
Medium Priority
Last Modified: 2014-12-10
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.
Question by:bhieb
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 2
LVL 63

Expert Comment

by:Simon Butler (Sembee)
ID: 40484452
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.

LVL 39

Expert Comment

by:Aaron Tomosky
ID: 40486045
personally I wouldn't run exchange for 100 users. office 365 (or even gmail) is usually the way to go for small shops.

Author Comment

ID: 40486730
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.
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

LVL 63

Expert Comment

by:Simon Butler (Sembee)
ID: 40487222
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.


Author Comment

ID: 40489046
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.
LVL 63

Accepted Solution

Simon Butler (Sembee) earned 2000 total points
ID: 40491746
"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.


Author Comment

ID: 40491767
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.
LVL 39

Expert Comment

by:Aaron Tomosky
ID: 40491963
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.

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The following article is comprised of the pearls we have garnered deploying virtualization solutions since Virtual Server 2005 and subsequent 2008 RTM+ Hyper-V in standalone and clustered environments.
An alternative to the "For XML" way of pivoting and concatenating result sets into strings, and an easy introduction to "common table expressions" (CTEs). Being someone who is always looking for alternatives to "work your data", I came across this …
This tutorial will walk an individual through the steps necessary to join and promote the first Windows Server 2012 domain controller into an Active Directory environment running on Windows Server 2008. Determine the location of the FSMO roles by lo…
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…

636 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question