Skip to main content

Reasons behind cloud repatriation

·1679 words·8 mins
IT Cloud Study-Note

One thing I’ve noticed while going through the Azure Fundamental learning path, which many people getting cloud certificates without prior work experience might overlook, is the importance of understanding more than just the technical aspects. There are several critical areas that don’t get enough attention but are vital for a successful cloud adoption:

  • Building business case: before jumping into cloud adoption, building a solid business case is a must. This involves understanding the specific benefits for your organization, calculating the IRR, and aligning the cloud strategy with your business goals…
  • Governance & management: this is to ensure that cloud resources are used efficiently and securely. This includes setting policies, monitoring usage, and ensuring compliance with regulations
  • Navigating politics: especially within larger ones, navigating internal politics, getting buy-in from various stakeholders, addressing concerns, and managing expectations throughout the cloud migration process can be a significant challenge
  • Stakeholders communication: this is the weakness of a lot of engineers. Clear and consistent communication with stakeholders is key. This involves explaining the benefits and risks of cloud adoption, providing regular updates, and ensuring that everyone is on the same page. Not easy to do, to be honest.

Perhaps these aspects are often overlooked, which might explain the recent trend of cloud repatriation. In general, companies that were oversold on the cloud’s promises without being fully prepared in terms of talent and technical capability are now finding themselves moving some workloads back to on-premises infrastructure.

What typically happens
#

From my research and experience, here’s what typically happens:

Upper management saw about this great thing on Twitter called “cloud” and/or saw what other businesses in the industry was moving to cloud as well. Of course we need to catch up with the competition! So it is mandated that we are adopting cloud!

IT scrambles to implement a cloud team composed of well-intentioned, but inexperienced “cloud engineers” who don’t know better than to go for a pure lift-and-shift approach.

And then when upper management gets the bill, guess what

Then through experience, IT starts to learn that effective cloud use is based on refactoring to cloud-native services, not just lift-and-shift. However, by then, the momentum is already going in the wrong direction, and they can’t really back out. Primary blockers include trying to convince upper management that proper time and resources need to be allocated to cloud-native architectures and services, which often falls on deaf ears because the benefits aren’t immediately apparent.

Things get even worse when these engineers, enticed by higher salaries, leave for jobs that pay 1.5-2x more. This exodus often means that the team responsible for the migration, and those with crucial tribal knowledge, are no longer around. It’s a double blow for companies when they face sticker shock at the high cost of hiring and retaining a cloud engineer at the market rate for the long term.

Cloud is not always the answer
#

From a technical perspective
#

From what I’ve learned, cloud is a good fit for modern apps that leverage services such as serverless, containers, or clustering.

However, this doesn’t describe most enterprise applications. What makes it even worse is that many organizations start with over-provisioned VMs in their current environment and don’t reassess their actual needs before shifting everything to the public cloud. At the very least, no one is ensuring that the VM specs are appropriate, leading to exorbitant costs for SKUs they’re not fully utilizing. Also, there are certain things like physical access control systems, CAD files, legacy line-of-business (LOB) applications, and more that either introduce increased risk, won’t perform well, or just don’t work when run elsewhere.

Cloud requires extensive planning and a change of mindset. You need a well-versed architect for the system you want to utilize, and sometimes you may need to use multiple providers like Azure and AWS to meet your needs. Setting up a cloud environment requires a solid baseline and a different approach for each application such as making use of headless systems, Kubernetes, and splitting services etc.

Oftentime, hybrid solutions are necessary because some applications just aren’t compatible with the cloud unless you want to invest heavily to make them work there.

Many organizations leave the cloud simply because they haven’t planned correctly and have messed up their setups. Going hybrid can help reduce costs and allow for better resource management, like using VMware load balancing, which can link up to cloud services for additional benefits, although latency might be a challenge for some applications.

From a business management perspective
#

I’ve always been puzzled by why businesses are so eager to offload all their infrastructure to providers like Microsoft or AWS, who can presumably raise prices whenever they see fit. It seems like a potential trap.

While I can understand the appeal for new startups that are unsure of their growth potential and choose to start in the cloud, established businesses considering a full move to the cloud should brace themselves for the sticker shock compared to a hybrid environment. AWS and others make it significantly more difficult to leave the cloud. Azure, for example, will absolutely nickel and dime you to death. It’s crucial to thoroughly read the documentation, and then read it again and again.

Handing over all of your operations to another company that can charge you whatever they want just never seemed like a good idea. It should be just as easy to leave the cloud as it is to migrate to it. Unfortunately, this is another way cloud companies can take advantage of their customers.

