I wanted to set up the infrastructure for Octopus properly. This meant that I needed:
- A SQL server
- A TeamCity server
- A Web server or two (for OctopusDeploy.com)
- A domain controller
- A handful of servers for an Octopus test farm
Some of these servers are public, most would be private. I just moved overseas so I didn't want to put another server in my living room. I started by looking at some cloud providers. Here are some really rough, back-of-the-envelope calculations (for Windows servers):
|Provider||CPU||RAM||Per hour||Per month (750 hours)|
|Amazon EC2||1 core||1.7gb||$0.12||$90|
|Azure Compute||1 core||1.75gb||$0.12||$90|
Discounts are available if you buy spot instances or reserve hours, but from what I can gather, I'd be looking at $400-$500/month to have half a dozen 'small' servers on the cloud.
For my needs, it turned out to be cheaper to rent a high-spec dedicated server, and to have my own mini-cloud. LeaseWeb came to the rescue - for the last three months I've been renting a Quad core, 24GB RAM server for €190 (about $270 today). With 24gb I can run 10 'small' Azure instances, or about $900 worth of 'cloud'. What I do miss out on is the rapid provisioning. If I needed a second of these servers, it could take over a week to provision one.
If Octopus was a cloud service, I'd definitely look at offloading this to a real cloud provider. But for running TeamCity and a handful of test VM's, it appears to me that putting a server in a data centre is still more cost effective. Is that your experience?
Hello, I'm Paul Stovell
I'm a Brisbane-based software developer, and founder of Octopus Deploy, a DevOps automation software company. This is my personal blog where I write about my journey with Octopus and software development.
I write new blog posts about once a month. Subscribe and I'll send you an email when I publish something new.Subscribe