Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion api/v1beta1/solrcloud_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ const (

DefaultSolrReplicas = int32(3)
DefaultSolrRepo = "library/solr"
DefaultSolrVersion = "8.11"
DefaultSolrVersion = "9.10.0"
DefaultSolrJavaMem = "-Xms1g -Xmx2g"
DefaultSolrOpts = ""
DefaultSolrLogLevel = "INFO"
Expand Down
2 changes: 1 addition & 1 deletion dev-docs/e2e-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ $ make e2e-tests TEST_SEED=89724023 SOLR_IMAGE=apache/solr-nightly:10.0.0-SNAPSH
The default parallelism is `3`.
- **SOLR_IMAGE** - The solr docker image label to use in the integration tests.
It is recommended to use only supported versions for the Solr Operator version being tested.
Default is `solr:8.11`.
Default is `solr:9.10.0`.
- **KUBERETES_VERSION** - A full Kubernetes version, starting with `v`, to use when creating the KinD Cluster.
To find a list of all possible versions, check the [KinD Node Docker tags](https://hub.docker.com/r/kindest/node/tags).
Default is `v1.26.6`.
Expand Down
8 changes: 4 additions & 4 deletions docs/local_tutorial.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,9 +122,9 @@ After inspecting the status of you Kube cluster, you should see a deployment for
To start a Solr Cloud cluster, we will create a yaml that will tell the Solr Operator what version of Solr Cloud to run, and how many nodes, with how much memory etc.

```bash
# Create a 3-node cluster v8.11 with 300m Heap each:
# Create a 3-node cluster v9.10.0 with 300m Heap each:
helm install example-solr apache-solr/solr --version 0.10.0-prerelease \
--set image.tag=8.11 \
--set image.tag=9.10.0 \
--set solrOptions.javaMemory="-Xms300m -Xmx300m" \
--set addressability.external.method=Ingress \
--set addressability.external.domainName="ing.local.domain" \
Expand Down Expand Up @@ -207,13 +207,13 @@ By default, the helm chart does not set the `replicas` field, so it is safe to u
So we wish to upgrade to a newer Solr version:

```bash
# Take note of the current version, which is 8.11.2
# Take note of the current version
curl -s http://default-example-solrcloud.ing.local.domain/solr/admin/info/system | grep solr-i

# Update the solrCloud configuration with the new version, keeping all previous settings and the number of nodes set by the autoscaler.
helm upgrade example-solr apache-solr/solr --version 0.10.0-prerelease \
--reuse-values \
--set image.tag=8.7
--set image.tag=9.10.0

# Click the 'Show all details" button in Admin UI and start hitting the "Refresh" button
# See how the operator upgrades one pod at a time. Solr version is in the 'node' column
Expand Down
2 changes: 1 addition & 1 deletion example/test_solrcloud.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ spec:
storage: "5Gi"
replicas: 3
solrImage:
tag: "8.11"
tag: "9.10.0"
solrJavaMem: "-Xms1g -Xmx3g"
solrModules:
- jaegertracer-configurator
Expand Down
2 changes: 1 addition & 1 deletion example/test_solrcloud_backuprepos.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ metadata:
spec:
replicas: 1
solrImage:
tag: "8.11"
tag: "9.10.0"
backupRepositories:
# "Volume" repositories store backup data in a Kubernetes volume.
- name: "volume_repository_1"
Expand Down
2 changes: 1 addition & 1 deletion example/test_solrcloud_private_repo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,5 @@ spec:
replicas: 3
solrImage:
repository: myprivate-repo.jfrog.io/solr
tag: "8.11"
tag: "9.10.0"
imagePullSecret: "k8s-docker-registry-secret"
2 changes: 1 addition & 1 deletion example/test_solrcloud_toleration_example.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ metadata:
spec:
replicas: 1
solrImage:
tag: "8.11"
tag: "9.10.0"
customSolrKubeOptions:
podOptions:
nodeSelector:
Expand Down
2 changes: 1 addition & 1 deletion example/test_solrprometheusexporter.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ spec:
name: "example"
numThreads: 4
image:
tag: "8.11"
tag: "9.10.0"
4 changes: 2 additions & 2 deletions hack/release/smoke_test/test_cluster.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Test the release candidate in a Kind cluster
-i Solr Operator docker image to use (Optional, defaults to apache/solr-operator:<version>)
-g GPG Key (fingerprint) used to sign the artifacts (Optional, if not provided then the helm chart will not be verified)
-k Kubernetes Version to test with (full tag, e.g. v1.26.6) (Optional, defaults to a compatible version)
-t Full solr image, or image tag (for the official Solr image), to test with (e.g. apache/solr-nightly:9.0.0, 8.11). (Optional, defaults to a compatible version)
-t Full solr image, or image tag (for the official Solr image), to test with (e.g. apache/solr-nightly:9.0.0, 9.10.0). (Optional, defaults to a compatible version)
EOF
}

Expand Down Expand Up @@ -77,7 +77,7 @@ if [[ -z "${KUBERNETES_VERSION:-}" ]]; then
KUBERNETES_VERSION="v1.26.6"
fi
if [[ -z "${SOLR_IMAGE:-}" ]]; then
SOLR_IMAGE="${SOLR_VERSION:-8.11}"
SOLR_IMAGE="${SOLR_VERSION:-9.10.0}"
fi
if [[ "${SOLR_IMAGE}" != *":"* ]]; then
SOLR_IMAGE="solr:${SOLR_IMAGE}"
Expand Down
4 changes: 2 additions & 2 deletions helm/solr-operator/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ annotations:
storage: "20Gi"
replicas: 3
solrImage:
tag: 8.11
tag: 9.10.0
solrJavaMem: "-Xms4g -Xmx4g"
customSolrKubeOptions:
podOptions:
Expand Down Expand Up @@ -155,7 +155,7 @@ annotations:
name: "example"
numThreads: 4
image:
tag: 8.11
tag: 9.10.0
- apiVersion: solr.apache.org/v1beta1
kind: SolrBackup
metadata:
Expand Down
4 changes: 2 additions & 2 deletions helm/solr/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ apiVersion: v2
name: solr
description: A SolrCloud cluster running on Kubernetes via the Solr Operator
version: 0.10.0-prerelease
appVersion: 8.11.1
appVersion: 9.10.0
kubeVersion: ">= 1.22.0-0"
home: https://solr.apache.org
sources:
Expand Down Expand Up @@ -65,7 +65,7 @@ annotations:
url: https://solr.apache.org/operator/resources#tutorials
artifacthub.io/images: |
- name: solr
image: solr:8.11
image: solr:9.10.0
whitelisted: true
artifacthub.io/signKey: |
fingerprint: <fingerprint>
Expand Down
22 changes: 11 additions & 11 deletions helm/solr/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ There may be breaking changes between the version you are using and the version
To install a SolrCloud for the first time in your cluster, you can use the latest version or a specific version, run with the following commands:

```bash
helm install example apache-solr/solr --version 0.10.0-prerelease --set image.tag=8.11
helm install example apache-solr/solr --version 0.10.0-prerelease --set image.tag=9.10.0
```

The command deploys a SolrCloud object on the Kubernetes cluster with the default configuration.
Expand All @@ -50,7 +50,7 @@ _Note that the Helm chart version does not contain a `v` prefix, which the Solr
If you are upgrading your SolrCloud deployment, you should always use a specific version of the chart and upgrade **after [upgrading the Solr Operator](https://artifacthub.io/packages/helm/apache-solr/solr-operator#upgrading-the-solr-operator) to the same version**:

```bash
helm upgrade example apache-solr/solr --version 0.10.0-prerelease --reuse-values --set image.tag=8.11
helm upgrade example apache-solr/solr --version 0.10.0-prerelease --reuse-values --set image.tag=9.10.0
```

The upgrade will be done according to the `upgradeStrategy.method` chosen in the values.
Expand All @@ -76,19 +76,19 @@ Descriptions on how to use these options can be found in the [SolrCloud document

### Running Solr

| Key | Type | Default | Description |
|-----|------|---------|-------------|
| Key | Type | Default | Description |
|-----|------|-------------------|-------------|
| fullnameOverride | string | `""` | A custom name for the Solr Operator Deployment |
| nameOverride | string | `""` | |
| replicas | int | `3` | The number of Solr pods to run in the Solr Cloud. If you want to use autoScaling, do not set this field. |
| image.repository | string | `"solr"` | The repository of the Solr image |
| image.tag | string | `"8.11"` | The tag/version of Solr to run |
| image.pullPolicy | string | | PullPolicy for the Solr image, defaults to the empty Pod behavior |
| image.imagePullSecret | string | | PullSecret for the Solr image |
| image.tag | string | `"9.10.0"` | The tag/version of Solr to run |
| image.pullPolicy | string | | PullPolicy for the Solr image, defaults to the empty Pod behavior |
| image.imagePullSecret | string | | PullSecret for the Solr image |
| busyBoxImage.repository | string | `"busybox"` | The repository of the BusyBox image |
| busyBoxImage.tag | string | `"1.28.0-glibc"` | The tag/version of BusyBox to run |
| busyBoxImage.pullPolicy | string | | PullPolicy for the BusyBox image, defaults to the empty Pod behavior |
| busyBoxImage.imagePullSecret | string | | PullSecret for the BusyBox image |
| busyBoxImage.pullPolicy | string | | PullPolicy for the BusyBox image, defaults to the empty Pod behavior |
| busyBoxImage.imagePullSecret | string | | PullSecret for the BusyBox image |
| solrOptions.javaMemory | string | `"-Xms1g -Xmx2g"` | Java memory parameters |
| solrOptions.javaOpts | string | `""` | Additional java arguments to pass via the command line. ZooKeeper-connection related properties should be reserved for `solrOptions.zkJavaOpts` (see below). |
| solrOptions.zkJavaOpts | string | `""` | Additional java arguments required to connect to ZooKeeper to pass via the command line |
Expand All @@ -104,11 +104,11 @@ Descriptions on how to use these options can be found in the [SolrCloud document
| updateStrategy.method | string | `"Managed"` | The method for conducting updates of Solr pods. Either `Managed`, `StatefulSet` or `Manual`. See the [docs](https://apache.github.io/solr-operator/docs/solr-cloud/solr-cloud-crd.html#update-strategy) for more information |
| updateStrategy.managedUpdate.maxPodsUnavailable | int-or-string | `"25%"` | The number of Solr pods in a Solr Cloud that are allowed to be unavailable during the rolling restart. Either a static number, or a percentage representing the percentage of total pods requested for the statefulSet. |
| updateStrategy.managedUpdate.maxShardReplicasUnavailable | int-or-string | `1` | The number of replicas for each shard allowed to be unavailable during the restart. Either a static number, or a percentage representing the percentage of the number of replicas for a shard. |
| updateStrategy.restartSchedule | [string (CRON)](https://pkg.go.dev/github.com/robfig/cron/v3?utm_source=godoc#hdr-CRON_Expression_Format) | | A CRON schedule for automatically restarting the Solr Cloud. [Refer here](https://pkg.go.dev/github.com/robfig/cron/v3?utm_source=godoc#hdr-CRON_Expression_Format) for all possible CRON syntaxes accepted. |
| updateStrategy.restartSchedule | [string (CRON)](https://pkg.go.dev/github.com/robfig/cron/v3?utm_source=godoc#hdr-CRON_Expression_Format) | | A CRON schedule for automatically restarting the Solr Cloud. [Refer here](https://pkg.go.dev/github.com/robfig/cron/v3?utm_source=godoc#hdr-CRON_Expression_Format) for all possible CRON syntaxes accepted. |
| availability.podDisruptionBudget.enabled | boolean | `true` | Create [PodDisruptionBudget(s)](https://kubernetes.io/docs/tasks/run-application/configure-pdb/) to ensure the availability of SolrNodes. |
| availability.podDisruptionBudget.method | string | `"ClusterWide"` | The method by which PodDisruptionBudgets should be created. The only option currently is `ClusterWide`. |
| serviceAccount.create | boolean | `false` | Create a serviceAccount to be used for all pods being deployed (Solr & ZK). If `serviceAccount.name` is not specified, the full name of the deployment will be used. |
| serviceAccount.name | string | | The optional default service account used for Solr and ZK unless overridden below. If `serviceAccount.create` is set to `false`, this serviceAccount must exist in the target namespace. |
| serviceAccount.name | string | | The optional default service account used for Solr and ZK unless overridden below. If `serviceAccount.create` is set to `false`, this serviceAccount must exist in the target namespace. |
| backupRepositories | []object | | A list of BackupRepositories to connect your SolrCloud to. Visit the [SolrBackup docs](https://apache.github.io/solr-operator/docs/solr-backup) or run `kubectl explain solrcloud.spec.backupRepositories` to see the available options. |
| scaling.vacatePodsOnScaleDown | boolean | `true` | While scaling down the SolrCloud, move replicas off of Solr Pods before they are deleted. This only affects pods that will not exist after the scaleDown operation. |
| scaling.populatePodsOnScaleUp | boolean | `true` | While scaling up the SolrCloud, migrate replicas onto the new Solr Pods after they are created. This uses the Balance Replicas API in Solr that is only available in Solr 9.3+. This option will be ignored if using an unsupported version of Solr. |
Expand Down
2 changes: 1 addition & 1 deletion tests/e2e/suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ var (
logger logr.Logger

defaultOperatorImage = "apache/solr-operator:" + version.FullVersion()
defaultSolrImage = "solr:8.11"
defaultSolrImage = "solr:9.10.0"

operatorImage = getEnvWithDefault(operatorImageEnv, defaultOperatorImage)
solrImage = getEnvWithDefault(solrImageEnv, defaultSolrImage)
Expand Down
4 changes: 2 additions & 2 deletions tests/scripts/manage_e2e_tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Available actions are: run-tests, create-cluster, destroy-cluster, kubeconfig
-h Display this help and exit
-i Solr Operator docker image to use (Optional, defaults to apache/solr-operator:<version>)
-k Kubernetes Version to test with (full tag, e.g. v1.24.16) (Optional, defaults to a compatible version)
-s Full solr image, or image tag (for the official Solr image), to test with (e.g. apache/solr-nightly:9.4.0, 8.11). (Optional, defaults to a compatible version)
-s Full solr image, or image tag (for the official Solr image), to test with (e.g. apache/solr-nightly:9.4.0, 9.10.0). (Optional, defaults to a compatible version)
-a Load additional local images into the test Kubernetes cluster. Provide option multiple times for multiple images. (Optional)
EOF
}
Expand Down Expand Up @@ -76,7 +76,7 @@ if [[ -z "${KUBERNETES_VERSION:-}" ]]; then
KUBERNETES_VERSION="v1.26.6"
fi
if [[ -z "${SOLR_IMAGE:-}" ]]; then
SOLR_IMAGE="${SOLR_VERSION:-9.8.1}"
SOLR_IMAGE="${SOLR_VERSION:-9.10.0}"
fi
if [[ "${SOLR_IMAGE}" != *":"* ]]; then
SOLR_IMAGE="solr:${SOLR_IMAGE}"
Expand Down
Loading