While moving to cloud is a good thing, it is critical that an organization proceed with caution. Regardless of whether your company is looking at one workload, multiple workloads, or an entire portfolio, transforming from on-premises to cloud-based IT requires more than just understanding the technology. Successful cloud adoption dictates a pin-sharp focus and a detailed blueprint, as a single misstep can become costly and time consuming.
Following a prescriptive approach to implementing a cloud program streamlines your transformation, accelerating time to value and reducing risk. Here are 10 key takeaways based on helping hundreds of businesses plan, design and build their cloud programs. No matter how far into your cloud journey you are, you will find something that applies to your organization.
1) Kick off your cloud program with a vaccination
It should come as no surprise that not everyone in your organization will support a cloud program. As a matter of fact, we consistently see blockers and conscious resisters in almost every enterprise we work with. What’s the solution? As with most ailments, early intervention is key. We have found that bringing key stakeholders together (in the same room) early immunizes your organization against viruses and eliminates blockers.
2) Make a cloud-first commitment
Core to making a cloud-first commitment is asking the question: “Why are you moving to the public cloud?” The answer to this simple, but powerful question eludes many of our clients.
Cloud first means that all of your applications and data will move to the cloud unless there is a compelling reason that they must remain on premises. Without a cloud-first strategy, you are simply keeping your application and data teams with one foot on first base while asking them to try and steal second. When this happens, the results are marginal at best, since there is no focused dedication to making the changes necessary to reap the full benefits of cloud.
3) Establish a cloud business office
Cloud adoption will have an enormous impact on your company, evolving processes that have not been seriously touched in decades. For the first time, developers are able to create and modify their infrastructure requirements using software. The implications of such power are both dazzling and frightening.
Software development has lived in a static world of change management where the critical nature of the business impact has created tight control processes and long approval cycles. Thus, the need for a cloud business office (CBO).
4) Know your cloud economics
Understanding the economics of cloud adoption seems like a no-brainer best practice. However, our experience shows that over 50 percent of enterprises do not take the time required to determine the business case for moving to the cloud, probably because they “already know” it is a good thing. Nevertheless, an organization gains many valuable insights by building a business case and improving its understanding of cloud economics.
5) Discover the inner workings of your application estate
Public cloud environments like AWS, Microsoft Azure, and Google are not fully backward compatible. That means some of your applications are not going to be able to move to the cloud. Depending on the importance of these applications, there will likely be a hybrid cloud network whereby the public cloud provider is connected with a private MPLS circuit. In this mode, cloud-based applications can access legacy on-premises services while still gaining the benefits of a cost-efficient and agile infrastructure.
The challenges with hybrid cloud networks include latency issues as well as the volume of data being transmitted through the network. Simply put, you could cripple your cloud program without an understanding of the application mapping and data volume between application dependencies.
6) Build a minimum viable cloud
The minimum viable cloud (MVC) is one of the most important of the 10 best practices. Based on the concept of the minimum viable product, the MVC is the starting point of your first production cloud and a platform that you will iterate and improve as you migrate to the cloud. Azure, AWS, and Google all allow for automation programming as the primary means to build the new platform. Therefore, we now must think about our cloud as a piece of software. Hence, the new mantra “infrastructure is code.”
7) Perform a security and governance gap assessment
CTP’s Cloud Adoption Program is very prescriptive. After hundreds of cloud engagements, we discovered that the cloud security technology used from client to client is nearly identical. There are repeatable patterns of reference architectures that form a baseline by which we can assess gaps in your program. We have built those repeatable patterns into the MVC model, and the patterns are standard with every MVC we build.
What is often missed, however, is the assessment of the security and governance control objects that map to the repeatable patterns in the MVC. The control objectives may range greatly from client to client, with some requiring PCI and SOX regulations, and others adhering to NIST, FISMA, and many other industry standards. The challenge is understanding how these standards and regulations map to your cloud program.
8) Plan for continuous compliance
Enterprises have many controls that govern the IT environment. Since most of the resources are hardware-based, the controls take the form of change management and operational services. However, the new cloud model is software-based and ungoverned by its very nature.
The new consumption-based model requires a new level of governance. Using the standard change management and controls approach simply does not work. Legacy change controls will slow the process down, and you will find yourself back in the same situation you were trying to escape.
What’s required is continuous compliance. In this context, continuous compliance is software that is constantly looking at your environment and controlling the consumption and usage of services in your cloud. The controls are implemented using “software signatures” that check for specific governance and compliance requirements.
9) Implement automation frameworks
Throughout these best practices, we speak of automation as a core tenet of implementation. Infrastructure as code is the mantra. At the core of cloud adoption is the automation of infrastructure builds for every application. The goal is to have each application implemented and deployed through code. We want to take a DevOps mentality to the development of our new cloud environment.
At the heart of the automation mantra are the MVC automation templates. Your goal is to get to repeatable automation templates that carry the operational governance we spoke about in the prior section. For example, onboarding a new application team to your MVC should pull 90 percent or more of its code for the cloud platform from GitHub and the frameworks you are managing.
10) Prepare for Migration @Scale
Migration @Scale refers to the technology, processes, and people who move application workloads to the cloud leveraging a factory model. There is a deep desire within many clients to get out of the data center business. Most executives understand the benefits of public cloud and have directed executive IT leadership to reduce data center costs by moving to cloud.
Across industries, our experience points to an average TCO savings of around 40 percent year over year, and the primary way to achieve this goal is through an application migration factory approach. To accomplish a solid reduction in TCO requires a significant migration of application workloads to the cloud.
In our prior nine best practices, we have been preparing your team to move many hundreds, if not thousands, of applications. This requires a solid factory approach to migration. Having determined which applications can move to the cloud, we set up the cloud environment, secured it, and prepared operations to receive the applications.
Your cloud program is the single most significant technology shift your company will face over the next decade. Getting to cloud requires much more than following a few best practices. Before starting your cloud program, make sure you have assembled a team with the experience, tools, and processes necessary to execute the move successfully, the first time.
This article originally appeared in The Doppler and has been reposted here with permission.
Click here to read the full report.