A tale of two solutions: Azure VMs vs. On-prem ServerAlex Fields
I’ve been studying two different solutions to the same small business problem for a while now, and I think it is high time I finally published an article on it. I run into a fair number of clients who are interested in moving 100% of their services “to the cloud.” In other words, they want me to Get Rid of Their Servers (should I trademark this)?
Oftentimes, we end up “consolidating” down to a small Windows Server instance (on-premises) instead. We still keep those cloud services like Office 365 part of the picture (if you are still clinging to the old SBS days and on-premises Exchange, please go read this, then punch yourself in the face for me, and finally come back and finish reading the present article). But note: there are two ways to offer basically the same solution when it comes to the rest.
Let’s examine how I would approach an “apples to apples,” cloud vs. on-prem, deployment of Windows Server in a small business (I’m talking 25 users or less here). I serve larger businesses than this, but I want to keep my example on the smaller end of SMB for two reasons:
- Because that is still the majority of the SMB market, and
- Because simplicity is very revealing
Let’s fix some variables to start:
- 25 users or less
- Office 365 E3 for productivity, Email, SharePoint, OneDrive, etc.
- Server requirements are fairly minimal: 500 GB – 1 TB of shared file & folder data
- Some of this data is not appropriate for SharePoint (databases, app data, etc.)
- Line of Business app(s) may also access shared folder data
- Remote Access is a must
Solution # 1 : Beam me to the cloud, Scotty!
We have to provide a security boundary and authentication (Active Directory) as well as file sharing (for Line of Business Apps) and remote access. So what we’re going to do is create a very simple Virtual Network in Azure, and deploy exactly two virtual machines (both VMs will have backup enabled in Azure):
Server 1: SRV-DC: A1_V2 (1 CPU core / 2 GB RAM) = ~$40 / month
The first VM is just a small domain controller/file server, for providing authentication, DNS and file sharing. We will also install Azure AD Connect here, so that our directory can be synchronized to the Office 365 tenant.
Server 2: SRV-RD: A4_V2 (4 CPU cores / 8 GB RAM) = ~$172 / month
The second server provides users with secure remote access to this cloudy environment via Remote Desktop Services. You might also install a Line of Business application or two on here. The “supercharged” version of this VM would be one more step up, A8_V2 (8 CPU cores / 16 GB RAM), which would run about $360/month. If you have a lot of power users who like to have many things open at once, this upgrade might be for you, but most small offices can get by on less.
Azure Virtual Network w/ S2S Basic VPN = ~$28 / month
Our virtual network will be configured with Site-to-Site VPN, so that users in the office can join their computers to the domain (giving us single-sign on, visibility and central management/control with Group Policy and so forth).
Storage, backup, egress data, endpoint protection, etc. = ~ $60-100+ / month
Don’t forget that you’re going to have some other costs as well. For example storage, backing up your instances, and of course any “outbound” data from this environment is also charged. We’ll just estimate this on the high end to be safe.
Okay, now we’re rocking. What is the cost of this environment, all in?
Total = ~$300 – $480 US dollars per month, depending on options.
Solution # 2 : I’ll take one order of traditional server please!
To cover our assumptions, I just need a single, small server on-premises. I want that thing under warranty, and I’d like a backup. Actually two backups. So I might have some external storage or NAS device, as well as a cloud backup, e.g Azure Backup for a few measly dollars a month. How we configure this server is exactly the same as before: I will have Windows Server Essentials or Standard edition, most likely, and one or two virtual machines.
Local access: Active Directory, DHCP and DNS are live in your office, for quick & reliable network access to files, folders and shared printers, locally. You are on a low-latency gigabit network. So it is fast and responsive, and oh yeah, you can centrally manage all of your resources too–including printers, even. It’s like we’re in the future!
Remote access: Two choices: if you’re just sticking with Server Essentials licensing, then you’re saving some $, and getting a pretty great Remote Access page that will grant users access to files OR (what most prefer) their own desktop. Not some “terminal server” experience, but their actual desktop–the same one they use every day at work. Otherwise, you can also provide an RDS server, similar to our first option in Azure, and of course that can be configured to allow RDP to local workstations as well.
To be safe here, I’ll just stick with Windows Server Standard edition–I can always enable that Essentials Experience anyway, and in this example I will be on-track for “apples-to-apples” comparison with the above. Such a server would come out to between 4,000 to 6,000 USD, depending on options, with Windows licensing included. Also to be fair, we’ll include the assumption that we still need Azure Backup, endpoint protection, a UPS for power conditioning, etc. What does this solution run, on a lease (all hardware & software included)?
~$166 – $233 / month, depending on options.
Here is what mine looked like (~$5K):
- Windows Standard Edition
- 1x 6-core proccessor
- 32 GB of RAM
- 2 TB SAS storage, 10K RPM, RAID-5
- Dual power supply
- 1500 UPS
Sure, you will have some additional cost with a monthly power bill, etc. But otherwise, costs will be even. In either scenario, you will probably want an ISP or two, and you will need to have those servers managed by a service provider either way. So all else being equal, we’re talking about half the price in terms of raw cost. Meaning that I can afford to include the implementation labor in my lease, and still probably have it come in less than that solution in the cloud.
I think people are still enamored with the cloud (thanks, marketing engine)–and with the idea that they can “Get Rid of Their Servers Now!” (TM pending). But here is the thing: what is an infrastructure, essentially? It is just a cost. Not a value, like productivity apps; it is pure cost center, and nothing more. I can achieve essentially the same functionality with either solution, so why would I spend 2x as much just to keep the lights on in the cloud?
Maybe there are other carrots that would draw you into this type of solution. The promise of better up-time perhaps? Or maybe just quicker time to deploy? (That is the one I like–no more waiting on equipment for my project to start!)
But when customers come to me asking about this option, I usually walk them through an exercise similar to what we just went through, and they inevitably shake their heads in disappointment. Even if the cost were more even, I think I would still prefer the good old fashioned local network experience, anyway. Maybe someday we will all have gigabit fiber connections to our businesses, but that day is not yet here, I’m afraid. Until then, and/or until prices fall a little further, I still like the on-premises Windows box in the small business. Sorry to be the one to say it.
Nice article. However, to use RDS in Azure the customer would either have to buy full RDS licenses via open licensing and then also have Software Assurance (SA) on them, or rent licenses via a SPLA agreement. This make the solution a lot more expensive.