pull/14153/head
Sarah Alsmiller 2 years ago
parent 773e73f325
commit 49ae65b9de

@ -13,50 +13,50 @@ This topic provides full details about the `Gateway` resource.
A `Gateway` is an instance of network infrastructure that determines how service traffic should be handled. A `Gateway` contains one or more `listeners` that bind to a set of IP addresses. An `HTTPRoute` or `TCPRoute` can then attach to a gateway listener to direct traffic from the gateway to a service.
Gateway instances derive their configurations from the `GatewayClass` resource, which acts as a template for individual `Gateway` deployments. Refer to [GatewayClass](/docs/api-gateway/configuration/gatewayclass) for additional information.
Gateway instances derive their configurations from the [`GatewayClass`](/docs/api-gateway/configuration/gatewayclass) resource, which acts as a template for individual `Gateway` deployments. Refer to [GatewayClass](/docs/api-gateway/configuration/gatewayclass) for additional information.
Specify the following parameters to declare a Gateway:
| Parameter | Description | Required |
|:-----------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------:|:--------:|
| kind | Specifies the type of configuration object. The value should always be Gateway | Required |
| description | Human-readable string for describing the purpose of the Gateway. | Optional |
| version | Specifies the Kubernetes API version. The value should always be gateway.networking.k8s.io/v1alpha2 | Required |
| scope | Specifies the effective scope of the Gateway. The value should always be namespaced. | Required |
| fields | Specifies the configurations for the Gateway. The fields are listed in the Configuration model. Details for each field are described in the Specification. | Required |
| `kind` | Specifies the type of configuration object. The value should always be Gateway | Required |
| `description` | Human-readable string for describing the purpose of the Gateway. | Optional |
| `version ` | Specifies the Kubernetes API version. The value should always be gateway.networking.k8s.io/v1alpha2 | Required |
| `scope` | Specifies the effective scope of the Gateway. The value should always be namespaced. | Required |
| `fields` | Specifies the configurations for the Gateway. The fields are listed in the Configuration model. Details for each field are described in the Specification. | Required |
## Configuration model
* gatewayClassName: string | required
* listeners: array of objects | required
* allowedRoutes: object | required
* namespaces: object | required
* from: string | required
* selector: object | required if from is configured to selector
* matchExpressions: array of objects | required if matchLabels is not configured
* key: string | required if matchExpressions is declared
* operator: string | required if matchExpressions is declared
* values: array of strings | required if matchExpressions is declared
* matchLabels: map of strings | required if matchExpressions is not configured
* hostname: string | required
* name: string | required
* port: integer | required
* protocol: string | required
* tls: object | required if protocol is set to HTTPS
* certificateRefs: array or objects | required if tls is declared
* name: string | required if certificateRefs is declared
* namespace: string | required if certificateRefs is declared
* mode: string | required if certificateRefs is declared
* options: map of strings | optional
* `gatewayClassName`: string | required
* `listeners`: array of objects | required
* `allowedRoutes`: object | required
* `namespaces`: object | required
* `from`: string | required
* `selector`: object | required if from is configured to selector
* `matchExpressions`: array of objects | required if matchLabels is not configured
* `key`: string | required if matchExpressions is declared
* `operator`: string | required if matchExpressions is declared
* `values`: array of strings | required if matchExpressions is declared
* `matchLabels`: map of strings | required if matchExpressions is not configured
* `hostname`: string | required
* `name`: string | required
* `port`: integer | required
* `protocol`: string | required
* `tls`: object | required if protocol is set to HTTPS
* `certificateRefs`: array or objects | required if tls is declared
* `name`: string | required if certificateRefs is declared
* `namespace`: string | required if certificateRefs is declared
* `mode`: string | required if certificateRefs is declared
* `options`: map of strings | optional
## Specification
This topic provides details about the configuration parameters.
### gatewayClassName
Specifies the name of the `GatewayClass` resource used for the `Gateway` instance.
Specifies the name of the [`GatewayClass`](/docs/api-gateway/configuration/gatewayclass) resource used for the `Gateway` instance.
* Type: string
* Required: required
@ -100,11 +100,11 @@ Specifies an array of requirements for matching namespaces. If a match is found,
| Requirement | Description | Type |
|:-----------:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:----------------:|
| key | Specifies that label that the key applies to. | string |
| operator | Specifies the key's relation to a set of values. The following values are valid:In: description of what this means NotIn: description of what this means Exists: description of what this means DoesNotExist: description of what this means | string |
| values | Specifies an array of string values. If the operator is configured to In or NotIn,the values array must be non-empty. If theoperator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. | array of strings |
| scope | Specifies the effective scope of the Gateway. The value should always be namespaced. | Required |
| fields | Specifies the configurations for the Gateway. The fields are listed in the Configuration model. Details for each field are described in the Specification. | Required |
|`key` | Specifies that label that the key applies to. | string |
|`operator` | Specifies the key's relation to a set of values. The following values are valid:In: description of what this means NotIn: description of what this means Exists: description of what this means DoesNotExist: description of what this means | string |
|`values` | Specifies an array of string values. If the operator is configured to In or NotIn,the values array must be non-empty. If theoperator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. | array of strings |
|`scope` | Specifies the effective scope of the Gateway. The value should always be namespaced. | Required |
|`fields` | Specifies the configurations for the Gateway. The fields are listed in the Configuration model. Details for each field are described in the Specification. | Required |
```yaml
namespaceSelector:

Loading…
Cancel
Save