2929
3030## Installing Gateway API
3131
32+ !!! danger "Upgrades from earlier Experimental Channel releases"
33+
34+ If you've previously installed an earlier version of experimental channel,
35+ refer to the [v1.1 upgrade notes](#v11-upgrade-notes).
36+
3237A Gateway API bundle represents the set of CRDs associated with a version of
3338Gateway API. Each release includes two channels with different levels of
3439stability:
@@ -40,7 +45,7 @@ beta, including GatewayClass, Gateway, HTTPRoute, and ReferenceGrant. To install
4045this channel, run the following kubectl command:
4146
4247``` bash
43- kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.0 .0/standard-install.yaml
48+ kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.1 .0/standard-install.yaml
4449```
4550
4651### Install Experimental Channel
@@ -58,9 +63,67 @@ documentation](/concepts/versioning/).
5863To install the experimental channel, run the following kubectl command:
5964
6065``` bash
61- kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.0 .0/experimental-install.yaml
66+ kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.1 .0/experimental-install.yaml
6267```
6368
69+ ### v1.1 Upgrade Notes
70+ If you are already using previous versions of GRPCRoute or BackendTLSPolicy
71+ experimental channel CRDs from previous Gateway API releases, you'll need to be
72+ careful with this upgrade. If you haven't installed Gateway API before, or have
73+ exclusively used the standard channel of the API, you can skip the rest of this
74+ section.
75+
76+ #### GRPCRoute
77+ ** Summary:** If you're already using v1alpha2 GRPCRoute, stick with the
78+ experimental channel of GRPCRoute in v1.1 until the implementation(s) you're
79+ relying on have been updated to support GRPCRoute v1.
80+
81+ ** Explanation:** With the graduation of GRPCRoute to GA, it is now included in
82+ standard channel. Unfortunately, that can be problematic for anyone that was
83+ already using the experimental channel version of GRPCRoute. As a rule, CRDs in
84+ standard channel do not expose alpha API version to avoid any version
85+ deprecations in that channel. That means that the standard channel version of
86+ GRPCRoute excludes v1alpha2. All implementations of GRPCRoute built before the
87+ v1.1 release of Gateway API would have exclusively relied on v1alpha2 and will
88+ need to be updated to support GRPCRoute v1. Until implementations have been
89+ updated to support v1, you can safely upgrade to the experimental channel
90+ version of GRPCRoute included in v1.1 that exposes both v1 and v1alpha2.
91+
92+ ** Upgrade Sequence:** If you're already using v1alpha2 GRPCRoute, we'd recommend
93+ the following upgrade sequence:
94+
95+ 1 . Install * experimental* v1.1 GRPCRoute CRD
96+ 2 . Update all your manifests to use ` v1 ` instead of ` v1alpha2 `
97+ 3 . Upgrade to an implementation that supports GRPCRoute ` v1 ` API Version
98+ 4 . Install * standard* channel v1.1 GRPCRoute CRD
99+
100+ #### BackendTLSPolicy
101+ ** Summary:** If you've previously installed BackendTLSPolicy, wait until the
102+ implementation(s) you're relying on have been updated to support ` v1alpha3 ` of
103+ the API. When upgrading to an implementation that supports ` v1alpha3 ` , you'll
104+ also need to uninstall the old BackendTLSPolicy CRD before installing the new
105+ one.
106+
107+ ** Explanation:** BackendTLSPolicy had several significant fields renamed in
108+ v1.1, resulting in a version bump to v1alpha3. As this is experimental channel,
109+ we are not providing an in-place upgrade path for this change, instead you'll
110+ need to coordinate the CRD upgrade with the implementation(s) of
111+ BackendTLSPolicy that you're relying on.
112+
113+ ** Upgrade Sequence:** If you're already using v1alpha2 BackendTLSPolicy, we'd
114+ recommend the following upgrade sequence:
115+
116+ 1 . Wait for your implementation of choice to release support for v1alpha3
117+ 2 . Delete the older pre-v1.1 BackendTLSPolicy CRD (this will also delete all
118+ instances of BackendTLSPolicy in your cluster)
119+ 3 . Install the new v1.1 BackendTLSPolicy CRD
120+ 4 . Deploy the version of your implementation that supports BackendTLSPolicy v1alpha3
121+
122+ Note that some implementations may prefer switching the order of steps 3 and 4,
123+ it's worth checking with any relevant release notes for your implementation of
124+ choice.
125+
126+
64127### Cleanup
65128
66129After you're done, you can clean up after yourself by uninstalling the Gateway
0 commit comments