Its a truth universally acknowledged that managing fewer things is easier than managing lots of things.
Yet, why do so many of us in tech exalt scale as a paramount virtue?
The cloud-native arena is a particularly interesting focal point for this exact debate.

These companies dominate the cloud-native computing landscape: its technology, its evangelism, and its revenue.
This is why platforms like Kubernetes are so critical to managing it all.
But Kubernetes wasnt designed for the masses.

It came from Google, designed by Google engineers to help other Google engineers solve mostly Google-scale problems.
If you have lots of overlap on that particular Venn diagram, then its a clear, great choice.
But what about those who dont?
It’s free, every week, in your inbox.
The first question you should ask yourself is what your needs truly are.
Do your apps genuinelyneeda massive level of scale to succeed, with all the complexity that implies?
Do you need 100 servers when five powerful ones would do?
Do you oughta break up your app into microservices, or would refactoring and tweaking your monolith suffice?
Do you need Kubernetes, or would a PaaS work?
Do you have the people and skills on hand to make any of these initiatives succeed?
Infrastructure shouldnt exist just to exist; it exists to run something useful on top of it.
Scale is a means to an end.
Higher-level abstractions make many things easier, but their inherently distributed nature makes many things more involved.
And once you get to a certain level of complexity, automation becomes non-negotiable.
Provisioning tools are great for handling Day 1 of your applications life.
But what about Day 2, and beyond?
How do you reconfigure your program?
How do you deploy a new version?
How do you handle security breaches?
How do you make changes in third party services your app relies upon?
Platforms like Kubernetes offer some really nice primitives for some of these issues.
third party logging, monitoring, or networking).
These platforms can do a lot, but they cant magically make your applications manage themselves.
Story byDeepak Giridharagopal
Deepak is CTO and Chief Architect at Puppet.