In Part 1 of this series, we talked about the options available to prospective hosting providers, and specifically about the costs of purchasing your own equipment. In this post we’re going to drill down into the costs of building a Citrix Service Provider hosting infrastructure on Amazon.
Amazon has some great offerings, and Citrix has spent a lot of time lately talking about using the EC2 infrastructure as a platform for Citrix Service Providers. There was an entire breakout session devoted to this subject at the 2014 Citrix Summit conference in Orlando. Anyone who signs up as a Citrix Service Provider can get access to a spreadsheet that allows you to input various assumptions about your infrastructure (e.g., number of users to support, assumed number of users per XenApp server, number of tenants in your multi-tenant environment, etc.) and calculates how many of what kind of compute instances you will need as well as the projected costs (annualized over three years). At first glance, these costs may look fairly attractive. But there are a number of assumptions built into the cost model that should make any aspiring service provider think twice:
- It assumes that you’ve got enough users lined up that you can get the economies of scale from building an infrastructure for several hundred, if not thousands, of users.
- It assumes that you’ve got enough free cash to pay up front for 3-year reserved instances of all the servers you’ll be provisioning.
- It assumes that, on average, your servers will need to run only 14 hours per day. If your customers expect to be able to work when they want to work, day or night, this will be a problem.
- It assumes that you will be able to support an average of 150 concurrent users on a XenApp server that’s running on a “Cluster Compute Eight Extra Large” instance. Anyone who has worked with XenApp knows that these assumptions must be taken with a very large grain of salt, as the number of concurrent users you can support on a XenApp server is highly dependent on the application set, and doesn’t necessarily scale linearly as you throw more processors at it.
If all of these assumptions are correct, the Citrix-provided spreadsheet says that you can build an EC2 infrastructure that will support 1,000 concurrent users (assuming 10 customers with 100 users each for the multi-tenancy calculation) for an average cost/user/month of $45.94 over a three year period. But that number is misleading, because you have to come up with $377,730 up front to reserve your EC2 instances for three years. So your first-year cost is not $551,270, but $803,081 – that’s actually $66.92/user/month for the first year, and then it drops to $35.45/user/month in years two and three, then back to $66.92/user/month in the fourth year, because you’ll have to come up with the reservation fees again at the beginning of year four.
There are a couple of other things about this model that are troublesome:
- By default, it assumes only a single file server for 1,000 users, meaning that you would administer security strictly via AD permissions. It also means that if anything happens to that file server, all of your tenants are impacted. If we instead provision ten file servers, so that each of the ten tenants has a dedicated file server, it bumps the average cost by roughly $5/user/month.
- If your user count is 100 users per tenant, but you’re expecting to support 150 users per XenApp server, you’ll obviously have users from multiple tenant organizations running concurrently on the same XenApp server. This, in turn, means that if a user from one tenant organization does something that impacts XenApp performance – e.g., launches the Production Planning Spreadsheet from Hell that pegs the processor for five minutes recalculating the entire spreadsheet whenever a single cell is changed – it will affect more than just that tenant organization. (And, yes, I know that there are ways to protect against runaway processor utilization – but that’s still something else you have to set up and manage, and, depending on how you approach the problem, potentially another licensing component you have to pay for.) If we assume only 100 users per XenApp server, so that we can dedicate one XenApp server to each tenant organization, it bumps the average cost by roughly another $1.50/user/month.
“But wait,” you might say, “not many VARs/MSPs will want to – or be able to – build an infrastructure for 1,000 users right off the bat.” And you would be correct. So let’s scale it back a bit. Let’s look at an infrastructure that’s built for 250 users, and let’s assume that breaks down into five tenants, with 50 users each. Let’s further assume, for reasons touched on above, that each customer will get a dedicated file server, and one dedicated XenApp server. We’ll dial those XenApp servers back to “High CPU Extra Large” instances, which have 4 vCPUs and 7.5 Gb of vRAM each. Your average cost over three years, still assuming 3-year reserved instances, jumps to $168.28/user/month, and you must still be prepared to write a check for just over $350,000 for the 3-year reservation fees. Why the big jump? Primarily because there is a minimum amount of “overhead” in the server resources required simply to manage the Citrix infrastructure, the multi-tenant Active Directory and Exchange infrastructure, etc., and that overhead is now spread across fewer users.
Now consider that all of the prices we’ve been looking at so far cover only the compute and storage resources. We haven’t begun to factor in the monthly cost of Citrix or Microsoft Service Provider licensing. In round numbers, that will add another $25/user/month or so to your cost, including MS Office. Nor have we accounted for the possibility that some of your users may need additional SPLA applications, such as Visio or Project, or that some tenants may require a SQL server or some other additional application server. Nor have we accounted for the possibility that some of your tenants may require access to the infrastructure on a 24×7 basis, meaning that their servers have to run 24 hours per day, not just 14.
This is why, at the aforementioned session at the 2014 Citrix Summit conference in Orlando, the numbers presented in the session were challenged by several people during the ensuing Q&A, the general feedback being that they simply didn’t work in the real world.
So let’s quickly review where we are: As stated in Part 1 of this series, an aspiring hosting provider has four basic choices:
- Buy hardware and build it yourself. This was discussed in Part 1.
- Rent hardware (e.g., Rackspace) and build it yourself. This was not covered in detail, but once you’ve developed the list of equipment for option #1, it’s easy enough to get quotes for option #2.
- Rent VMs, as we have discussed above, and build it yourself.
- Partner with someone that has already built the required infrastructure.
We would respectfully submit that, for most VARs/MSPs, option #4 makes the most sense. But we’re biased, because (full disclosure again) ManageOps has already built the infrastructure, and we know that our costs are significantly less than it would take to replicate our infrastructure on EC2. And we’re looking for some good partners.
In Part 3, we’ll go into what we believe an infrastructure needs to look like for a DaaS hosting provider that’s targeting the SMB market, so stay tuned.