loading...

What is your definition of cloud-native?

mikenikles profile image Mike Nikles ・1 min read

Hi,

As part of some research for a book I'm writing, I'm curious to learn how people define cloud-native.

Your personal definition of it, no wrong answers.

Discussion

pic
Editor guide
 

For me it's: The degree to which a company is willing to adopt cloud technologies.

... I see it much like the political spectrum of right and left. Sometimes useful, sometimes a bit confusing. And generally used for sweeping statements. Which means any (and every) company can be plotted on the following scale...

Cloud Native —> Cloud Agnostic

Which is where I think there's confusion..

For instance one of the CNCF's biggest projects is Kubernetes. But Kubernetes is used by many companies to achieve cloud agnosticism, rather than cloud native. Very confusing to me.

I also often see definitions around "containers" and "serverless" but I fail to see how that's a sufficient definition. These are just arbitrary technologies. These technologies may change in future, but the concept of deliberately and willingly handing over large portions of your operations to a third party will not change, and that, for me, is the definition of Cloud Native.

 

Hi Lou, thank you for sharing your thoughts on that. I agree with you, technology-specific definitions for such a broad term feel short-lived. In my opinion, that applies to the CNCF definition shared by Jeremy as it calls out containers, service meshes, et al. I believe these are stepping stones towards something more abstract. While the technologies change, the definition of cloud-native ideally does not.

My current working version of what I understand cloud-native to be is:

"Cloud-native is a way of developing, deploying, running and monitoring modern applications that rely, as much as possible, on managed services provided by cloud providers, so that developers can maximize their time to focus on delivering value to customers rather than dealing with infrastructure."

 
 

I think this one from the Cloud Native Computing Foundation (CNCF) works:

Cloud-native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach.

These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil.

  • Jeremy
 

Thanks for sharing Jeremy.

I'm looking to collect different views for a book I'm writing titled Cloud Native Web Development. My working theory is that everyone has a slightly different view of what it means, which is perfectly fine and would support a point I made in the book.