Skip to content

Commit 35f2b91

Browse files
authored
Add description for enabling experimental features (#2546)
Problem: There is insufficient documentation on enabling experimental features in our guides. Solution: Add an includes description for enabling experimental features that we can use for any guides on experimental features. Also updated gateway api compatibility document. Testing: Locally generated the documentation through Hugo and it works.
1 parent d242622 commit 35f2b91

File tree

5 files changed

+111
-49
lines changed

5 files changed

+111
-49
lines changed

Diff for: site/content/how-to/traffic-management/securing-backend-traffic.md

+7-1
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,15 @@ Learn how to encrypt HTTP traffic between NGINX Gateway Fabric and your backend
1212

1313
In this guide, we will show how to specify the TLS configuration of the connection from the Gateway to a backend pod/s via the Service API object using a [BackendTLSPolicy](https://gateway-api.sigs.k8s.io/api-types/backendtlspolicy/). This covers the use-case where the service or backend owner is doing their own TLS and NGINX Gateway Fabric needs to know how to connect to this backend pod that has its own certificate over HTTPS.
1414

15+
## Note on Gateway API Experimental Features
16+
17+
{{< important >}} BackendTLSPolicy is a Gateway API resource from the experimental release channel. {{< /important >}}
18+
19+
{{<include "installation/install-gateway-api-experimental-features.md" >}}
20+
1521
## Before you begin
1622

17-
- [Install]({{< relref "installation/" >}}) NGINX Gateway Fabric. Please note that the Gateway APIs from the experimental channel are required, and NGF must be deployed with the `--gateway-api-experimental-features` flag.
23+
- [Install]({{< relref "installation/" >}}) NGINX Gateway Fabric with experimental features enabled.
1824
- Save the public IP address and port of NGINX Gateway Fabric into shell variables:
1925

2026
```text

Diff for: site/content/how-to/traffic-management/tls-passthrough.md

+7-1
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,15 @@ Learn how to use TLSRoutes to configure TLS Passthrough load-balancing with NGIN
1111

1212
In this guide, we will show how to configure TLS passthrough for your application, using a [TLSRoute](https://gateway-api.sigs.k8s.io/reference/spec/#gateway.networking.k8s.io/v1alpha2.TLSRoute).
1313

14+
## Note on Gateway API Experimental Features
15+
16+
{{< important >}} TLSRoute is a Gateway API resource from the experimental release channel. {{< /important >}}
17+
18+
{{<include "installation/install-gateway-api-experimental-features.md" >}}
19+
1420
## Before you begin
1521

16-
- [Install]({{< relref "installation/" >}}) NGINX Gateway Fabric.
22+
- [Install]({{< relref "installation/" >}}) NGINX Gateway Fabric with experimental features enabled.
1723
- Save the public IP address and port of NGINX Gateway Fabric into shell variables:
1824

1925
```text
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
title: "Install NGINX Gateway Fabric with experimental features"
3+
docs: "DOCS-000"
4+
---
5+
6+
To use Gateway API experimental resources, the Gateway API resources from the experimental channel must be installed before deploying NGINX Gateway Fabric. Additionally, NGINX Gateway Fabric must have experimental features enabled.
7+
8+
{{< caution >}}As noted in the [Gateway API documentation](https://gateway-api.sigs.k8s.io/guides/#install-experimental-channel), future releases of the Gateway API can include breaking changes to experimental resources and fields. {{</ caution >}}
9+
10+
To install the Gateway API resources from the experimental channel, run the following:
11+
12+
```shell
13+
kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.4.0" | kubectl apply -f -
14+
```
15+
16+
{{< note >}}If you plan to use the `edge` version of NGINX Gateway Fabric, you can replace the version in `ref` with `main`, for example `ref=main`. {{</ note >}}
17+
18+
To enable experimental features on NGINX Gateway Fabric:
19+
20+
Using Helm: Set `nginxGateway.gwAPIExperimentalFeatures.enable` to true. An example can be found
21+
in the [Installation with Helm]({{< relref "installation/installing-ngf/helm.md#custom-installation-options" >}}) guide.
22+
23+
Using Kubernetes manifests: Add the `--gateway-api-experimental-features` command-line flag to the deployment manifest args.
24+
An example can be found in the [Installation with Kubernetes manifests]({{< relref "installation/installing-ngf/manifests.md#3-deploy-nginx-gateway-fabric" >}}) guide.

Diff for: site/content/includes/installation/install-gateway-api-resources.md

+8-4
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,23 @@
22
docs: "DOCS-1438"
33
---
44

5-
{{<note>}}The [Gateway API resources](https://github.com/kubernetes-sigs/gateway-api) from the standard channel must be installed before deploying NGINX Gateway Fabric. If they are already installed in your cluster, please ensure they are the correct version as supported by the NGINX Gateway Fabric - [see the Technical Specifications](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.4.0/README.md#technical-specifications).{{</note>}}
5+
{{< note >}} The [Gateway API resources](https://github.com/kubernetes-sigs/gateway-api) from the standard channel must be installed before deploying NGINX Gateway Fabric. If they are already installed in your cluster, please ensure they are the correct version as supported by the NGINX Gateway Fabric - [see the Technical Specifications](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.4.0/README.md#technical-specifications). {{</ note >}}
66

77
To install the Gateway API resources, run the following:
88

99
```shell
1010
kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.4.0" | kubectl apply -f -
1111
```
1212

13-
{{<note>}}If you plan to use the `edge` version of NGINX Gateway Fabric, you can replace the version in `ref` with `main`, for example `ref=main`.{{</note>}}
13+
{{< note >}}If you plan to use the `edge` version of NGINX Gateway Fabric, you can replace the version in `ref` with `main`, for example `ref=main`.{{</ note >}}
1414

15-
Alternatively, you can install the Gateway API resources from the experimental channel. We support a subset of the
16-
additional features provided by the experimental channel. To install from the experimental channel, run the following:
15+
Alternatively, you can install the Gateway API resources from the experimental channel.
16+
Installing Gateway API resources from the experimental channel includes everything in the standard release channel plus additional experimental resources and fields.
17+
NGINX Gateway Fabric currently supports a subset of the additional features provided by the experimental channel.
18+
To install from the experimental channel, run the following:
1719

1820
```shell
1921
kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.4.0" | kubectl apply -f -
2022
```
23+
24+
{{< note >}} To learn more about what Gateway API resources NGINX Gateway Fabric currently supports, visit our [Gateway API Compatibility]({{< relref "overview/gateway-api-compatibility.md" >}}) document. {{</ note >}}

0 commit comments

Comments
 (0)