Solr Operator Documentation

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.

Ensure to read the Upgrade Warnings and Notes for the version you are upgrading to as well as the versions you are skipping.

If you want to skip versions when upgrading, be sure to check out the upgrading minor versions and upgrading patch versions sections.

Version Compatibility Matrixes

Kubernetes Versions

Solr Operator Version 1.15 1.16 - 1.18 1.19 - 1.20 1.21 1.22+
v0.2.6 :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x:
v0.2.7 :x: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x:
v0.2.8 :x: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x:
v0.3.x :x: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x:
v0.4.x :x: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x:
v0.5.x :x: :x: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
v0.6.x :x: :x: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
v0.7.x :x: :x: :x: :heavy_check_mark: :heavy_check_mark:
v0.8.x :x: :x: :x: :x: :heavy_check_mark:

Solr Versions

Solr Operator Version 7.7 8.0 - 8.10 8.11 9.0 - 9.3 9.4+
v0.2.7 :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x: :x:
v0.2.8 :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x: :x:
v0.3.x :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x: :x:
v0.4.x :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x: :x:
v0.5.x :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :x: :x:
v0.6.x :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :one: :heavy_check_mark: :one:
v0.7.x :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :one: :heavy_check_mark: :one:
v0.8.x :x: :x: :heavy_check_mark: :heavy_check_mark: :one: :heavy_check_mark:

Exceptions

Please note that this represents basic compatibility with the Solr Operator. There may be options and features that require newer versions of Solr. (e.g. S3/GCS Backup Support)

Please test to make sure the features you plan to use are compatible with the version of Solr you choose to run.

Upgrade Instructions

Please follow the instructions below when upgrading the Solr Operator.

However, no matter the upgrade, always read the Upgrade Notes for every version between

Upgrading minor versions (vX.A._ -> vX.B._)

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.

There when upgrading minor versions, there may be CRD options that have been deprecated. The Solr Operator will automatically change the existing Solr resources to use the new format. Therefore when upgrading to the next version, which may remove the deprecated option, the existing resources will behave correctly. However, creating new resources with the deprecated options will fail. Be sure to carefully read the Upgrade Warnings to be sure you are not using deprecated options.

Upgrading patch versions (vX.Y.A -> vZ.Y.B)

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.8.0/all-with-dependencies.yaml"
helm upgrade solr-operator apache-solr/solr-operator --version 0.8.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.8.0

v0.7.0

v0.6.0

v0.5.0

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