diff --git a/index.html b/index.html index ef61fc592..0aec49112 100644 --- a/index.html +++ b/index.html @@ -70,7 +70,7 @@ args: - --watch-ingress-without-class=true ... ... -

I have more than one controller in my cluster and already use the annotation ?

No problem. This should still keep working, but we highly recommend you to test!

I have more than one controller running in my cluster, and I want to use the new spec ?

In this scenario, you need to create multiple ingressClasses (see example one). But be aware that ingressClass works in a very specific way: you will need to change the .spec.controller value in your IngressClass and point the controller to the relevant ingressClass. Let's see some example, supposing that you have two Ingress Classes:

Ingress-Nginx-Controller-nginx1 with k8s.io/ingress-nginx1 Ingress-Nginx-Controller-nginx2 with k8s.io/ingress-nginx2 Then, when you create an Ingress Object with IngressClassName = ingress-nginx2, it will look for controllers with controller-class=k8s.io/ingress-nginx2 and as Ingress-Nginx-Controller-nginx2 is watching objects that points to ingressClass="k8s.io/ingress-nginx2, it will serve that object, while Ingress-Nginx-Controller-nginx1 will ignore the ingress object.

Bear in mind that, if your Ingress-Nginx-Controller-nginx2 is started with the flag --watch-ingress-without-class=true, then it will serve:

I am seeing this error message in the logs of the Ingress-NGINX controller "ingress class annotation is not equal to the expected by Ingress Controller". Why ?

How to easily install multiple instances of the ingress-NGINX controller in the same cluster ?

I have more than one controller in my cluster and already use the annotation ?

No problem. This should still keep working, but we highly recommend you to test!

I have more than one controller running in my cluster, and I want to use the new spec ?

In this scenario, you need to create multiple ingressClasses (see example one). But be aware that ingressClass works in a very specific way: you will need to change the .spec.controller value in your IngressClass and point the controller to the relevant ingressClass. Let's see some example, supposing that you have two Ingress Classes:

When deploying your ingress controllers, you will have to change the --controller-class field as follows:

Then, when you create an Ingress Object with IngressClassName = ingress-nginx2, it will look for controllers with controller-class=k8s.io/ingress-nginx2 and as Ingress-Nginx-Controller-nginx2 is watching objects that points to ingressClass="k8s.io/ingress-nginx2, it will serve that object, while Ingress-Nginx-Controller-nginx1 will ignore the ingress object.

Bear in mind that, if your Ingress-Nginx-Controller-nginx2 is started with the flag --watch-ingress-without-class=true, then it will serve:

I am seeing this error message in the logs of the Ingress-NGINX controller "ingress class annotation is not equal to the expected by Ingress Controller". Why ?

How to easily install multiple instances of the ingress-NGINX controller in the same cluster ?