You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since the latest tag is being used, we can't simply just repoint the image back to the previous release, but we can instead use Kubernetes' built in rollback feature.
kubectl rollout undo deployment.apps/web-editor-node -n production
There are two components of GKE that need to be upgraded, the control plane (or cluster master node), and the cluster nodes themselves (or node pools), in that order.
Upgrading the GKE control plane
Upgrade the GKE control plane first, by following the steps below.
Look up the latest available version in the Kubernetes release changelog to determine if there are any breaking changes that will require updates to your manifest files. Based on this information, determine the version you want to upgrade the cluster to (ideally the latest supported version) and hit save changes. This should begin the control plane upgrade. Since this is a regional cluster, there should be no downtime during this process however, the API will be unavailable, so do not attempt a deploy during the upgrade.
Upgrading the GKE node pool
Wait until the GKE control plane upgrade is complete and then proceed by upgrading the GKE node pool using the following steps.
Navigate to the workloads page to make sure that you have a few replicas (pods) of each service running in the cluster so that the node draining process doesn't cause downtime.
Navigate back to the main GKE service page where you see the cluster listing and you should see that there is an update available.
Select the version that is the same as the control plane.
Update the version in the terraform
Since we've done the upgrade manually, the terraform file should be updated to reflect the current version in case we need to recreate the cluster from scratch.