In a world that appears to be dominated by clouds -- both public and private -- the underlying infrastructure that provides connectivity becomes largely invisible to users. Indeed, one of the major promises of cloud is that the pools of resources that power the cloud can reside anywhere, are elastically available, and are dynamically adjusted to accommodate the fluctuating needs of the applications they power.
But the promise of invisible infrastructure is largely limited to the area within a cloud’s boundaries. If the future involves the flexibility to support multi-cloud deployments, it means that the industry will have to advance to the seamless integration of hybrid-cloud environments.
The cloud is not a cloud
When people talk loosely about the cloud, they imagine a collective. But the cloud isn’t really a large, centralized, democratic set of resources. It’s a collection of collections, each with its own strengths and weaknesses.
AWS is certainly the best known; it has a litany of features and enough cachet that a burgeoning ecosystem has emerged around it. But I suspect that Microsoft would argue that its applications run best in Azure. Google might point out that its Tensor Processing Units are industry leading engines for the machine learning and artificial intelligence movements. Of course, Oracle would highlight the role of its business applications in many large enterprises across the globe.
The cloud is already a fractured marketplace, a situation that will only get worse. As cloud becomes more mainstream for enterprises, they will each focus on the things that make themselves attractive. If we assume for a moment that each of them will have some success, the likelihood that enterprises end up putting all of their resources into a single cloud seems low.
Even if the clouds do not end up with their own differentiated offerings, enterprises will almost assuredly want to manage their cloud providers just as they do with any other supplier, by making use of multi-vendor strategies to create economic leverage and drive costs down.
So, whether you believe that every cloud is a snowflake, or you view the clouds as interchangeable parts, the result is very certainly going to be a multi-cloud world for many or even most enterprises.
How do you manage multi-cloud?
One of the most dangerous trends in enterprise IT is the outsourcing of IT to the cloud. Simply moving your workloads to the cloud does not absolve you from architectural responsibility. Despite your cloud ambitions, you will be responsible for maintaining visibility, managing change, and even demonstrating auditable results.
But how do you create a management and orchestration strategy if each of your clouds is a distinct entity? If the promise of cloud is elastic and fungible resources, then how do you manage when workloads need to cross boundaries?
The answer is that even though the cloud itself will be made up of individual components, those components have to come together to form a seamless hybrid cloud.
The most basic requirement for any management strategy is visibility. This means that enterprises looking to take advantage of a multi-cloud future need to architect explicitly for the centralization of monitoring and visualization of data. Instrumentation needs to consider physical and virtual, private and public cloud.
All of the orchestration tools and workflow automation will follow from a holistic monitoring and visualization strategy. Failing a coherent, inclusive view of different domains means that any hopes that companies have to exploit resource fungibility across clouds will be dashed as they discover that the operational practices rely on a cohesive view of the underlying infrastructure.
This dynamic is frequently referred to as Conway’s Law in developer circles: Basically, how products are built will tend to mirror how teams are organized. If we draw a corollary to IT, it would be that how users experience infrastructure will mirror how that infrastructure is managed. It will be difficult to provide a seamless user experience if the operations teams are segmented based on visibility boundaries.
Process and people, too
But it’s not just about instrumentation and shuffling data. The processes and people need to accommodate a multi-cloud model. Where many enterprises allocate resources based on well-defined administrative boundaries, a seamless hybrid environment only happens if both the people and the workloads can operate across multiple domains.
If enterprises settle on processes that start and stop at architectural boundaries, rolling out new services that span boundaries will be more difficult. And if those individual teams maintain complete autonomy, it will naturally inhibit cohesive tooling and processes that allow users to transparently leverage resources wherever they reside.
It’s not that the future has to feature flat organizations without separation, but the tools and processes that span those organizations need to be thoughtfully constructed with a seamless hybrid experience explicitly in mind. The private cloud team and the AWS team need to be in constant contact, even if they are operating independently.
Success is invisibility
While the planning and execution will happen with the clouds in mind, success will be determined based on the user experience. So even though we focus a lot on how to handle workload portability across clouds and dynamic orchestration, all of the gymnastics required to make this future work ought to ultimately go unnoticed to end users.
The future of IT needs to more closely approximate the power grid than anything else. When we walk into conference rooms, we don’t even manually turn lights on anymore. Similarly, when users turn on applications, compute and connectivity should just happen. Of course, anyone who works on power grids will point out that making something invisible is very difficult. Similarly, making this all work within IT will take a lot of effort. But we won’t be able to declare success until users stop thinking about it entirely.