1.10.0+ Upgrade Notice

Follow these steps to upgrade your Gloo Edge or Gloo Edge Enterprise deployments to version 1.10 from previous verisions.

This upgrade guide assumes that you installed Gloo Edge with Helm or glooctl. You can verify this installation by checking for a Helm chart release named gloo in the output of helm ls --all-namespaces.

For steps to avoid downtime during upgrades, check out the Recommended settings.

New CRDs

New CRDs are automatically applied to your cluster when performing a helm install operation. However, they are not applied when performing an helm upgrade operation. This is a deliberate design choice on the part of the Helm maintainers, given the risk associated with changing CRDs. Given this limitation, you need to apply the new CRD to the cluster before upgrading.

Gloo Edge v1.10.0 introduces The GraphQLSchema CRD . Gloo Edge v1.10.8 introduces The MatchableHttpGateway CRD .

Installing the new GraphQLSchema CRD

You can add the new CRD to your cluster in two ways. The first is to supply a URL that points to the CRD template in the public Gloo Edge GitHub repository.

kubectl apply -f https://raw.githubusercontent.com/solo-io/gloo/v1.10.0/install/helm/gloo/crds/graphql_schema.yaml
helm repo update
helm upgrade -n gloo-system gloo gloo/gloo --version=1.10.0
kubectl apply -f https://raw.githubusercontent.com/solo-io/gloo/v1.10.0/install/helm/gloo/crds/graphql_schema.yaml
helm repo update
helm upgrade -n gloo-system glooe gloo/gloo-ee --version=1.10.0

The second option involves using the template that is shipped in the Gloo Edge and Gloo Edge enterprise charts.

helm repo update
helm pull gloo/gloo --version 1.10.0 --untar
kubectl apply -f gloo/crds/graphql_schema.yaml
helm repo update
helm pull glooe/gloo-ee --version 1.10.0 --untar
kubectl apply -f gloo-ee/charts/gloo/crds/graphql_schema.yaml

You can verify that the new CRD has been successfully applied by running the following command:

kubectl get crds graphqlschemas.graphql.gloo.solo.io

Installing the new MatchableHttpGateway CRD

You can add the new CRD to your cluster in two ways. The first is to supply a URL that points to the CRD template in the public Gloo Edge GitHub repository.

kubectl apply -f https://raw.githubusercontent.com/solo-io/gloo/v1.10.8/install/helm/gloo/crds/gateway.solo.io_v1_MatchableHttpGateway.yaml
helm repo update
helm upgrade -n gloo-system gloo gloo/gloo --version=1.10.8
kubectl apply -f https://raw.githubusercontent.com/solo-io/gloo/v1.10.8/install/helm/gloo/crds/gateway.solo.io_v1_MatchableHttpGateway.yaml
helm repo update
helm upgrade -n gloo-system glooe gloo/gloo-ee --version=1.10.5

The second option involves using the template that is shipped in the Gloo Edge and Gloo Edge enterprise charts.

helm repo update
helm pull gloo/gloo --version 1.10.8 --untar
kubectl apply -f gloo/crds/gateway.solo.io_v1_MatchableHttpGateway.yaml
helm repo update
helm pull glooe/gloo-ee --version 1.10.5 --untar
kubectl apply -f gloo-ee/charts/gloo/crds/gateway.solo.io_v1_MatchableHttpGateway.yaml

You can verify that the new CRD has been successfully applied by running the following command:

kubectl get crds httpgateways.gateway.gloo.solo.io

Helm Breaking Changes

--- values.yaml ---
license_secret_name: some-license-secret

# the above becomes
--- new-values.yaml ---
gloo:
  license_secret_name: some-license-secret

Upgrade Gloo Edge

Upgrade Gloo Edge.


helm repo update
helm upgrade -n gloo-system gloo gloo/gloo --version=1.10.0

helm repo update
helm upgrade -n gloo-system gloo glooe/gloo-ee --version=1.10.0

Verify upgrade

To verify that your upgrade was successful, let’s first check the version:

glooctl version

You should see the expected version for all the server components.

Let’s also check that your Gloo Edge installation is healthy by running:

glooctl check

If everything went well, you should see the following output:

Checking deployments... OK
Checking pods... OK
Checking upstreams... OK
Checking upstream groups... OK
Checking auth configs... OK
Checking rate limit configs... OK
Checking VirtualHostOptions... OK
Checking RouteOptions... OK
Checking secrets... OK
Checking virtual services... OK
Checking gateways... OK
Checking proxies... OK
No problems detected.