solr-operator

Solr Operator Upgrade Notes

Please carefully read the entries for all versions between the version you are running and the version you want to upgrade to.

Version Compatibility Matrixes

Kubernetes Versions

Solr Operator Version 1.15 1.16 - 1.21 1.22+
v0.2.6 :heavy_check_mark: :heavy_check_mark: :x:
v0.2.7 :x: :heavy_check_mark: :x:
v0.2.8 :x: :heavy_check_mark: :x:
v0.3.0 :x: :heavy_check_mark: :x:
v0.4.0 :x: :heavy_check_mark: :x:

Solr Versions

Solr Operator Version 6.6 7.7 8.0 - 8.5 8.6+
v0.2.6 :grey_question: :heavy_check_mark: :heavy_check_mark: :x:
v0.2.7 :grey_question: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
v0.2.8 :grey_question: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
v0.3.0 :grey_question: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
v0.4.0 :grey_question: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:

Upgrading from v0.2.x to v0.3.x

If you are upgrading from v0.2.x to v0.3.x, please follow the Upgrading to Apache guide. This is a special upgrade that requires different instructions.

Upgrading minor versions (v_.X._)

In order to upgrade minor versions (e.g. v0.2.5 -> v0.3.0), you must upgrade one minor version at a time (e.g. v0.2.0 -> v0.3.0 -> v0.4.0). It is also necessary to upgrade to the latest patch version before upgrading to the next minor version. Therefore if you are running v0.2.5 and you want to upgrade to v0.3.0, you must first upgrade to v0.2.8 before upgrading to v0.3.0.

Upgrading patch versions (v_._.X)

You should be able to upgrade from a version to any patch version with the same minor and major versions. It is always encouraged to upgrade to the latest patch version of the minor and major version you are running. There is no need to upgrade one patch version at a time (e.g. v0.2.5 -> v0.2.6 -> v0.2.7 -> v0.2.8), instead you can leap to the latest patch version (e.g. v0.2.5 -> v0.2.8).

Installing the Solr Operator vs Solr CRDs

Installing the Solr Operator, especially via the Helm Chart, does not necessarily mean that you are installing the required CRDs for that version of the Solr Operator.

If the Solr CRDs already exist in your Kubernetes cluster, then Helm will not update them even if the CRDs have changed between the Helm chart versions. Instead, you will need to manually install the CRDs whenever upgrading your Solr Operator.
You should always upgrade your CRDs before upgrading the Operator

You can do this via the following command, replacing <version> with the version of the Solr Operator you are installing:

# Just replace the Solr CRDs
kubectl replace -f "http://solr.apache.org/operator/downloads/crds/<version>/all.yaml"
# Just replace the Solr CRDs and all CRDs it might depend on (e.g. ZookeeperCluster)
kubectl replace -f "http://solr.apache.org/operator/downloads/crds/<version>/all-with-dependencies.yaml"

It is strongly recommended to use kubectl create or kubectl replace, instead of kubectl apply when creating/updating CRDs.

Upgrading the Zookeeper Operator

When upgrading the Solr Operator, you may need to upgrade the Zookeeper Operator at the same time. If you are using the Solr Helm chart to deploy the Zookeeper operator, then you won’t need to do anything besides installing the CRD’s with dependencies, and upgrade the Solr Operator helm deployment.

# Just replace the Solr CRDs and all CRDs it might depend on (e.g. ZookeeperCluster)
kubectl replace -f "http://solr.apache.org/operator/downloads/crds/v0.4.0/all-with-dependencies.yaml"
helm upgrade solr-operator apache-solr/solr-operator --version 0.4.0

Note that the Helm chart version does not contain a v prefix, which the downloads version does. The Helm chart version is the only part of the Solr Operator release that does not use the v prefix.

Upgrade Warnings and Notes

v0.4.0

v0.3.0

v0.2.7

v0.2.6

v0.2.4

v0.2.3

v0.2.2

v0.2.1

v0.2.0