IT is an industry where we’re hardly given a break. Last year’s bag of buzzwords is sill around and we are already getting hammered by new ones. Multicloud is one thing we’ll keep hearing during 2019, because apparently “it’s the next cool thing”(tm).
Multicloud: What Are We Even Talking About?
Ahead of Cisco Live Europe 2019 I had the opportunity to join a twitter-based “crowdchat” on the topic of multicloud, moderated by the fine folks at The Cube. One thing struck me there: almost each participant had their own definition of what multicloud is. Cloud is one of those buzzwords we’ve been hammered with in the past, and because there again the buzzword had many facets, we ended up with people using one word to talk about many things (hey, the next one down the line is Data Management, but that’s for another time).
IT Infrastructure professionals would talk about multicloud as the various public cloud providers (AWS, Azure, GCP), while other folks on the conversation would include Office 365, Salesforce, Pivotal, etc. Basically, for some individuals, multicloud is the globality of all cloud-based offerings, in all of their diversity.
While this approach is technically correct, it’s important to put some context and frame the scope of the discussion when we talk about multicloud. Can we really talk of multicloud challenges if my company is using Office 365 and Amazon Web Services S3? I may have “multicloud challenges” if I have problems with billing, but there isn’t much to be correlated between my mail inbox in Office 365 and a storage bucket on Amazon.
For this reason, and in the context of being an “IT Infrastructure” professional, it makes sense to frame the “multicloud” conversation to the subset of clouds that constitute IaaS (Infrastructure-as-a-Service) providers. These are the well known public cloud providers such as Amazon AWS, Microsoft Azure, Google Cloud Platform and the myriad of other more or less known cloud providers such as Oracle Cloud, OVH, etc. If I was a developer, I could go a step further up the stack and talk about PaaS (Platform-as-a-Service) and discuss about how each platform has different challenges. Getting back to the IaaS multicloud, we shouldn’t also forget about the existence of private clouds (managed virtualization anyone?) or even hybrid clouds.
Multicloud is therefore, in the scope we have determined, the existence and availability of multiple IaaS public or private cloud platforms & providers. We now have one definition of multicloud, but where next?
We Want Multicloud … Wait, Do We?
So we now have all of these cloud platforms. Let’s take an example to continue. We have our own private cloud, and at some point in time, we decided that we would explore public clouds. So we ended up putting some test/dev workloads on one of the clouds that suited us best at the time. Let’s say it was Azure, because our imaginary example is a Microsoft Partner company. We’ve trained our team to work with Azure, people got certified, we created integrations, documentation etc. Of course some looked sideways, but our own infra and Azure was just right and fine enough.
Except we found out recently that another business unit has very active developers, and these guys have been secretly, all that time, running workloads on Amazon Web Services. Our CIO now wants us to manage this infrastructure because they don’t want any kind of shadow IT around. And this latest startup our company acquired 3 months ago just told us in the last knowledge transfer meeting that 80% of their workloads run on Google Cloud Platform. And of course we’re supposed to support this as well.
This imaginary example could be very well happening to any of us IT professionals. Let’s move along to the next section, since we already start feeling the pressure…
Challenges of Multicloud
You see, we have a team of professionals that knew how to operate a private cloud infrastructure, and had experience with Microsoft Azure. Now they need to learn Amazon Web Services as well as Google Cloud Platform. Wouldn’t the easiest way be to just move everything to Azure and let go the others? Of course it’s easier from an operational and training perspective to keep all of the workloads in a single platform. Yet is it doable?
There are many challenges to be faced when operating a multicloud environment. The first one is whether personnel is adequately trained to operate all platforms. In my opinion, it is not only an extra burden, but is also opening the door for many mistakes: improper code being used in scripts, incorrect API calls, different taxonomies and different ways to manage IAM / permissions. If not handled with care, it’s a disaster in waiting.
I had the chance to discuss this matter in a Tech Field Day Extra session with Roland Acra, Cisco’s SVP / GM – Data Center Business Division, as well as some fellow delegates (among which Ivan Pepelnjak and Dominic Pickhart), and the agreement was unanimous. It’s increasingly difficult to manage different clouds when there is no common language. “There is no POSIX for clouds” astutely stated Roland Acra, and we can only agree with him. The challenge is whether there will ever be such a “POSIX for clouds” and if yes, which organization would work on it. So far, there has been no interest from the major cloud vendors. It seems that Cisco is trying to do something in this direction via their CloudCenter offering. I will talk about it more later.
Does Multicloud Makes Sense?
To a sane and rational human, multicloud presents more challenges than benefits. However, the organically explorative nature of corporate organizations, linked with the infinite creativity of humans (and a bit of cluelessness at times…) makes multicloud an almost unavoidable reality of our times.
Reasons why organizations adopt multicloud can be very varied:
- our teams have expertise in cloud X
- we use the cloud version of product ABC and the vendor only supports it in cloud X
- we tried to refactor our application from on-premises to run on the cloud, but cloud provider mandated by the organization wouldn’t support a key feature, so we had to run it on cloud Z instead
- when we started our cloud initiative, only cloud Z supported the feature set we needed
- we have a huge volume of egress traffic and cloud Y has significantly cheaper costs than clouds X and Z
- the IAM implementation on cloud Z is unsuited for our organization policies
- we had no idea that the guys sitting in the next open space area were already running a cloud initiative and we started our own stuff – which is now a business critical system
I swear this could go on, and on, and on… and as you already figured out: if you don’t have a multicloud problem, consider yourself lucky!
Now another reason why you would want to leverage multiple clouds is because your company may be an early cloud adopter, but at the price of experiencing the “shock and awe” of seeing the bill at the end of the month. Some organizations are well aware that cloud costs vary based on many factors, and may look at optimizing their expenses. Doing that again can turn out to be a complex endeavor, because there is not necessarily any 1:1 mapping between a cloud provider’s offering and another one. It also implies that organizations have end-to-end visibility on their cloud spending and infrastructure, whether on-premises or on the cloud.
How I Learned To Stop Worrying and Love Multicloud
Irony aside, and since multicloud seems to be eventually unavoidable, what can be done? It can already be a good sign to reinforce via communication that the organization relies primarily on a given cloud provider. It can be worth letting people know that there is (eventually) a team or dedicated resources available for consultations before anybody embarks on a new cloud related project. While it’s not guaranteed to bring miracles, it can already be a way of keeping this in control.
Then if the organization is already operating in “multicloud mode”, it makes sense to bring all the stakeholders around the table to examine the current situation and determine if there are any short terms efficiencies that can be implemented. Once this step has been carried, it’s also worth looking at the relevant teams and at the security and access management part of things. While not all clouds have the same frameworks, it is desirable to harmonize security and access management from a process and implementation perspective. This will ensure both security and IAM are enforced in a predictable and consistent fashion across multiple clouds. The same goes with documentation and tracking of configurations. While it’s great to begin this way, as we go along we’ll figure out that it’s not as easy as we thought. Many projects may require many components: VMs, S3 buckets, VPCs etc.
As the organization’s journey through multicloud (forced or not) goes on, a point will be reached where the need for an abstraction level will become critical. Not just to secure and operate the environment on a daily basis, but also to identify inefficiencies (both from a cost or performance perspective) and be able to quantify and address them.
Cisco CloudCenter – An Attempt At Living With Multicloud
One of the interesting tools presented during Cisco Live Europe was Cisco CloudCenter (formerly known as CliQr – with the weird but usual Silicon Valley style capitalization, missing vowels, etc.). I had a feeling that this tool could prove very helpful to tackle the challenge.
CloudCenter turns out to be a multicloud management platform that acts as the abstraction layer above multiple clouds. It allows organizations to implement policies about who can do what, how, when and where, regardless of the cloud platform. It also allows for the creation of application profiles / blueprints that are compatible with multiple clouds (this may remind some users of Oracle Ravello), and also to help with automating deployments in CI/CD / DevOps style.
An important aspect of CloudCenter is also its ability to be used for cost optimization and to examine spending across multiple clouds. It can be a great opportunity to categorize given workloads and determine optimal placement, but also to right-size oversized workloads. This function can also be used as a go-to place if clean-up activities are needed (suspend / delete workloads for example).[vimeo 14286242]
If you’re down in the trenches, there’s nothing sexy about multicloud: it’s a major operational annoyance that you have to live with. From a business perspective however, there are cases where multicloud may not make sense but will be simply unavoidable.
As IT professionals, we either get to complain and rant at clouds, or we can try to make a difference. For as much as I dislike buzzwords, the mention of multicloud, beyond being the acknowledgement of ugly reality we’re in, is also the acknowledgement that something must not only be done about it, but can also be done. It is our opportunity to get the house in order and help deliver more value to the organizations we support.
Overall, I appreciated the features of Cisco CloudCenter, but unfortunately the presentation felt a bit like a missed opportunity to engage with our very specific audience. It seems that there was a disconnect as the presented was either inadequately briefed or didn’t take in consideration advice about what a Tech Field Day presentation should be, and what audience is being addressed. However, once asked the right questions, our presenter was very rapidly able to get up to the challenge and provide insightful replies, showing true mastery of his topic.
This post is a part of my TFD Extra at Cisco Live Europe 2019 post series. I am invited to the event by Gestalt IT. Gestalt IT will cover expenses related to the events travel, accommodation and food during the event duration. I will not receive any compensation for participation in this event, and I am also not obliged to blog or produce any kind of content. Any tweets, blog articles or any other form of content I may produce are the exclusive product of my interest in technology and my will to share information with my peers. I will commit to share only my own point of view and analysis of the products and technologies I will be seeing/listening about during this event.