blog
  • Blogs
    • Medium Articles
      • Linux
        • 40 Powerful Linux Networking Commands You Must Know.
        • These (Linux) VI Editor Shortcuts You Must Know
        • Bash/Linux Interview Questions for DevOps Engineers
        • Page 1
      • Git
        • 40 Powerful Git Commands Every Developer Should Know
        • 10 Git Best Practices That Every Developer Must Know
      • DevOps/SRE Interview Questions and Answers
        • Top DevOps/SRE Interview Questions and Answers on AWS VPC
        • Top 10 Common DevOps/SRE Interview Questions and Answers on Terraform Best Practices
        • Top 10 Common DevOps/SRE Interview Questions and Answers on Kubernetes Best Practices
        • Top 10 Common DevOps/SRE Interview Questions and Answers on Dockerfiles
        • Top 10 Common DevOps/SRE Interview Questions and Answers on Grafana
      • Installation
        • Docker Installation on Ubuntu 20/22
        • Install WireGuard VPN on Docker Compose
        • Install Redis on Docker Compose
        • Gravitee Docker Compose
      • Kubernetes Series 2025
        • Understanding Kubernetes: Part 1 -Control Plane
        • Understanding Kubernetes: Part 2 -Worker Node
        • Understanding Kubernetes: Part 3 -Pod
        • Understanding Kubernetes: Part 4-ReplicaSets
        • Understanding Kubernetes: Part 5 -Deployment
        • Understanding Kubernetes: Part 6 -DaemonSets
        • Understanding Kubernetes: Part 7 -StatefulSet
        • Understanding Kubernetes: Part 8 -ConfigMap
        • Understanding Kubernetes: Part 9 -Kubernetes Secret
        • Understanding Kubernetes: Part 10 -StorageClass
        • Understanding Kubernetes: Part 11 -Persistent Volume (PV)
        • Understanding Kubernetes: Part 12 -Persistent Volume Claim (PVC)
        • Understanding Kubernetes: Part 13 -Services
        • Understanding Kubernetes: Part 14 -ClusterIP Service
        • Understanding Kubernetes: Part 15 -NodePort Service
        • Understanding Kubernetes: Part 16 -Load Balancer Service
        • Understanding Kubernetes: Part 17 -Ingress
        • Understanding Kubernetes: Part 18 -Ingress Controller
        • Understanding Kubernetes: Part 19 -Headless Service
        • Understanding Kubernetes: Part 20-Network Policy
        • Understanding Kubernetes: Part 21 -CNI
        • Understanding Kubernetes: Part 22 Kubernetes Resource Requests & Limits
        • Understanding Kubernetes: Part 23 Node Selector
        • Understanding Kubernetes: Part 24 Taints and Tolerations
        • Understanding Kubernetes: Part 25 Affinity and Anti-Affinity
        • Understanding Kubernetes: Part 26 Preemption and Priority
        • Understanding Kubernetes: Part 27 Role and RoleBinding
        • Understanding Kubernetes: Part 28 ClusterRole and ClusterRoleBinding
        • Understanding Kubernetes: Part 29 Service Account
        • Understanding Kubernetes: Part 30 Horizontal Pod Autoscaler (HPA)
        • Understanding Kubernetes: Part 31 Vertical Pod Autoscaler (VPA)
        • Understanding Kubernetes: Part 33 Startup Probe
        • Understanding Kubernetes: Part 34 Liveness Probe
        • Understanding Kubernetes: Part 35 Readiness Probe
        • Understanding Kubernetes: Part 36 Container Network Interface (CNI)
        • Understanding Kubernetes: Part 37 Container Runtime Interface (CRI)
        • Understanding Kubernetes: Part 38 Container Storage Interface (CSI)
      • Cloudflare
        • Cloudflare Tunnel for Secure HTTP Routing
      • Nginx
        • Nginx use cases that every engineer must know
Powered by GitBook
On this page
  1. Blogs
  2. Medium Articles
  3. Kubernetes Series 2025