This caution is especially important if you don’t have a solid governance framework and a Cloud Center of Excellence (CCoE) to guide your cloud journey. Without these, you’re likely to encounter unpleasant surprises.

Again, Azure Cloud Adoption Framework is a valuable resource to guide the whole journey.

Azure Cloud Adoption Process
Azure Cloud Adoption Process

So when cloud is a good option?
#

Cloud is great for getting to market quickly and handling highly variable workloads. With the cloud, you can be a tech company without needing any infrastructure expertise. You can get started in minutes with just a credit card. In those early days when you’re pinching pennies and dealing with fluctuating demands, the cloud lets you adapt quickly and stay afloat.

These are superpowers. It’s awesome.

But once your product has matured, growth is steady, and you can predict customer usage accurately, all that flexibility doesn’t matter as much. Like most things rented by the hour, the cloud gets expensive when you add up the costs over weeks, months, and years. So, when you finally get a chance to catch your breath and look around, you might find yourself facing a hefty cloud bill. And if you’ve got the skills and some free time, well…

If you have predictable workloads and in-house infrastructure expertise, you’ll probably save money running your own infrastructure instead of relying on AWS.

A successful anecdote
#

This is a very good case study I got from interviewing an IT professional acquaintance (let’s call him John), edited to remove sensitive info. I think his approach to navigating the politics while balancing risk management and a can-do attitude is what made it smooth and successful.

John: Back in 2018, when cloud was the keyword around the block, my department head was being pushed to adopt a cloud-first approach. It seemed like all the senior leaders were getting their ideas from the same tech-buzzword-ridden magazine.

Me: Yeah, I remember that. Everyone was talking about moving everything to the cloud like it was the only way forward.

John: Exactly. But we were lucky because we regularly meet with our industry counterparts and discuss trends. From those discussions, we found out that similarly sized organizations that went all-in on cloud migration were experiencing increased overall costs for similar workloads, like data reporting, non-cloud native application hosting, and VDI hosting. They were mixing the costs of upkeep and regular upgrades, and still had to maintain licensing.

Me: So, they weren’t actually saving money?

John: Nope, and they were still having outages, just like we would, but with a lower ability to address them. They had moved to just monitoring and reporting outages rather than fixing them. Even with fully outsourced cloud SaaS solutions, they had to keep a support line between their vendors and end-users because the support model was unpopular.

Me: That sounds like a nightmare. Did you guys decide to go a different route?

John: We knew that outright saying “no” to cloud adoption would get us uninvited to important meetings—basically telling the higher-ups their idea was flawed. So, we opted for a rational compromise. We used terms like “hybrid cloud” and focused on moving systems and services that made sense financially, for access reasons, or for technology simplification to the cloud. We concentrated our cloud migration on utility services—those that IT had little value in administering—and favored cloud-native applications, like web-based apps already built for the cloud, over moving conventional server/client applications to cloud infrastructure.

Me: So, what did you end up moving to the cloud?

John: The easy systems and services to move were chat, teleconferencing, email, SharePoint, application licensing activation, and cloud-native web apps.

Me: And what did you keep on-premises?

John: We kept VDI, conventional server/client applications, and conventional desktop apps on-premises. We maintained hybrid functions for IAM.

Me: Sounds like a smart move. Did it work out well?

John: It did. By avoiding the word “no” and instead highlighting issues and potential solutions, we were able to support senior leadership ideas while maintaining some control over the direction and pace of our cloud adoption.

Me: And you didn’t have to deal with the costs of moving everything to the cloud and then back again?

John: Exactly. As cloud service costs continue to rise, we can shift our licensing and support models. Even with corresponding licensing cost increases for on-premises technology, we remain flexible and can adopt different platforms to better control our service lines and costs.

Me: That’s a great strategy. Balancing the best of both worlds seems like the way to go.

Related

Which cloud to learn: AWS vs Azure
·1293 words·7 mins
IT Cloud Study-Note
Cloud skills are transferable. Don’t have a mindset of learning one. So just pick one and get a beginner cert.
Why customers are becoming less loyal
·363 words·2 mins
Marketing
In many ways, us marketers have “trained” our customers to be less loyal
Getting into linux administration
·2334 words·11 mins
IT Linux Cloud
Do these things and you will be fully exposed to every aspect of Linux Enterprise systems administration. Do them well and you will have the technical expertise required to seek “Senior” roles.