Skip to content

Commit dedf1f9

Browse files
robscottBobyMCbobs
authored andcommitted
Providing more detailed upgrade notes for v1.1 (kubernetes-sigs#3084)
1 parent 80109c2 commit dedf1f9

1 file changed

Lines changed: 65 additions & 2 deletions

File tree

site-src/guides/index.md

Lines changed: 65 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,11 @@ you.
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+
3237
A Gateway API bundle represents the set of CRDs associated with a version of
3338
Gateway API. Each release includes two channels with different levels of
3439
stability:
@@ -40,7 +45,7 @@ beta, including GatewayClass, Gateway, HTTPRoute, and ReferenceGrant. To install
4045
this 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/).
5863
To 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

66129
After you're done, you can clean up after yourself by uninstalling the Gateway

0 commit comments

Comments
 (0)