Several years ago I joined a company that was in the middle of a frantic architectural transition that prioritized speed over cost. During my first few months I watched our Amazon Web Services bill creep from $100K per month to over $350K. While at first our CEO was accepting of the growing costs as a necessary one-time expense, when the AWS bill surpassed $350K, he realized we were putting our business at risk. The result: a new mandate to optimize the cost, usage, performance, availability and security of our cloud infrastructure.
What followed in the next year was a journey that took my team through what I call the Four Stages of Cloud Optimization. By the end of the journey we had slashed our monthly AWS expenses in half while simultaneously doubling our customer base. We also had learned how to effectively and securely operate thousands of cores of compute and petabytes of storage in the cloud with high efficiency.
In this article, I’d like to outline the Four Stages of Cloud Optimization in order to allow others to assess where they are at, and what is required to take them to the next level.
Chaos is exemplified by a lack of visibility and controls. An organization at this phase will often be relying on the best intentions of individuals to make effective use of the provisioned infrastructure. Common signs you might be in chaos include:
There are many reasons why an organization might find itself in chaos, including unplanned growth, lack of supporting tools, decentralized organizational adoption, and/or limited cloud expertise. Chaos is particularly less forgiving for organizations that are growing rapidly or have highly dynamic workloads. Those who do not find a way out of chaos frequently become “cloud dropouts,” forsaking the cloud for the familiarity of physical infrastructure and/or traditional hosting providers.
The first step toward leaving chaos is to increase management-level visibility to your cloud infrastructure. Several years ago in my previous company, the tools available in the market were limited, and so we had to invest heavily in internal tools and scripts. Today however, there are a variety of open source and commercial tools that provide at least a partial increase in visibility to allow you to achieve the next phase: consolidation.
Once an organization achieves visibility over its infrastructure, it can begin consolidation. Consolidation is often a high impact phase within an organization, and involves the elimination of waste and the start of standardization. The types of activities that occur during this phase include:
While achieving consolidation can have a substantial impact on your organization, it requires constant vigilance to not fall back into chaos. While the visibility of your usage of the cloud has increased, you are still reliant on the execution of individuals to ensure you maintain best practices. Stopping your journey at this phase also leaves your organization open to substantial gaps in your cost, performance, availability and security of your cloud infrastructure.
Here are some signs you are in the consolidation phase:
While an investment in open source and scripts might take your organization to the consolidation phase, it will almost certainly not allow you to achieve standardization. Standardization requires a solution that does the following:
One of the primary objectives at this phase is to identify a standard operating environment for your infrastructure. A standard way to deploy infrastructure is often referred to as a reference architecture, and represents a blueprint that drives the provisioning and operations of your infrastructure. For example, whereas in phase 2 you might focus on ensuring all the nodes in your Cassandra clusters are being utilized, in phase 3 you are focused on standardizing the clusters for optimum cost, performance and availability of your specific workload. Some items you might standardize include:
Achieving standardization requires collecting and analyzing a large amount of disparate data from across your supporting systems and tools. There are two options available for this today: an internally developed solution or a commercial solution such as CloudHealth. Many of the early technical pioneers of large scale cloud computing (e.g. Netflix, Engine Yard, Heroku) have substantial internal systems to show for their ability to achieve phase 3. But increasingly the availability of commercial products like CloudHealth is enabling organizations to purchase services and products that eliminate the need for expensive and labor-intensive internal systems.
Optimization is about automating and refining the standardization of your infrastructure. It is also about taking advantage of the unique characteristics of the cloud. Companies at this stage have a holistic business view of the cloud ecosystem, with tools that facilitate optimization, standardization, and reporting from a business perspective. Organizations at the optimization phase are trying to utilize as close to 100% of the resources provisioned as possible while maintaining availability and performance across their workloads.
Some signs that you have achieved this phase include:
Netflix is a great example of a company that achieved the optimization phase - but increasingly many other lower profile organizations have also achieved this level of cloud maturity by using solutions like CloudHealth.
So what happened to my previous company? Today they run some of the most optimized cloud infrastructure in the industry, seamlessly operating enterprise-scale infrastructure with a minimum investment in resources and costs. While they give hope to all organizations moving at scale into the cloud, they also reveal the importance in an organizational commitment to truly leveraging the cloud.
At CloudHealth Technologies, we are building a platform to help you and your organization in your journey from chaos to optimization. Please feel free to reach out to us at firstname.lastname@example.org if you’d like to learn more about our experiences with the Four Phases of Cloud Optimization, and how we can help you in your journey.