Kubernetes

A Sync Loop Is Not a Handshake: Keeping External Systems in Lockstep with Kubernetes

A best-effort sync loop isn't enough to keep an external system in lockstep with Kubernetes. This post uses service discovery to show how readiness gates and finalizers make an external system a participant in the pod lifecycle, so registration gates readiness and cleanup gates deletion.

Kubernetes Has No "Done": Modeling Rollout Progress and Success

Kubernetes rollouts are easier to reason about when you model progress separately from success. This post explains why convergence alone is not enough for CI/CD orchestration, how rollout status can be modeled with conditions, and why progress budgets should usually be owned by the platform.

Keeping GPU Workloads NUMA-Local in Kubernetes

GPU workloads often need hardware-aware placement to avoid silent latency regressions. This post explains what NUMA locality means for Kubernetes GPU nodes, how CPU Manager, Topology Manager, and Memory Manager work together, and the operational gotchas to watch for.

How a Kubernetes Pod Gets an IP Address

When a pod is scheduled on a kubernetes node, there are various interactions that result into a pod getting an IP address. This post goes into the details of how a pod gets an IP address and describes the interactions between various components - kubelet, CRI Plugin, Container Runtime and CNI Plugins.

Kubernetes NodePort and iptables rules

Diving into how kubernetes NodePort works and the corresponding iptables rules kube-proxy creates. Also, finding answers to operational questions like what happens when a non-kubernetes process uses a NodePort and whether NodePort continues to work if kube-proxy process dies.