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"