GatewayClass

GatewayClass is a cluster-scoped resource defined by the infrastructure provider. This resource represents a class of Gateways that can be instantiated. You must apply GatewayClass only once in a cluster. GatewayClass is applied at the global level.

Note: In any situation, when the GatewayClass CR is to be deleted from the cluster, the configuration in the data plane is also deleted. However, when the GatewayClass is reapplied to the cluster, there is no assurance that all the other related CRs will start to work. To ensure that all the CRs are working you must delete and reapply the CRs.

CR Parameters

The table below provides the description and implementation details of the supported Gateway CR spec parameters:

Parameters Description Implementation Details
controllerName Specifies the name of the controller that manages the Gateways of this class. The value must be a domain-prefixed path. This is a mandatory field. For example, f5.com/<namespaceofcontroller>-f5-cne-controller <namespaceofcontroller>: The namespace in which the CNE controller is installed.
description Specifies the definition of GatewayClass. For example, F5 BIG-IP Kubernetes Gateway As per the Gateway API community standard.

GatewayClass CR Status

The Accepted condition of GatewayClass

conditions.status

conditions.reason

description

Unknown

Pending

Initial state. Waiting for the controller.

True

Accepted

Accepted

Sample CR

apiVersion: gateway.networking.k8s.io/v1
kind: GatewayClass
metadata:
  name: my-gateway-class
spec:
  controllerName: "f5.com/default-f5-cne-controller"
  description: "F5 BIG-IP Kubernetes Gateway"