Thread vs Process: What's the Difference?

Thread vs Process: What’s the Difference? When you write software, you often want it to do multiple things at once. This is where processes and threads come in — both allow concurrency, but in different ways. What is a Process? A process is an independent program running on your system. Each process has: Its own memory space. Own resources (file descriptors, sockets). At least one thread (the main thread). Example: If you open Chrome and VSCode, each one is a process. ...

October 5, 2025 · 2 min · 255 words · John Cena

kube-apiserver Not Starting: Troubleshooting Guide

kube-apiserver Not Starting: Troubleshooting Guide The kube-apiserver is the heart of any Kubernetes cluster. If it doesn’t start, the entire control plane is effectively down — meaning kubectl and controllers won’t work. Let’s go through common causes and fixes. Symptoms kubectl commands fail with connection errors. In kubectl get pods -n kube-system, the kube-apiserver pod is CrashLoopBackOff or not running. Logs may contain messages like etcd connection refused, failed to listen on port 6443, or certificate errors. Common Causes and Fixes 1. Port Conflicts The API server binds to 6443 by default. If another process is already listening there, kube-apiserver won’t start. ...

October 4, 2025 · 2 min · 302 words · John Cena

Kubernetes Flag: max-endpoints-per-slice Explained

Kubernetes Flag: max-endpoints-per-slice Explained When Kubernetes services scale to hundreds or thousands of pods, managing their network endpoints efficiently becomes critical. This is where EndpointSlices come in. And one of the key tuning knobs for EndpointSlices is the max-endpoints-per-slice flag. What Is max-endpoints-per-slice? By default, Kubernetes groups pod endpoints into EndpointSlices (instead of one big Endpoints object). Each slice holds up to N endpoints (default: 100). The flag --max-endpoints-per-slice defines that maximum number. In simple words: it controls how many pod addresses go into a single EndpointSlice. ...

October 4, 2025 · 2 min · 259 words · John Cena

What is NodePort in Kubernetes? Simple Explanation

What is NodePort in Kubernetes? When you deploy an application in Kubernetes, by default it’s only accessible inside the cluster. To make it available outside, you need to expose it. One of the simplest ways to do this is with a NodePort service. How NodePort Works Kubernetes opens a port (30000–32767) on each node of the cluster. Any request sent to <NodeIP>:<NodePort> is forwarded to the service and then to the pods. Under the hood, it still uses ClusterIP, but adds an external entry point. So you can access your app like: ...

October 4, 2025 · 2 min · 235 words · John Cena

kube-scheduler Not Starting: Troubleshooting Guide

kube-scheduler Not Starting: Troubleshooting Guide The kube-scheduler is a critical control plane component in Kubernetes. If it doesn’t start, pods cannot be scheduled to nodes — leaving them stuck in a Pending state. Here’s how to troubleshoot when the scheduler refuses to start. Common Symptoms kubectl get pods -n kube-system shows kube-scheduler CrashLoopBackOff or not running at all. Pods stay in Pending forever. Logs contain errors like failed to bind to port or etcd connection refused. Possible Causes and Fixes 1. Port Conflicts By default, kube-scheduler listens on 10259 (secured) and optionally 10251 (insecure). If another process is already using the port, scheduler won’t start. ...

October 3, 2025 · 2 min · 319 words · John Cena