Image for About Categories The Root Group


November 2020

Cloud or On-prem? A financial Look at 3 Scenarios

Running servers in AWS or Azure has become such a routine staple of modern IT infrastructure that some IT administrators get strange looks if they’re not doing it. But is it the right move? It might depend on what you’re using it for and how long you plan to run it. Consider these three sample workloads, and assume that they will need to run for a 3 year service life: Server 1 is a web server that needs a moderate amount of compute power and memory, but not much disk space. Server 2 is a database server running several large databases with high transaction volume. Server 3 is a file server requiring plenty of bulk storage that needs to be reliable, but not necessarily fast.

Let’s start with Server 1. In AWS, we might use a c5.2xlarge instance (8 CPU’s, 16GB RAM) and 150GB of EBS storage from the st1 (spinning disks) tier. Paying upfront to get the maximum discount, this server will cost $13,138 for three years of service. By comparison, a similar Azure instance (F8 with S10 storage) using the same payment model would cost about $15,300 over the same period. If on-site rack space and internet service was already a given, a Dell R340 outfitted with the same hardware specs plus typical enterprise features and a Windows Server license would cost about $2,998 at current list pricing.

For Server 2, let’s assume a requirement of 16 CPU’s, 128GB of memory, and 3TB of high-performance storage (5,000 IOPS @ 64KB per I/O). In AWS, this will be a r5.4xlarge instance with 3TB of gp2 storage, for a 3-year cost of $40,361. In Azure, the equivalent would be an L16s instance with 3 P30 SSD’s attached, for a 3-year cost of $49,237. In on-premises hardware, a server based on a Dell R740xd with a large number of 15k disks in RAID-10 for equivalent I/O performance would cost $15,843.

Server 3 will use 4 CPU’s and 16GB of RAM, making it a m5.xlarge instance in AWS, with 16TB of ST1 storage, for a 3-year cost of $33,275. Its Azure equivalent, a D4s instance with S70 storage, would cost $33,764 over the same time period. On-premises hardware, using a Dell R740xd configured to match the AWS/Azure specs with 10k disks in RAID-10, would cost $17,750 (or $9,883 with 7200 RPM). One takeaway from this exercise is that if you have a place to run the server on-premises, and you’re sure you’re going to use it for a few years, running the hardware yourself can save quite a bit of money. However, if the server is for a temporary project that might run for less than two years and then be retired, the cloud might be a great way to quickly and easily stand up those temporary services. Also worth considering: If you don’t have any suitable place to run servers on-premises, a typical half-rack rental including internet connectivity at a colocation facility might cost about $1,500/month, or about $75 per rack unit when full. That means that in a mostly-full half-rack at a colo, you could estimate the three-year cost of a 1u server at about $3,600, or a 2u server at around $7,200 – still a moderate savings over hosted IaaS for all three of these scenarios. One final point worth mentioning is that a small on-premises virtualization environment could cut the costs of running the hardware even further (offset by the cost of a hypervisor), especially if there are multiple “lightweight” workloads in play. You should also factor in the savings of using today’s hardware performance and reliability metrics for 4 or 5 years of production usage.