Skip to main content
logoTetrate Istio SubscriptionVersion: Next

TIS1504 - Gateway API Class Not Found in Configuration

The specified Gateway API Class is not found in the cluster configuration.

Recommendation: Ensure gatewayClassName References a Valid GatewayClass

To make sure your Gateway functions properly, update the gatewayClassName to reference a valid GatewayClass that has been configured in the cluster.

Examples

  1. Gateway with Non-Existent gatewayClassName

    apiVersion: gateway.networking.k8s.io/v1alpha2
    kind: Gateway
    metadata:
    name: my-gateway
    namespace: example-namespace
    spec:
    gatewayClassName: "non-existent-class"
    listeners:
    - name: http
    port: 80
    protocol: HTTP

    Explanation: The gatewayClassName field in the Gateway resource references non-existent-class, but there is no corresponding GatewayClass configured in the cluster. This results in the Gateway being unusable since it cannot be linked to a valid class for managing network traffic.

Recommendation

Change the gatewayClassName field to reference an existing configured GatewayClass.

  1. Update gatewayClassName to Reference an Existing GatewayClass

    Update the gatewayClassName to point to a valid GatewayClass that has been configured in the cluster.

    apiVersion: gateway.networking.k8s.io/v1alpha2
    kind: Gateway
    metadata:
    name: my-gateway
    namespace: example-namespace
    spec:
    gatewayClassName: "existing-class"
    listeners:
    - name: http
    port: 80
    protocol: HTTP

    Explanation: By changing the gatewayClassName to reference existing-class, which is a valid GatewayClass, the Gateway resource can be properly utilized to route traffic according to the intended configuration.

  2. Verify the Availability of the GatewayClass

    Ensure the GatewayClass being referenced is available in the cluster. You can create or check existing GatewayClass definitions as needed.

    apiVersion: gateway.networking.k8s.io/v1alpha2
    kind: GatewayClass
    metadata:
    name: existing-class
    spec:
    controllerName: "example.gateway.controller"

    Explanation: Ensuring that the GatewayClass exists in the cluster allows the Gateway to use it effectively for network traffic management.