Using multiple Ingress controllers
If you want to deploy more than one Ingress controller inside a cluster (for example, to test the TS Ingress controller before deploying it properly), you will need to use Ingress classes to control which resources should be handled by which controller.
The Ingress class is set as an annotation on the resource:
metadata:
annotations:
kubernetes.io/ingress.class: "trafficserver"
The TS Ingress controller will handle any Ingress resource which does not have an Ingress class set, or where the Ingress class is set to "trafficserver".
To change the Ingress classes that TS will handle, set ingress_classes
in
kubernetes.config
(or the $TS_INGRESS_CLASSES
environment variable) to a
whitespace-separate list of values, e.g. "trafficserver ts-staging"
. This
can be used to run multiple copies of the TS Ingress controller in one cluster.
If you do this, the trafficserver
class will not be handled unless you
explicitly include it in the list.
For more information, see Using Multiple Ingress Controller in the Kubernetes documentation.