Moving Beyond OOM Kills: Introducing Memory QoS in Kubernetes 1.37
Memory QoS has been a long time coming: first introduced as alpha in 1.22, updated in 1.27, given tiered protection by QoS class in 1.36, and now reaching Beta in 1.37.
Memory QoS has been a long time coming: first introduced as alpha in 1.22, updated in 1.27, given tiered protection by QoS class in 1.36, and now reaching Beta in 1.37.
Introduction Serving large language models at scale is fundamentally a distributed systems problem. A single GPU, or even a single node, is rarely enough once you need multiple models, multiple replicas, tensor-parallel sharding across GPUs, or high-availability rollouts. Kubernetes solves general container orchestration well, but it has no native concept of a GPU-aware, actor-based compute …
Inference Optimization Techniques. Ray vs. vLLM vs. KubeRay Read More »
Introduction The default Kubernetes scheduler was built for stateless services: web servers, APIs, databases. It schedules a pod, checks that a node has enough of whatever resources were requested, and binds it. For CPU and memory, that model works fine. For GPUs, it falls apart in three specific ways. First, GPUs are treated as an …
Kubernetes GPU Scheduling for MLOps and GPU Sharing Read More »
Updated July 28, 2026. Kubernetes gives you the amazing power to deploy and manage containerized applications. But this power comes with a trade-off. Instead of letting you focus only on writing code and delivering features, Kubernetes also shifts the burden of resource optimization i.e., cost control, performance, and scalability, directly onto your shoulders. The answer …
Introduction Google has quietly rolled out a new beta feature for Google Kubernetes Engine (GKE): the MultidimPodAutoscaler, or MPA. Announced in early July 2026, MPA gives GKE users a single custom resource that scales both horizontally and vertically at the same time. If you’ve spent any time in Kubernetes, you already know the two usual tools for the …
Google Announces MultidimPodAutoscaler (MPA) for GKE Read More »
What is a Kubernetes Operator? A Kubernetes Operator is a method of packaging, deploying, and managing a Kubernetes application. It extends the native Kubernetes API by combining custom resources (CRDs) with a dedicated controller: a custom control loop that continuously watches the state of those resources. The primary purpose of an operator is to automate …
How Kubernetes Operators May Conflict With Resource Optimization (And How to Avoid It) Read More »
Stop paying for idle resources. Learn to identify and eliminate the hidden blockers preventing your cluster from scaling down. Introduction Many of us understand the concept of Kubernetes Requests and Limits, and that by reducing over-sized resource requests we can reduce waste in our clusters. And for GKE Autopilot and EKS Fargate clusters that is …
Kubernetes Optimization Beyond Requests and Limits — Node Scaling Blockers Read More »
AWS EKS Auto Mode: Enhancing Kubernetes Optimization EKS Auto Mode is a huge step forward in managing your EKS clusters by automating complex tasks, enhancing cost efficiency, simplifying management, and ensuring resource optimization. These features make Kubernetes more accessible and manageable, particularly for organizations looking to leverage containerized environments without the overhead of extensive manual …
In cloud-native environments, autoscaling and optimization are often confused, yet they serve different purposes. While Kubernetes offers several built-in autoscaling features, these are often mistaken for optimization. In reality, autoscaling is reactive, responding to changing demands, whereas optimization is proactive, focused on configuring workloads efficiently from the start. This article aims to clarify the distinction …
Kubernetes Autoscaling vs. Optimization: Understanding the Difference Read More »