Skip to main content
helm chart · solr

Solr

Helm chart for deploying Apache Solr datastore

Latest version
v0.0.7
Chart type
Data source
Requires
Helm 3+

Install

Add the zop.dev chart repository, then install solr into your cluster.

helm repo add zopdev https://helm.zop.dev
helm repo update
helm install my-solr zopdev/solr --version v0.0.7

The Solr Helm chart allows you to deploy Solr, an open-source enterprise search platform, in your Kubernetes cluster. Solr is highly reliable and scalable, enabling you to build search solutions for various applications.


Prerequisites

  • Kubernetes 1.19+
  • Helm 3+

Add Helm Repository

To add the Helm repository, run the following commands:

Terminal window
helm repo add zopdev https://helm.zop.dev
helm repo update

Refer to the Helm Repository Documentation for additional details.


Install Helm Chart

To install the Solr Helm chart, use the following command:

Terminal window
helm install [RELEASE_NAME] zopdev/solr

Replace [RELEASE_NAME] with your desired release name. For example:

Terminal window
helm install my-solr zopdev/solr

For customized installation, provide a values.yaml file or override values during installation.

See Helm Install Documentation for additional details.


Uninstall Helm Chart

To uninstall the Solr Helm chart and remove all associated Kubernetes resources, run:

Terminal window
helm uninstall [RELEASE_NAME]

Example:

Terminal window
helm uninstall my-solr

Refer to Helm Uninstall Documentation for more information.


Configuration

Below are the configurable parameters for the Solr Helm chart:

InputTypeDescriptionDefault
imagestringDocker image and tag for the Solr container."solr:8.4"
resources.requests.cpustringMinimum CPU resources required by the Solr container."100m"
resources.requests.memorystringMinimum memory resources required by the Solr container."1Gi"
resources.limits.cpustringMaximum CPU resources the Solr container can use."1"
resources.limits.memorystringMaximum memory resources the Solr container can use."2Gi"
securityContext.runAsUserintegerUser ID under which the Solr process runs for security.1001
securityContext.fsGroupintegerGroup ID for filesystem permissions.1001
tlsSecretNamestringName of the Kubernetes secret for TLS certificates.""
hoststringHostname for Solr’s HTTP endpoint.""
tlsHoststringHostname for Solr’s HTTPS endpoint.""
diskSizestringSize of the persistent volume for Solr data storage."10Gi"

You can override these values in a values.yaml file or via the command line.


Example values.yaml File

Terminal window
image: "solr:8.4"
resources:
requests:
memory: "1Gi"
cpu: "200m"
limits:
memory: "4Gi"
cpu: "2"
securityContext:
runAsUser: 1001
fsGroup: 1001
tlsSecretName: "solr-tls-secret"
host: "solr.example.com"
tlsHost: "secure-solr.example.com"
diskSize: "20Gi"

Apply the configuration file during installation:

Terminal window
helm install my-solr zopdev/solr -f values.yaml

Features

  • High Security: The Helm chart allows you to configure secure environments using securityContext and TLS secrets.
  • Persistent Storage: Persistent volumes ensure that Solr’s data is durable across deployments.
  • Resource Control: Customizable CPU and memory resource allocations to optimize performance.
  • Scalable Deployment: Easily scale resources or replicas for production use.

Advanced Usage

TLS Configuration

To enable secure communication, specify a Kubernetes secret containing TLS certificates in the tlsSecretName field. You can also set host and tlsHost for custom endpoints.

Terminal window
tlsSecretName: "solr-tls-secret"
host: "solr.example.com"
tlsHost: "secure-solr.example.com"

Persistent Volume Configuration

Customize the disk size and storage class to match your requirements:

Terminal window
diskSize: "50Gi"
storageClass: "fast-storage"

Pod Scheduling

nodeSelector, tolerations and affinity are passed straight through to the pod spec. All three are empty by default and render nothing, so leaving them unset changes nothing for an existing release.

Together they place the workload on a dedicated node pool — the nodeSelector picks the pool, the toleration gets past its taint:

Terminal window
nodeSelector:
workload: stateful
tolerations:
- key: workload
operator: Equal
value: stateful
effect: NoSchedule

affinity takes a full Affinity object and is rendered verbatim.


Contributing

We welcome contributions to improve this Helm chart. Please refer to the CONTRIBUTING.md file for contribution guidelines.


Code of Conduct

To maintain a healthy and collaborative community, please adhere to our Code of Conduct.


License

This project is licensed under the LICENSE. Please review it for terms of use.


Connection Config

  • SOLR_HOST : Hostname of the Solr StatefulSet service. Derived from release name.
  • SOLR_PORT : Port number for Solr HTTP interface.Defaults at 8983.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

472 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

472 rule families documented
353 resource types covered
read-only default access level
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·