Ingress
-
Ingress defines routing rules, To implement these rules we need ingress controller.
-
Popular ingress controllers
| Ingress Controller | Protocol Support | Features | Performance | Ease of Setup | Use Case / Notes |
|---|---|---|---|---|---|
| NGINX Ingress Controller | HTTP, HTTPS, gRPC | Rewrite, rate limiting, auth, metrics | Good | Easy–Medium | Most widely used, flexible |
| Traefik | HTTP, HTTPS, WebSockets, gRPC | Auto-discovery, Let’s Encrypt, dashboards | Good | Easy | Good for dynamic environments |
| HAProxy Ingress | HTTP, HTTPS | Advanced load balancing, SSL, stickiness | Very High | Medium | Suited for performance-sensitive apps |
| Contour (Envoy-based) | HTTP, HTTPS | Envoy proxy, TLS, HTTP/2, gRPC | Very High | Medium | Great for modern protocols |
| Istio Gateway | HTTP, HTTPS, gRPC, mTLS | Service mesh integration, policy, telemetry | High | Complex | Best if using full service mesh |
| Kong Ingress Controller | HTTP, HTTPS, gRPC, TCP | Plugins, authentication, rate limiting | High | Medium | API management capabilities |
| AWS ALB Ingress Controller | HTTP/HTTPS | AWS ALB integration, auto scaling | Good | Easy (AWS) | Best on AWS EKS |
| GKE Ingress (GCLB) | HTTP/HTTPS/SSL | Google Cloud LB integration | Good | Simple (GCP) | Best on GKE |
| Azure Application Gateway | HTTP/HTTPS | WAF, autoscaling | Good | Easy (Azure) | Best on AKS |
| Traefik Mesh / Maesh | HTTP/HTTPS | Lightweight service mesh focus | Medium | Easy | Mesh-native ingress features |
Lets try this out
-
Lets create two docker images
- /home: docker image:
shaikkhajaibrahim/ingress-home:1.0 - /admin: docker image:
shaikkhajaibrahim/ingress-admin:1.0
- /home: docker image:
-
Lets create an aks cluster and use lens
-
Lets install nginx ingress controller
installing nginx ingress controller in azure kubernetes service using kubectl
- Refer Here for the changes done
Gateway
- Refer Here for official docs
- Here we have gateway controller (CRDs)
- Gateway will have infra + http Routes
- Gateway controllers
| Controller | Type | Maintained by | Gateway API Support | L4 / L7 | Best Use Case |
|---|---|---|---|---|---|
| NGINX Ingress Controller | Ingress | Kubernetes Community | ⚠️ Partial | L7 | Standard HTTP/HTTPS routing |
| NGINX Plus Ingress | Ingress / Gateway | F5 | ⚠️ Partial | L4 + L7 | Enterprise traffic control |
| Traefik | Ingress / Gateway | Traefik Labs | ✅ Yes | L4 + L7 | Dynamic, cloud-native routing |
| HAProxy Ingress | Ingress / Gateway | HAProxy | ✅ Yes | L4 + L7 | High-performance workloads |
| Istio | Gateway (Mesh) | Istio Project | ✅ Yes | L4 + L7 | Advanced traffic management |
| Envoy Gateway | Gateway | CNCF | ✅ Native | L4 + L7 | Gateway API–first design |
| Kong Gateway | Ingress / Gateway | Kong Inc. | ✅ Yes | L4 + L7 | API management & plugins |
| AWS Load Balancer Controller | Cloud Gateway | AWS | ⚠️ Partial | L4 + L7 | AWS-native ingress |
| Azure Application Gateway Ingress Controller | Cloud Gateway | Microsoft | ❌ No | L7 | Azure-native ingress |
| GKE Gateway Controller | Cloud Gateway | ✅ Yes | L4 + L7 | GKE-native gateway |
- Prompt:
install haproxy gateway controller in aks - Refer Here for azure specific example.
