Why we double down on AWS and the cloud

Codeship NewsDevOps

Reading Time: 3 minutes

Blippex.org published a blog post yesterday why they moved away from AWS. In the blogpost and HN discussion we recognized a couple of important points were missing in favor of AWS or cloud services in general. Here is Codeship’s take on the topic.

Full Disclosure: We know the guys from Blippex very well as they are also from Vienna.

Blippex’s blog post didn’t mention that the team behind blippex has been working on their former company, Archify, for a few years. The technology behind Archify evolved into what is currently blippex. At this point they know and understand their infrastructure needs. Thus a self managed hosting became an option but would probably have been hard to do before when building the infrastructure.

AWS helped them a lot in the past to be able to experiment and build the infrastructure they need, as they mention themselves.

From the ensuing discussion on the blippex blog and Hacker News two main points were missing.

Speed of innovation is how you win

For a startup speed of innovation trumps everything else. Getting your MVP out the door as quickly as possible has to be priority number one. And building on top of that MVP until there is product market fit needs to happen quickly.

With this in mind being able to create, destroy and change servers at will is not just nice to have. It becomes essential to spend the least amount of time on maintaining and building servers and the most on building the product, marketing and everything else necessary to build the company.

Being able to focus on the growth of your business early on is way more important than infrastructure cost optimisations. We made the cost optimisation mistake ourselves a couple of times and lost lots of time that we could have invested in our growth.

AWS or other cloud hosting providers might be more expensive when only compared on raw power. The flexibility they give your team to focus on what is important for your business is way more important and will determine the success of your product and company.

Sign up for a free Codeship Account

AWS is great with Automation, stupid without it

We rebuild our complete infrastructure nearly every day. Cloud infrastructure and good automation give you these abilities. As Max mentioned himself:

The biggest downside is not to be able to start new servers just with a mouse click :)

This is one of the major upsides of AWS and not just a side note. And it’s not just about scaling to 10x traffic, although that can be helpful. Cloud servers are not 24/7 machines. They are building blocks that should be treated as immutable and volatile.

Considering an EC2 instance as a normal server that you ssh into and apt-get update/upgrade is plain wrong. Even Amazon says so. Building servers through automation is key. Everything can be and should be automated.

Take for example one comment made on Hacker News:

that somehow that instance of Linux running in EC2 doesn’t require the same maintenance as a physical one. It does.

It really does not if you do it the right way. Start by automating every step necessary to get a server up and running from a barebone OS. You can then store those images as EC2 AMIs. Now whenever a server starts to misbehave you simply destroy and replace it.

While it is technically possible to get there with netboot on self managed servers you have to sacrifice a part of your current infrastructure if you want to rebuild a server. With the cloud there is no sacrifice, as you simply launch new instances. This is a very different world.

Recently new tools have come up to help manage cloud infrastructure. We started looking into Packer over the weekend and will be switching to it for our test server deployment over the next couple of days.

And Packer is just one of a number of tools that make managing modern cloud infrastructure a lot easier. We will talk about some other tools we use like Vagrant or Ansible in the future.

Conclusions

AWS is expensive when you compare only the raw server costs and do not use reserved instances. But that premium lets you focus on building your product far more than going with a self managed machine. Especially for early stage startups or projects this makes all the difference in the world.

As this was a big discussion yesterday on Hacker News we’d be interested to know what you think. Feel free to add your thoughts in the comments.

Subscribe via Email

Over 60,000 people from companies like Netflix, Apple, Spotify and O'Reilly are reading our articles.
Subscribe to receive a weekly newsletter with articles around Continuous Integration, Docker, and software development best practices.



We promise that we won't spam you. You can unsubscribe any time.

Join the Discussion

Leave us some comments on what you think about this topic or if you like to add something.