Cloud-agnostic workloads are an enticing prospect for IT operations, in terms of management ease. However, in reality,...
the best option is sophisticated tools for multi-cloud management.
Cloud-agnostic is a term with many purported meanings. It is not, as some think, what occurs when an organization or IT team has no preference as to which cloud they use. Nor does it particularly refer to a collection of hardware on which any cloud platform can run. Cloud agnosticism has far more to do with the IT workload -- a workload that can be implemented on and moved between any available cloud platforms. It's rare, if not impossible, to achieve a cloud-agnostic workload that migrates seamlessly around vendor offerings.
Modern workloads have many interdependencies, requiring common APIs and other standards to operate. If all cloud platforms were equal, then IT teams could create workloads that float between them without any issue. However, the only way for one cloud to be better than another for a given customer is differentiation. Some of this differentiation comes via availability levels or means of management; however, much is through the services that workloads can consume.
If you choose a private or public cloud platform and use any nonstandard extensions or services, that workload becomes tied to the cloud platform and is no longer cloud-agnostic. Migration off of the platform will be a task. Sure, developers and release managers can stick to the lowest common denominator and avoid extras offered by the cloud vendor, but is this approach sensible?
Multi-cloud vs. agnostic
Many organizations already find themselves in the position of being multi-cloud, meaning they operate workloads with more than one cloud provider, even if it wasn't planned. As such, workloads become dependent on, for example, AWS or Microsoft Azure and cannot easily migrate onto Google Cloud or IBM SoftLayer. Therefore, a mixture of workloads across a number of platforms grows -- the definition of a multi-cloud environment. This setup goes against cloud-agnostic's meaning, as each workload is bound to its respective cloud host, not free to move among the options.
Hypothetically, a cloud-agnostic environment is easier for the IT operations team to manage compared to a multi-cloud one. With a single, standardized management interface, operations could monitor and report on each distinct workload, no matter where it is. For a multi-cloud environment, operations must aggregate information feeds from heterogeneous systems, often with a need to normalize the data and apply additional analysis before the administrators can make optimizations or resolve problems.
Unfortunately, the cloud-agnostic vision is mainly a fantasy one. It is better to plan for a multi-cloud environment and seek the best management systems -- keep an eye on the space as different tools improve. Look for a multi-cloud management tool that adds extra capabilities over time to move closer to the single pane of glass envisioned for cloud-agnostic operations.