Tips and tricks for migrating to Amazon Web Services (AWS)

With all the hype about 'moving to the cloud', at some point you wonder: is it really worth it? From my experience as the CEO of mobile performance marketing platform ClicksMob, the answer is unequivocally, yes, but only with the proper service and the proper 'know-how'.

In mid-2015, we decided to make the leap and migrate to the cloud with the help of Amazon Web Services, or AWS. The decision was a natural choice for a company bursting at the seams to fill a 400 per cent spike in consumer demand. Without a doubt, it has proven to be a worthwhile endeavour having kick-started improvements in scalability, agility, cost-efficiency and overall high performance.

Roadmap to the AWS Cloud

Valuable as it may be, migrating your startup’s core infrastructure to the cloud is fraught with challenges, both anticipated and unanticipated. A lesson that we learned firsthand. Diving in headfirst, we were forced to quickly adapt to not only meet these challenges head-on, but also to fully leverage the countless benefits AWS can, and does, deliver. It paid off to be sure, but there are certainly lessons to be learned for others looking to undertake a similar transition to the widely popular AWS.

With that in mind, here are my top four tips and tricks for navigating the many roadblocks to shifting your startup’s infrastructure to the cloud via AWS, paving the way for ambitious (and feasible) growth plans.

When in doubt, baby steps

Migrating your startup’s critical infrastructure to AWS can be daunting. Cloud migrations are often laborious, requiring seemingly endless steps and manual adjustments. What’s more, it’s a risky proposition. Enterprises must frequently contend with regulatory and compliance issues, unexpected budget busters, poor performance, security concerns and more.

So, why rush into it? Prior to signing up for AWS, we had been using Amazon Elastic Compute Cloud, also known as Amazon EC2, since our establishment in 2013. So when it was time to take on the full system migration, selecting the cloud server that best-suited our needs was an easy decision. We were both familiar with Amazon’s cloud offerings and had grown to trust in them.

For startups hesitant to take on a full, one-time transition to AWS, this is one option that may smooth the often bumpy road that can be cloud migration. Another option is to utilise Amazon’s other cloud components to virtualise the workloads ultimately targeted for cloud migration. In any case, it doesn’t have to be an all or nothing scenario, even if your end goal is to transfer all operational physical servers to AWS.

Don’t forget the bare necessities

When undergoing the potentially time-consuming and arduous task of migrating your startup’s infrastructure to AWS, it becomes easy to overlook the little details. AWS is a top-notch provider with its AWS architectural advisers supporting new users throughout the implementation process, but it can only guide you through the process so much. Certain factors rely solely on a startup’s ability to cover its bases and facilitate the process as much as possible.

The most poignant example of a basic necessity too often overlooked in the hustle-and-bustle of cloud migration is your startup’s Internet bandwidth. To put it simply, it does little good to have a high-performance hosted application server if the Internet bandwidth is limited and stands in the way of a quality user experience. There is no shortage of compute and memory resources available with AWS; in fact, it can be nearly unlimited depending on your preferences. But if your startup’s Internet bandwidth is not up to par, it will likely impede overall application performance.

Indeed, 'performance' obstacles remain one of our greatest challenges post-AWS conversion, due to basic operational factors in need of crucial updates in order to more efficiently match this significant overhaul of our company architecture. While AWS itself has certainly delivered, it took some time for us to gain our footing in the new structure in order to maximise the performance capabilities provided by AWS.

As the number of user requests flooded in, we were unexpectedly confronted with the challenge of adequately storing the data at minimal cost. In the months since the transition, our team has crafted an in-house automated mechanism in which each day we control and define the appropriate capacity for each partition. All’s well that ends well, but had we known what to expect, it would have been useful to evaluate our basic operational necessities under the lens of the updated infrastructure.

Always take a test drive

The lesson here is that you wouldn’t buy a car before test driving it, so treat your startup’s infrastructure with the same consideration, at the very least. Particularly for older applications that run on legacy operating systems, cloud migration may simply not be an option. The only way to know how an application will behave in a cloud environment is through precursory lab testing. This process can even reveal hidden challenges and required steps for cloud migration specific to your startup’s application.

In fact, I would argue that lab testing is a key component to establishing the optimal migration strategy and assessing potential risks preliminarily. At ClicksMob, we conducted thorough lab tests ahead of the migration, a procedure that proved invaluable down the line.

Needless to say, that for any business based on a cloud platform, being prepared for an outage is imperative. A few months after the 'big migration', AWS suffered a major disruption. More than twenty different services on the AWS platform began failing one by one, impacting some of the Internet’s biggest apps and websites including Tinder, Airbnb, IMDb, and more. Over the course of eight hours, users reported problems accessing content on a vast number of websites -- a costly error for Amazon.

Forward planning as a direct result of the previously conducted lab tests allowed us to be back up and running— and fully operational— after just twenty minutes. Early on we discovered that an emergency plan would be mission critical in the event of an AWS outage such as this. In pursuit of this goal, we established an internal system composed of several sub-systems that are able to function at any location within the Amazon domain. In short, we can mobilise our sub-systems across regions to initiate a system recovery within a matter of minutes should an outage occur.

Initial lab testing highlighted the need to establish a risk management plan saving our company time, money and, most importantly, customer satisfaction.

The economics of scalability

My final piece of advice depends on the nature of the startup involved in terms of its operational dependence on hardware-intensive workloads. Let’s get it straight: AWS charges customers a resource consumption-based monthly fee. Translation: a cloud-based, high-performance computing environment can become cost-prohibitive. The bulk of the cost for AWS largely stems from CPU and disk I/O consumption. Be sure to evaluate the cost-benefit ratio based on this pricing model, before diving into the deep-end, and making a full transition to the AWS cloud.

With AWS, even very large, resource-intensive workloads can be safely migrated. However, the debate is around whether or not they should be given the costs involved. This can be further exacerbated by the failure to failover, if you will, in the event of an outage. Extremely hefty workloads may consume so many resources that it would be nearly impossible for them to failover to another host if any other workloads are running on the host. In other words, startups that are 'too big to fail' might want to consider these additional economic ramifications of pursuing scalability through AWS.

Mitigate before you migrate

Implementing these simple tips and tricks into your decision to transfer your startup’s infrastructure to AWS can save immeasurable hours, and potentially, investment dollars. For ClicksMob, the migration to AWS was unquestionably worthwhile, greatly enhancing our architectural responsiveness and agility. Better yet, IT maintenance reduced to almost zero after we migrated to AWS with the help of tools like Auto Scaling, which enabled the system to essentially take care of itself.

All the same, there is certainly no shortage of potential setbacks and insider tips for improvement that can shape a fellow startup’s overall successful migration to AWS. It’s easy to get caught up in the hype of moving to the cloud and rush your startup’s AWS migration. But slow down, and be sure you create a well-informed migration strategy in order to mitigate for potential risks as well as maximise your AWS experience for your startup’s optimum development.

Is AWS worth it? Yes. Should you do it tomorrow? Take a beat, and research the best-fitting strategy for your startup’s unique future with the cloud.

Avishai Shoushan, CEO of ClicksMob

Image Credit: Gil C / Shutterstock