Migration: Steps needed between the versions¶
v3.0 to v3.1¶
Kubernetes Provider RBACs¶
Starting with v3.1, the Kubernetes Providers now use the EndpointSlices API (Kubernetes >=v1.21) to discover service endpoint addresses. It also brings NodePort load-balancing which requires Nodes resources lookup.
Therefore, in the corresponding RBACs (see KubernetesIngress, KubernetesCRD, and KubernetesGateway provider RBACs):
- the
endpoints
right has to be removed and the followingendpointslices
right has to be added:
...
- apiGroups:
- discovery.k8s.io
resources:
- endpointslices
verbs:
- list
- watch
...
- the
nodes
right has to be added:
...
- apiGroups:
- ""
resources:
- nodes
verbs:
- get
- list
- watch
...
Gateway API: KubernetesGateway Provider¶
In v3.1, the KubernetesGateway Provider is no longer an experimental feature.
It can be enabled without the associated experimental.kubernetesgateway
option, which is now deprecated.
An example of the experimental kubernetesgateway
option
experimental:
kubernetesgateway: true
[experimental]
kubernetesgateway=true
--experimental.kubernetesgateway=true
Remediation¶
The kubernetesgateway
option should be removed from the experimental section of the static configuration.
To configure kubernetesgateway
, please check out the KubernetesGateway Provider documentation.
v3.1.0 to v3.1.1¶
IngressClass Lookup¶
The Kubernetes Ingress provider option disableIngressClassLookup
has been deprecated in v3.1.1, and will be removed in the next major version.
Please use the disableClusterScopeResources
option instead to avoid cluster scope resources discovery (IngressClass, Nodes).