Change and the Cloud
We know the cloud is changing the way we think about computing. The cloud is changing the way we run our applications. The cloud is even changing the way we pay for our applications. The cloud is changing everything.
"If we focus on using the cloud as a core infrastructure component, and not as a critical component of our application, we begin to see how we can jump on this moving target."
We know that we are supposed to move our applications to the cloud. We know that the cloud is good. We know that the cloud is the next big thing.
But, as the cloud has changed the way we think about computing, the cloud itself is changing, and the way we think about the cloud is changing as well. As we examine our plans for moving our applications to the cloud, we find the cloud looks like a moving target. The longer we wait, the further away the target becomes– the further away the cloud itself becomes.
The cloud is forcing us to change.
What Has Changed in the Cloud?
The cloud has matured over the last decade. Cloud service providers have gone from providing simple “server fleet management”, to providing a much richer set of services and offerings. At last count, AWS provided over fifty unique service offerings, each providing a specific managed capability on which our applications can take advantage.. This has caused us to rethink our entire application architecture and infrastructure requirements.
So, what are the biggest changes the cloud is bringing to us and our applications? Here are some key changes.
Change #1: Acceptance of Micro-service Based Architectures
As companies look towards moving their applications to the cloud, more and more they are moving to the cloud as part of an overall product modernization strategy. This modernization strategy includes moving to state-of-the-art application architectures. In recent years, this state-of-the-art application architecture involves using micro-services and other service based architectures as part of that strategy.
Technologies such as Docker have made micro service-based architectures a viable technology for application development. Realizing this, cloud providers have started to provide higher value managed offerings, such as the EC2 Container Service, for our use in managing our micro service-based containers.
Change #2: Smaller, More Specialized Services
As we modernize our applications and move them to the cloud, we start looking at cloud services and how they can be utilized as extensions to our application’s services. Capabilities historically provided within the applications themselves are now capabilities that can be provided by the cloud itself.
The major cloud providers have seen this and a whole host of cloud managed features and capabilities have become available. This includes features such as queuing services, logging services, CDN capabilities, transcoding services, caching services, and managed search services.
The availability of these higher food chain services has given us the ability to leverage managed infrastructure pieces at a much higher level than we have previously.
And now, micro compute technology is also seeing resurgence as technologies such as AWS Lambda provide just-in-time compute cycles without tying us to servers at all.
Change #3: Greater Focus on the Application
The cloud has created a shift in focus away from the creation and management of the infrastructure needed to run our applications, and allowed us to spend our time on more critical aspects of the application and the application environment.
In essence, the cloud has largely removed a major hurdle in application management. The cloud allows us to focus our attention on higher value aspects of running our applications.
Change #4: Security and Compliance Has Matured
In the early days of the cloud, security issues were often sited as one of the primary reasons why enterprises could not move their applications to the cloud.
Cloud providers heard that concern, and they have stepped up to provide more and better capabilities for securing cloud applications. Additionally, they have increased their focus on regulatory and compliance issues. Cloud companies such as AWS have added security assurances in the form of regulatory compliances such as PCI, SOC, and HIPPA.
These assurances, along with a visible security track record, have allowed security to be largely removed as an obstacle for cloud migration. This allows us to focus our attention on the aspects of security that are application and company specific, without concerns with the security of the infrastructure itself.
Additionally, security service offerings such as AWS Inspector and AWS WAF provide us important tools to support application and company specific security policies and requirements.
We even have begun to think of the cloud as safer than our own data centers. After all, if Amazon doesn’t understand how to keep a data center secure, who else does?
The Cloud Is Changing
The cloud is changing out from under us. As we are looking to move our critical applications to the cloud, we see the cloud as a moving target. This makes the prospect of moving to the cloud even more daunting.
But it doesn’t have to be. The cloud is full of the new glitz and glamor that are prevalent in technologies such as AWS Lambda. But the cloud also has its core infrastructure base. EC2 is here to stay. S3 is here to stay.
This is the key. If we focus on using the cloud as a core infrastructure component, and not as a critical component of our application, we begin to see how we can jump on this moving target. We can jump on the cloud by utilizing the core infrastructure base offerings the cloud provides, without being swept up into all the glitz and glamor of the newer technologies that are higher up the food chain. It is possible to use EC2 now, and consider technologies like AWS Lambda down the road.
Yes, we are forced to change how we operate because of the cloud. But we can control how much we change and what speed we change by focusing on the aspects of the cloud that are most critical to our business success.
Taking this controlled step is not only an acceptable way to use the cloud, but is a prudent first step for many of us in using the cloud.