Hi Boopathy, Elango,
As per my understanding, your network flow makes good architectural sense and is actually quite well thought out for a Zero Trust model supporting both L4 (non-HTTP) and L7 (HTTP/HTTPS) traffic in Azure Kubernetes Service (AKS).
As per the Best practice guidance https://learn.microsoft.com/en-us/azure/aks/operator-best-practices-network
To distribute HTTP or HTTPS traffic to your applications, use ingress resources and controllers. Compared to an Azure load balancer, ingress controllers provide extra features and can be managed as native Kubernetes resources.
L7 Traffic Path (HTTP/HTTPS APIs):
Correct use of Azure Front Door for L7 global routing, WAF, and SSL offload.
Kubernetes Ingress resources and controllers, like Azure Application Gateway Ingress Controller (AGIC), operate at Layer 7. They can evaluate HTTP requests and make routing decisions based on URL paths, hostnames, and more. This provides richer traffic management capabilities.
DNS directs traffic to the right path depending on origination.
This is Zero Trust compliant — ingress is controlled at each layer.
L4 Traffic Path:
Use of Kubernetes Service with type: LoadBalancer
for ILB will be correct.
DNAT from public IP to ILB private IP (Firewall-controlled) is valid for controlled exposure.
ILB can forward L4 traffic to pods without application-layer inspection ,meets L4 requirements.
Security & Zero Trust Considerations
- Firewall before ILB ensures controlled exposure of L4 traffic.
- WAF (You can use Barracuda WAF for Azure) and App Gateway filter L7 traffic before hitting the cluster.
- Private endpoints and internal AGIC reduce attack surface.
- Ingress Controller applies Kubernetes-native RBAC, policies, etc.
Suggestions:
L7 Monitoring: Enable diagnostics in AGIC and Front Door for better visibility.
Cert Rotation: Automate TLS certs in AGIC via Azure Key Vault integration.
Conduct thorough testing of the entire flow to ensure both L4 and L7 traffic is processed as expected. This includes simulating various traffic patterns and use cases.
Additional reference: https://learn.microsoft.com/en-us/samples/azure-samples/aks-front-door-end-to-end-tls/aks-front-door-end-to-end-tls/
Hope this helps!
Let me know if you have any further queries!