The next Kubernetes Borg/Omega history topic is going to be watch, as a followup to the asynchronous controllers topic, but since there were some scheduling questions due to the 2 recent podcasts, I'll make some comments about "scheduling". First, pedantic terminology
-
-
And preemption, descheduling, and so on. It's important to understand how all these control loops interact with each other and with their surroundings, such as load balancers and infrastructure autoprovisioners. But in Kubernetes we've tried to make these functions composable
Show this thread -
As I mentioned in my podcast, the importance of some of these is greatly dependent on the variety of workloads run, the elasticity of the underlying infrastructure, and priorities. For instance, many use Kubernetes to accelerate deployment more than to increase utilization
Show this thread -
If the infrastructure is not very elastic, as in bare metal datacenter environments, then utilization can be a primary concern, and that's where techniques such as vertical scaling, oversubscription, binpacking, mixing workloads, QoS, share management, etc. become important
Show this thread -
VMs in cloud is just one way to make the infrastructure more elastic. It does introduce a 2nd level of placement with information hiding, though, which is a tradeoff. I'll plug the Omega paper for more on that topic:https://ai.google/research/pubs/pub41684 …
Show this thread -
I'll come back to scheduling later in the series to talk about scheduling affinity, anti-affinity, taints, tolerations, forgiveness, and so on, which were straight out of our work on Omega.
Show this thread
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.