When hosting Traffic Parrot virtual services in a Kubernetes cluster, sometimes access to the virtual services is required from traffic outside of the Kubernetes cluster.
In these cases, it is typical to use
Kubernetes Ingress alongside a
DNS name server to provide access to the services inside the cluster.
Here are two common options used to achieve this.
Option A - Static domain with unique Ingress path mappings
- DNS server points static domain record to static Ingress controller IP
- Unique paths are used to identify a unique backend service port
- Ingress rules use the path prefix to route to a backend service port
-
Example
- trafficparrot.xyz.com points to Ingress controller IP 1.2.3.4 using static DNS entry
- trafficparrot.xyz.com/service1/http Ingress path prefix maps to backend service1 port 1234
- trafficparrot.xyz.com/service1/https Ingress path prefix maps to backend service1 port 4567
- trafficparrot.xyz.com/service2/http Ingress path prefix maps to backend service2 port 1234
- https://kubernetes.io/docs/concepts/services-networking/ingress/#simple-fanout
Option B - Wildcard domain with unique Ingress host mappings
- DNS server points wildcard domain record to static Ingress controller IP
- Unique domain names are used to identify a unique backend service port
- Ingress rules use the host field to route to a backend service port
-
Example
No comments:
Post a Comment