I am trying to install Traefik with the gateway API experimental annotations, which enablesthe Gateway API.
But I get this Error.
helm install -n traefik traefik traefik/traefik -f ~/kubernetes/traefik/values.yaml
Error: INSTALLATION FAILED: unable to build kubernetes objects from release manifest: [resource mapping not found for name: "traefik-gateway" namespace: "traefik" from "": no matches for kind "Gateway" in version "gateway.networking.k8s.io/v1alpha2"
ensure CRDs are installed first, resource mapping not found for name: "traefik" namespace: "" from "": no matches for kind "GatewayClass" in version "gateway.networking.k8s.io/v1alpha2"
ensure CRDs are installed first]
The corresponding part of the values.yaml looks like this:
experimental:
# This value is no longer used, set the image.tag to a semver higher than 3.0, e.g. "v3.0.0-beta3"
# v3:
# -- Enable traefik version 3
# -- Enable traefik experimental plugins
plugins: {}
# demo:
# moduleName: github.com/traefik/plugindemo
# version: v0.2.1
kubernetesGateway:
# -- Enable traefik experimental GatewayClass CRD
enabled: true
## Routes are restricted to namespace of the gateway by default.
## https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io/v1beta1.FromNamespaces
#namespacePolicy: All
# certificate:
# group: "core"
# kind: "Secret"
# name: "mysecret"
# -- By default, Gateway would be created to the Namespace you are deploying Traefik to.
# You may create that Gateway in another namespace, setting its name below:
#namespace: "default"
# Additional gateway annotations (e.g. for cert-manager.io/issuer)
#annotations:
# cert-manager.io/issuer: letsencrypt
This is basicly resolved.
Problem was that the v1.0.0 of the gateway-admission-server can not handle v1alpha2 anymore, because they updated it to v1beta1 and are not backwards compatible.
We will see what will happen. For me the workaround is to downgrade to Version v0.8.1 of the admission-server image, in the webhook-install.yaml.