4 ms·
When you program without performance in mind, hw is always your constraint. k8s is a blessing because you can scale out easily and is a curse because you can s
by marcos100 5y ago
When you program without performance in mind, hw is always your constraint.
k8s is a blessing because you can scale out easily and is a curse because you can scale out easily.
- p_l 5y agoThing is, k8s is not about scaling out. A core part of it is about efficient usage of hw you have (which also maps well to avoid expensive cloud bill). The more I optimized, the more I could leverage k8s to optimize hw usage.
- adwn 5y ago> A core part of it is about efficient usage of hw you have In what way? If the content of your containers is a wasteful, inefficient mess, then there's nothing Kubernetes can do to make it less inefficient.
- p_l 5y agoIt can't fix what's inside your containers, but it can fix how efficient you're in packing your workloads onto available hw. I.e. Given a set of Workloads, set of available hw, k8s will help you find maximal amount of Workloads that you can fit. vs. for example manually trying to fit single-purpose VM instances in EC2, with inevitable overheads, etc.
- marcos100 5y agoI agree with you. It will efficiently allocate resources for an inefficient application. But when your system can't handle the load anymore, you'll have to allocate more resources and k8s will handle it for you like magic. It's so easy that people can use thousands of machines to handle the load. This with the "hardware is cheap, dev time is expensive", makes it common to see those kind of very large systems.
- p_l 5y agoWell, yes. Except I get to live with "hardware is more expensive than dev time", so I tend to cheat like a proper dirty cheating wizard with k8s' binpacking ;) (my motto is "what do you call a company using Heroku? Bankrupt" :P)