Ingress controller routing mechanism Ingress resource (k8s object) defines rules: host, path → service backend (name + port). Ingress controller (NGINX, Traefik, Istio Gateway, etc.) watches Ingress objects and converts rules into runtime config (reverse-proxy rules, routes). Request flow: 1. External client → DNS → load balancer / NodePort / LB service IP. 2. LB → ingress controller pod(s). 3. Controller matches host+path to an Ingress rule. 4. Controller forwards to the corresponding Service (ClusterIP) which load-balances to Pod endpoints (Endpoints / EndpointSlices). 5. Controller may apply TLS termination, auth, rate-limiting, rewrite, header mods, and upstream retries. Notes: Controller decides based on order/priority and exact match vs prefix. Some support advanced routing (canary, weight-based splits) and service mesh can intercept and do L7 logic. #kubernetes#ingess#ingress controller#K8s
How Ingress Controller Routes Traffic in Kubernetes
More Relevant Posts
-
🔄 Why I Built a Custom Load Balancer in Go While working on Surpeats, one of the interesting challenges I explored was distributing incoming requests efficiently. Instead of relying only on existing solutions, I decided to build a lightweight load balancer in Go. Why? • Go’s concurrency model (goroutines & channels) made it ideal for handling multiple requests in parallel. • Writing a custom solution helped me understand how traffic is routed across multiple API instances. • It allowed me to add custom logic tailored to Surpeats’ architecture, rather than a “one-size-fits-all” approach. 👉 What I Learned: • Load balancing is not just about splitting traffic — it’s about ensuring reliability, fault tolerance, and uptime. • Even before a system goes live, designing with these concepts in mind helps prevent future bottlenecks. • Sometimes, rebuilding a known component (like a load balancer) teaches you more than plugging in a pre-made one. Looking back, this exercise gave me confidence in working closer to the infrastructure level, and I carry these lessons into every backend decision I make today. #SystemDesign #BackendEngineering #GoLang #LoadBalancing #Scalability #Surpeats
To view or add a comment, sign in
-
The most expensive code isn’t the buggy code. It’s the code you refuse to delete. Our first logging system looked "clever": 1/ Agents opened websockets to a hub 2/ Hub fetched logs from agents on request 3/ Agents streamed logs back to users It worked… until more than one user requested the same logs. CPU spiked. Bandwidth doubled. We almost wasted weeks building caching, deduplication, batching. But here’s the truth: we weren’t optimizing code. We were optimizing the wrong design. So we scrapped it. Rebuilt with centralized log collection. One stream, many consumers. Done. Lesson: don’t ask "How can I optimize this code?" Ask "Is this code worth optimizing at all?" Sometimes the cheapest optimization is rm -rf
To view or add a comment, sign in
-
Key Components (short and crisp) Pod 🟢 → The smallest deployable unit. A pod usually runs one container, but can run a few tightly coupled ones. Node 🖥️ → A worker machine (VM or physical) where pods run. Managed by the master. Cluster 🏗️ → A group of nodes working together, managed by Kubernetes. Control Plane 🧠 → The “brain” of Kubernetes that manages scheduling, scaling, and orchestration. Key parts: API Server – entry point to talk to K8s. Scheduler – decides on which node a pod should run. Controller Manager – ensures desired state matches actual state (e.g., restart if pod crashes). etcd – distributed key-value store holding cluster state. Kubelet 👷 – Agent running on each node to make sure containers are healthy. Service 🌐 – Provides a stable network identity + load balancing for pods. Ingress 🚪 – Routes external HTTP/S traffic into the cluster.
To view or add a comment, sign in
-
🎥 **Episode 2 of “The Ultimate System Design Playlist” is out now!** 🚀 This time, I’ve covered a topic that often confuses many: **API Gateway vs Load Balancer** ⚡ In this video, I dive into:- 🔹 Key differences between an API Gateway & a Load Balancer 🔹 **If API Gateway is a single entry point, how does it handle millions of requests?** 🤔 🔹 **What comes first – API Gateway or Load Balancer?** 🔹 Real-world use cases & interview-style discussions If you’ve ever struggled to clearly differentiate between these two, this video will simplify it for you. 🎯 📺 Watch here: https://lnkd.in/d9S3MvPc Would love to hear how *you* see API Gateways and Load Balancers fitting into large-scale architectures! 💬 #SystemDesign #APIGateway #LoadBalancer #SoftwareArchitecture #ScalableSystems #TechContent #EngineeringForScale #HighLevelDesignPlaylist
API GATEWAY VS LOAD BALANCER : How API Gateway handles millions of requests
https://www.youtube.com/
To view or add a comment, sign in
-
GA - Cross-region internal Application Load Balancer with GCS buckets. https://lnkd.in/dYuGZB4x The cross-region mode enables you to load balance traffic to backend services that are globally distributed, including traffic management that helps ensure that traffic is directed to the closest backend. This load balancer also enables high availability. Set up guide here ➡️ https://google.smh.re/58FD
To view or add a comment, sign in
-
-
I once worked on an API that deleted a record. Except that each DELETE call also reduced a counter. At first, it seemed harmless. But guess what happened when the load balancer retried the request? The counter went negative. Chaos! And here comes idempotence. It simply means, do something once or do it ten times, the end result is the same. In HTTP: - Idempotent methods (GET, PUT, DELETE) → safe to retry, outcome stays the same. - Non-idempotent methods (POST) → each retry changes the state. Why it matters: - Retries are everywhere — load balancers, proxies, client SDKs. - Without idempotence, retries quietly corrupt your system. 💡 Lesson learned: Never make an idempotent method sneak in extra side effects. APIs might forgive bugs locally, but the internet won’t! #EngineeringStories #DistributedSystems #SystemDesign #Reliability #APIs #Backend #FullStack
To view or add a comment, sign in
-
-
Your website is slow — what’s the fix? CDN or Load Balancer? 🤔 Here’s a fun take with Munna Bhai & Circuit explaining complex infra concepts with food and fun 🍕🍛 #WebPerformance #CloudInfrastructure #GrowXenExplains
To view or add a comment, sign in
-
Your website is slow — what’s the fix? CDN or Load Balancer? 🤔 Here’s a fun take with Munna Bhai & Circuit explaining complex infra concepts with food and fun 🍕🍛 #WebPerformance #CloudInfrastructure #GrowXenExplains
To view or add a comment, sign in
-
🚀 Exploring Node.js Application Scaling through Clustering! Node.js typically operates on a single thread, utilizing just one CPU core regardless of server potency. 👉 Delving into Clustering: - Initiates various worker processes (one for each CPU core). - The master process allocates incoming requests among the workers. - Enhances efficiency, expandability, and resilience. ⚡ Why its amazing? Because, On a 4-core system, 4 workers can manage a workload four times greater. In case of a worker failure, the master reinstates it seamlessly.
To view or add a comment, sign in
-
🎥 **Episode 3 of “The Ultimate System Design Playlist” is live!** 🚀 This time, I’m diving deep into one of the most critical components of scalable architecture: **Load Balancers** ⚖️ In this video, I cover:- 🔹 What exactly a Load Balancer is & why it’s needed 🔹 **Types of Load Balancers** (L4 vs L7) 🔹 **Load Balancing Algorithms** – Round Robin, Least Connections, Hashing, and more 🔄 🔹 Real-world use cases & how big systems use them at scale 🌍 If you’ve ever wondered how traffic is distributed efficiently to handle millions of requests per second – this video will clear it up! 🎯 📺 Watch here: https://lnkd.in/d5r5aS5d I’d love to hear – which load balancing algorithm do you find most interesting, and why? 💬 #SystemDesign #LoadBalancer #DistributedSystems #ScalableArchitecture #SoftwareEngineering #TechContent #EngineeringAtScale #HighLevelDesign
Load Balancer, its types and Load Balancing Algorithms
https://www.youtube.com/
To view or add a comment, sign in