Understanding Kubernetes: Part 17 -Ingress

PreviousUnderstanding Kubernetes: Part 16 -Load Balancer ServiceNextUnderstanding Kubernetes: Part 18 -Ingress Controller

Last updated 4 months ago


If you’ve been following our Kubernetes series 2025, welcome back! For new readers, check out Part 16:

What is Ingress in Kubernetes?

An Ingress in Kubernetes is an API object that manages external access to services within a cluster, typically HTTP and HTTPS traffic. Unlike a LoadBalancer service, which exposes an application using an external IP, Ingress provides routing rules to direct traffic to different services based on paths or hostnames. It acts as a Layer 7 (HTTP/HTTPS) load balancer and can provide features such as SSL termination, name-based virtual hosting, and more.

Example Use Case:

Suppose you have multiple microservices (e.g., web, api, admin) running in your cluster, and you want to expose them under a single domain name (example.com). An Ingress can route requests like:

  • example.com/web → Routes to the web service

  • example.com/api → Routes to the api service

  • example.com/admin → Routes to the admin service

Capabilities:

  1. Path-Based and Host-Based Routing:

  • Direct traffic to specific services based on URL paths or domain names

2. SSL/TLS Termination:

  • Secure your application by handling HTTPS traffic via TLS certificates.

3. Load Balancing:

  • Distributes incoming traffic across backend Pods efficiently.

4. Authentication and Authorization:

  • Supports additional security features using annotations (e.g., OAuth, JWT).

5. Rewrite and Redirect Rules:

  • Modify request URLs to simplify or change the routing logic.

6. Integration with Ingress Controllers:

  • Requires an Ingress Controller such as Nginx, Traefik, or AWS ALB Ingress.


YAML Example:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - host: example.com
    http:
      paths:
      - path: /web
        pathType: Prefix
        backend:
          service:
            name: web-service
            port:
              number: 80
      - path: /api
        pathType: Prefix
        backend:
          service:
            name: api-service
            port:
              number: 80

Explanation:

  • The Ingress routes traffic for example.com/web to web-service and example.com/api to api-service.

  • The rewrite-target annotation modifies incoming requests to remove the prefix.

  • Requires an Ingress Controller like Nginx to be deployed in the cluster.


In My Previous Role:

As a Senior DevOps Engineer, I effectively utilized Kubernetes Ingress to optimize application exposure in production environments. I implemented Nginx Ingress to manage HTTP and HTTPS traffic across multiple microservices, enabling:

  • Seamless routing and load balancing for customer-facing services.

  • Secure HTTPS traffic using TLS certificates managed via Let’s Encrypt.

  • Improved deployment flexibility by consolidating multiple services under a single domain.

  • Automated Ingress rule updates via CI/CD pipelines to ensure zero-downtime deployments.

This approach helped reduce operational complexity and improved application availability by providing a unified access point with enhanced security features.


🚀 Ready to Master Kubernetes?

Take your Kubernetes journey to the next level with the Master Kubernetes: Zero to Hero course! 🌟 Whether you’re a beginner or aiming to sharpen your skills, this hands-on course covers:

✅ Kubernetes Basics — Grasp essential concepts like nodes, pods, and services. ✅ Advanced Scaling — Learn HPA, VPA, and resource optimization. ✅ Monitoring Tools — Master Prometheus, Grafana, and AlertManager. ✅ Real-World Scenarios — Build production-ready Kubernetes setups.

🎓 What You’ll Achieve

💡 Confidently deploy and manage Kubernetes clusters. 🛡️ Secure applications with ConfigMaps and Secrets. 📈 Optimize and monitor resources for peak performance.

Don’t miss your chance to become a Kubernetes expert! 💻✨

🔥 Start Learning Now: [Join the Master Kubernetes Course]()

🚀 Stay ahead in DevOps and SRE! 🔔 and never miss a beat on Kubernetes and more. 🌟

https://cloudops0.gumroad.com/l/k8s
Subscribe now
Understanding Kubernetes: Load Balancer Service
Ingress in kubernetes