From e208e7c8e919bcd0f5a4f717d6f9c2a30f7d1291 Mon Sep 17 00:00:00 2001 From: Bruce Hamilton Date: Sat, 18 Oct 2025 19:56:54 -0700 Subject: [PATCH 1/4] Created installing-gateway-api.md And added to Nav --- docs/versioned/.nav.yml | 1 + .../install/installing-gateway-api.md | 66 +++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 docs/versioned/install/installing-gateway-api.md diff --git a/docs/versioned/.nav.yml b/docs/versioned/.nav.yml index 75968b917d..eefd553007 100644 --- a/docs/versioned/.nav.yml +++ b/docs/versioned/.nav.yml @@ -255,6 +255,7 @@ nav: - Installing plugins: - Install Istio for Knative: install/installing-istio.md # TODO: docs for kourier, contour, gateway-api + - Install Gateway API for Knative: install/installing-gateway-api.md - Install Kafka for Knative: install/eventing/kafka-install.md - Install RabbitMQ for Knative: install/eventing/rabbitmq-install.md # N.B. this duplicates an "eventing" topic above, cross-referenced here. diff --git a/docs/versioned/install/installing-gateway-api.md b/docs/versioned/install/installing-gateway-api.md new file mode 100644 index 0000000000..0e8b6816fc --- /dev/null +++ b/docs/versioned/install/installing-gateway-api.md @@ -0,0 +1,66 @@ +--- +audience: administrator +components: + - serving +function: how-to +--- + +# Installing Gateway API for Knative + +This guide shows how to install the Kubernetes Gateway API. There are multiple projects that support Gateway API. + +## Before you begin + +This installation requires the following prerequisites: + +- A Kubernetes cluster with the Knative Serving component installed. +- A Gateway Controller. You can install a Gateway Controller by using one of the following guides: + + - [Simple Gateway](https://gateway-api.sigs.k8s.io/guides/simple-gateway/) (a good one to start out with) + - [HTTP routing](https://gateway-api.sigs.k8s.io/guides/http-routing/) + - [HTTP redirects and rewrites](https://gateway-api.sigs.k8s.io/guides/http-redirect-rewrite/) + - [HTTP traffic splitting](https://gateway-api.sigs.k8s.io/guides/traffic-splitting/) + - [Routing across Namespaces](https://gateway-api.sigs.k8s.io/guides/multiple-ns/) + - [Configuring TLS](https://gateway-api.sigs.k8s.io/guides/tls/) + - [TCP routing](https://gateway-api.sigs.k8s.io/guides/tcp/) + - [gRPC routing](https://gateway-api.sigs.k8s.io/guides/grpc-routing/) + - [Migrating from Ingress](https://gateway-api.sigs.k8s.io/guides/migrating-from-ingress/) + +Some Gateway controller setups include the installation of the Gateway API bundle. + +## Install standard channel + +The standard release channel includes all resources that have graduated to GA or beta, including GatewayClass, Gateway, HTTPRoute, and ReferenceGrant. + +- Use the following command to install the standard channel: + + ```bash + kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.0/standard-install.yaml + ``` + + Refer to the server-side apply documentation to learn more about this kubectl command option. + +## Install Experimental Channel + +The experimental release channel includes everything in the standard release channel plus some experimental resources and fields. This includes TCPRoute, TLSRoute, and UDPRoute. + +Future releases of the API could include breaking changes to experimental resources and fields. For example, any experimental resource or field could be removed in a future release. For more information on the experimental channel, refer to our versioning documentation. + +- Use the following command to install the experimental channel: + + ```bash + kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.0/experimental-install.yaml + ``` + +Refer to the server-side apply documentation to learn more about this kubectl command option. + +## Uninstall Gateway API + +To uninstall the Gateway API, replace `apply` with `delete` in the `kubectl` commands above. + +If these resources are in use or if they were installed by a Gateway controller, then do not uninstall them. This will uninstall the Gateway API resources for the entire cluster. + +## See also + +[Kubernetes Gateway API](https://kubernetes.io/docs/concepts/services-networking/gateway/) +[Getting started with Gateway API](https://gateway-api.sigs.k8s.io/guides/) \ No newline at end of file From a44f0c5ad3f5df516cffcae3941d1cbf4cc0b38d Mon Sep 17 00:00:00 2001 From: Bruce Hamilton Date: Sat, 18 Oct 2025 20:36:46 -0700 Subject: [PATCH 2/4] Update installing-gateway-api.md Misc edits --- .../install/installing-gateway-api.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/versioned/install/installing-gateway-api.md b/docs/versioned/install/installing-gateway-api.md index 0e8b6816fc..ac08b95ce0 100644 --- a/docs/versioned/install/installing-gateway-api.md +++ b/docs/versioned/install/installing-gateway-api.md @@ -7,7 +7,7 @@ function: how-to # Installing Gateway API for Knative -This guide shows how to install the Kubernetes Gateway API. There are multiple projects that support Gateway API. +This guide shows how to install the Kubernetes Gateway API. There are multiple projects that support the Gateway API. You can install either the standard or experimental Gateway API channel. ## Before you begin @@ -28,9 +28,9 @@ This installation requires the following prerequisites: Some Gateway controller setups include the installation of the Gateway API bundle. -## Install standard channel +## Install the standard Gateway API channel -The standard release channel includes all resources that have graduated to GA or beta, including GatewayClass, Gateway, HTTPRoute, and ReferenceGrant. +The standard release channel includes all resources that have graduated to general availability or beta, including [GatewayClass](https://gateway-api.sigs.k8s.io/api-types/gatewayclass/), [Kubernetes Gateway API](https://kubernetes.io/docs/concepts/services-networking/gateway/), [HTTPRoute](https://gateway-api.sigs.k8s.io/api-types/httproute/), and [ReferenceGrant](https://gateway-api.sigs.k8s.io/api-types/referencegrant/). - Use the following command to install the standard channel: @@ -38,13 +38,13 @@ The standard release channel includes all resources that have graduated to GA or kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.0/standard-install.yaml ``` - Refer to the server-side apply documentation to learn more about this kubectl command option. + For more information about the `kubectl --server-side` command, see [Server-Side Apply](https://kubernetes.io/docs/reference/using-api/server-side-apply/). -## Install Experimental Channel +## Install the experimental Gateway API Channel The experimental release channel includes everything in the standard release channel plus some experimental resources and fields. This includes TCPRoute, TLSRoute, and UDPRoute. -Future releases of the API could include breaking changes to experimental resources and fields. For example, any experimental resource or field could be removed in a future release. For more information on the experimental channel, refer to our versioning documentation. +Future releases of the API could include breaking changes to experimental resources and fields. For example, any experimental resource or field could be removed in a future release. - Use the following command to install the experimental channel: @@ -54,13 +54,13 @@ Future releases of the API could include breaking changes to experimental resour Refer to the server-side apply documentation to learn more about this kubectl command option. -## Uninstall Gateway API +## Uninstall the Gateway API -To uninstall the Gateway API, replace `apply` with `delete` in the `kubectl` commands above. +To uninstall the Gateway API, replace `kubectl apply --server-side -f` with `kubectl delete --server-side -f` in the commands above. -If these resources are in use or if they were installed by a Gateway controller, then do not uninstall them. This will uninstall the Gateway API resources for the entire cluster. +Do not uninstall if the resources are in use or if they were installed by a Gateway controller. This command uninstalls the Gateway API resources for the entire cluster. ## See also -[Kubernetes Gateway API](https://kubernetes.io/docs/concepts/services-networking/gateway/) -[Getting started with Gateway API](https://gateway-api.sigs.k8s.io/guides/) \ No newline at end of file +- [Kubernetes Gateway API](https://kubernetes.io/docs/concepts/services-networking/gateway/) +- [Getting started with Gateway API](https://gateway-api.sigs.k8s.io/guides/) From 6aa42eb1564bdb0cb9f23f6e8ee22e4cf8eddb01 Mon Sep 17 00:00:00 2001 From: Bruce Hamilton Date: Sun, 19 Oct 2025 23:18:01 -0700 Subject: [PATCH 3/4] Update installing-gateway-api.md Formatting edits --- .../install/installing-gateway-api.md | 28 +++++++++---------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/docs/versioned/install/installing-gateway-api.md b/docs/versioned/install/installing-gateway-api.md index ac08b95ce0..62d5d665e9 100644 --- a/docs/versioned/install/installing-gateway-api.md +++ b/docs/versioned/install/installing-gateway-api.md @@ -7,7 +7,7 @@ function: how-to # Installing Gateway API for Knative -This guide shows how to install the Kubernetes Gateway API. There are multiple projects that support the Gateway API. You can install either the standard or experimental Gateway API channel. +This guide shows how to install the Kubernetes Gateway API. You can install either the standard or experimental Gateway API channel. ## Before you begin @@ -16,7 +16,7 @@ This installation requires the following prerequisites: - A Kubernetes cluster with the Knative Serving component installed. - A Gateway Controller. You can install a Gateway Controller by using one of the following guides: - - [Simple Gateway](https://gateway-api.sigs.k8s.io/guides/simple-gateway/) (a good one to start out with) + - [Simple Gateway](https://gateway-api.sigs.k8s.io/guides/simple-gateway/) (recommended) - [HTTP routing](https://gateway-api.sigs.k8s.io/guides/http-routing/) - [HTTP redirects and rewrites](https://gateway-api.sigs.k8s.io/guides/http-redirect-rewrite/) - [HTTP traffic splitting](https://gateway-api.sigs.k8s.io/guides/traffic-splitting/) @@ -26,31 +26,29 @@ This installation requires the following prerequisites: - [gRPC routing](https://gateway-api.sigs.k8s.io/guides/grpc-routing/) - [Migrating from Ingress](https://gateway-api.sigs.k8s.io/guides/migrating-from-ingress/) -Some Gateway controller setups include the installation of the Gateway API bundle. +Some Gateway controller setups include the installation of the Gateway API. ## Install the standard Gateway API channel The standard release channel includes all resources that have graduated to general availability or beta, including [GatewayClass](https://gateway-api.sigs.k8s.io/api-types/gatewayclass/), [Kubernetes Gateway API](https://kubernetes.io/docs/concepts/services-networking/gateway/), [HTTPRoute](https://gateway-api.sigs.k8s.io/api-types/httproute/), and [ReferenceGrant](https://gateway-api.sigs.k8s.io/api-types/referencegrant/). -- Use the following command to install the standard channel: +Use the following command to install the standard channel: - ```bash - kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.0/standard-install.yaml - ``` +```bash +kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.0/standard-install.yaml +``` - For more information about the `kubectl --server-side` command, see [Server-Side Apply](https://kubernetes.io/docs/reference/using-api/server-side-apply/). +For more information about the `kubectl --server-side` command, see [Server-Side Apply](https://kubernetes.io/docs/reference/using-api/server-side-apply/). ## Install the experimental Gateway API Channel -The experimental release channel includes everything in the standard release channel plus some experimental resources and fields. This includes TCPRoute, TLSRoute, and UDPRoute. +The experimental release channel includes everything in the standard release channel plus some experimental resources and fields. This includes TCPRoute, TLSRoute, and UDPRoute. Keep in mind that future releases of the API could introduce breaking changes as any experimental resource or field could be removed in a future release. -Future releases of the API could include breaking changes to experimental resources and fields. For example, any experimental resource or field could be removed in a future release. +Use the following command to install the experimental channel: -- Use the following command to install the experimental channel: - - ```bash - kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.0/experimental-install.yaml - ``` +```bash +kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.0/experimental-install.yaml +``` Refer to the server-side apply documentation to learn more about this kubectl command option. From c3bd262adcbe8378b8c1cfc1effd321241a9da5a Mon Sep 17 00:00:00 2001 From: Bruce Hamilton Date: Sun, 19 Oct 2025 23:33:53 -0700 Subject: [PATCH 4/4] Update installing-gateway-api.md minor edit --- docs/versioned/install/installing-gateway-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/versioned/install/installing-gateway-api.md b/docs/versioned/install/installing-gateway-api.md index 62d5d665e9..14ed6c817c 100644 --- a/docs/versioned/install/installing-gateway-api.md +++ b/docs/versioned/install/installing-gateway-api.md @@ -7,7 +7,7 @@ function: how-to # Installing Gateway API for Knative -This guide shows how to install the Kubernetes Gateway API. You can install either the standard or experimental Gateway API channel. +This page shows how to install the Kubernetes Gateway API. You can install either the standard or experimental Gateway API channel. ## Before you begin