| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. |
| # The ASF licenses this file to You under the Apache License, Version 2.0 |
| # (the "License"); you may not use this file except in compliance with |
| # the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # Default values for solr. |
| # This is a YAML-formatted file. |
| # Declare variables to be passed into your templates. |
| |
| nameOverride: "" |
| fullnameOverride: "" |
| |
| # If you want to use autoScaling, do not set this field |
| replicas: null |
| |
| global: |
| imagePullSecrets: [] |
| clusterDomain: "" |
| |
| # Use a serviceAccount for all pods created under this chart (Solr and ZK) |
| serviceAccount: |
| # Specifies whether a ServiceAccount should be created |
| create: false |
| # The name of the ServiceAccount to use. |
| # Required if create is false. |
| # If not set and create is true, a name is generated using the fullname template |
| name: "" |
| |
| ## Annotations to be added to ServiceAccount |
| annotations: {} |
| |
| image: |
| repository: "solr" |
| tag: "" |
| # Default pullPolicy is empty, which is Always for "latest" tags and IfNotPresent for all others. |
| pullPolicy: "" |
| imagePullSecret: "" |
| |
| busyBoxImage: {} |
| # repository: "busybox" |
| # tag: "1.28.0-glibc" |
| # pullPolicy: "" |
| # imagePullSecret: "" |
| |
| solrOptions: |
| javaMemory: "" |
| javaOpts: "" |
| zkJavaOpts: "" |
| logLevel: "" |
| gcTune: "" |
| solrModules: [] |
| additionalLibs: [] |
| |
| # Enable authentication for the Solr Cloud |
| # More information can be found at: |
| # https://apache.github.io/solr-operator/docs/solr-cloud/solr-cloud-crd.html#authentication-and-authorization |
| security: {} |
| # authenticationType: Basic |
| # basicAuthSecret: secret-name |
| # probesRequireAuth: false |
| # bootstrapSecurityJson: |
| # name: my-custom-security-json-secret |
| # key: security.json |
| |
| |
| # Specify how the SolrCloud should be addressable |
| # https://apache.github.io/solr-operator/docs/solr-cloud/solr-cloud-crd.html#addressability |
| addressability: |
| podPort: 8983 |
| commonServicePort: null |
| # kubeDomain is defaulted by global.clusterDomain if it's not provided |
| kubeDomain: "" |
| # Use external to provide endpoint(s) for your SolrCloud outside of Kubernetes |
| external: {} |
| # method: "Ingress" |
| # domainName: "example.com" |
| # additionalDomainNames: [] |
| # useExternalAddress: false |
| # hideNodes: false |
| # hideCommon: false |
| # nodePortOverride: null |
| # ingressTLSTermination: |
| # tlsSecret: "" |
| # useDefaultTLSSecret: false |
| |
| # Specify how rolling updates should be managed for the Solr StatefulSet |
| # https://apache.github.io/solr-operator/docs/solr-cloud/solr-cloud-crd.html#update-strategy |
| updateStrategy: |
| method: "Managed" |
| # Options for the managed update method |
| managed: {} |
| # The number of Solr pods in a Solr Cloud that are allowed to be unavailable during the rolling restart. |
| # More pods may become unavailable during the restart, however the Solr Operator will not kill pods if the limit has already been reached. |
| # Either a static number, or a percentage representing the percentage of total pods requested for the statefulSet. |
| # maxPodsUnavailable: "25%" |
| |
| # 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. |
| # Defaults to 1 |
| # maxShardReplicasUnavailable: 1 |
| # Cron schedule for automatically restarting the Solr Cloud |
| # For available CRON syntaxes, check here: https://pkg.go.dev/github.com/robfig/cron/v3?utm_source=godoc#hdr-CRON_Expression_Format |
| restartSchedule: "" |
| |
| # More information can be found at: |
| # https://apache.github.io/solr-operator/docs/solr-cloud/solr-cloud-crd.html#data-storage |
| dataStorage: |
| # Either persistent or ephemeral |
| type: "ephemeral" |
| |
| # Specify a capacity for your data storage. |
| # This effects both ephemeral and persistent storage. |
| capacity: "20Gi" |
| |
| # Options for ephemeral storage. Only used if type = "ephemeral" |
| ephemeral: {} |
| # emptyDir: {} |
| # hostPath: {} |
| |
| # Options for persistent storage. Only used if type = "persistent" |
| persistent: |
| reclaimPolicy: "Retain" |
| pvc: |
| name: "" |
| labels: {} |
| annotations: {} |
| storageClassName: "" |
| |
| # How to control availability for Solr Nodes |
| availability: |
| # Create PodDisruptionBudget(s) to ensure availability of Solr Nodes |
| podDisruptionBudget: |
| enabled: true |
| method: ClusterWide |
| |
| # Various settings to control scaling of Solr pods and replicas |
| scaling: |
| vacatePodsOnScaleDown: true |
| populatePodsOnScaleUp: true |
| |
| # A list of BackupRepositories to connect your SolrCloud to |
| # See either for more information: |
| # - https://apache.github.io/solr-operator/docs/solr-backup |
| # - kubectl explain solrcloud.spec.backupRepositories |
| backupRepositories: [] |
| # - name: example-repo # Required |
| # gcs: |
| # bucket: example-bucket # Required |
| # gcsCredentialSecret: # Required (unless using GKE's 'Workplace Identity' feature) |
| # name: "gcsSecretName" |
| # key: "service-account-key.json" |
| |
| zk: |
| # A ZooKeeper Node to host all the information for this SolrCloud under |
| chroot: "" |
| # If true, this will add the "/<namespace>/<name>" to the end of the provided chroot, if any is provided. |
| # This will let you deploy multiple Solr Clouds without having to manage the specific chroots yourself. |
| uniqueChroot: false |
| |
| # Use an existing ZooKeeper cluster |
| # Address available within the Kubernetes Cluster |
| address: "" |
| # Address available both within and outside the Kubernetes Cluster |
| externalAddress: "" |
| |
| # If no "address" is provided, this defines the ZookeeperCluster created for this SolrCloud |
| provided: |
| replicas: 3 |
| labels: {} |
| image: {} |
| # repository: "pravega/zookeeper" |
| # tag: "" |
| # pullPolicy: IfNotPresent |
| # imagePullSecret: "" |
| zookeeperPodPolicy: {} |
| # labels: {} |
| # affinity: {} |
| # tolerations: [] |
| # nodeSelector: {} |
| # env: [] |
| # resources: {} |
| # # Set ZK service account individually instead of the global "serviceAccount.name" |
| # serviceAccountName: "" |
| # topologySpreadConstraints: [] |
| # Override the default Zookeeper probes |
| probes: {} |
| # Add additional containers |
| containers: {} |
| initContainers: {} |
| # Configure the PodDisruptionBudget created for ZK |
| maxUnavailableReplicas: 1 |
| # Add custom volumes |
| volumes: [] |
| volumeMounts: [] |
| |
| # Customize the ZK services |
| adminServerService: {} |
| clientService: {} |
| headlessService: {} |
| |
| # Storage defaults to the type of storage you use for Solr, which is ephemeral by default. |
| # Explicitly set the storage type, only necessary when wishing to use an empty persistence or ephemeral object. |
| storageType: "" |
| persistence: {} |
| # reclaimPolicy: "Retain" |
| # spec: {} |
| ephemeral: {} |
| # emptydirvolumesource: {} |
| |
| # Zookeeper Config Options to set for the provided cluster |
| config: {} |
| |
| # Use this section to inject ACL information for your zookeeper from a Kube secret in the same namespace as your SolrCloud |
| acl: {} |
| # secret: zk-acls |
| # usernameKey: username |
| # passwordKey: password |
| |
| # Use this section to inject ACL information for your zookeeper from a Kube secret in the same namespace as your SolrCloud |
| readOnlyAcl: {} |
| # secret: zk-acls |
| # usernameKey: username |
| # passwordKey: password |
| |
| # Enable TLS between your SolrCloud nodes |
| # More information can be found at: |
| # https://apache.github.io/solr-operator/docs/solr-cloud/solr-cloud-crd.html#enable-tls-between-solr-pods |
| solrTLS: {} |
| # pkcs12Secret: |
| # name: secret-name |
| # key: pkcs12-key |
| # keyStorePasswordSecret: |
| # name: secret-name |
| # key: password-key |
| # trustStoreSecret: |
| # name: secret-name |
| # key: truststore-key |
| # trustStorePasswordSecret: |
| # name: secret-name |
| # key: password-key |
| # clientAuth: None |
| # verifyClientHostname: false |
| # checkPeerName: false |
| # restartOnTLSSecretUpdate: false |
| # mountedTLSDir: |
| # path: /path/to/mounted/tls |
| # keystoreFile: "keystore.p12" |
| # keystorePasswordFile: "" |
| # truststoreFile: "truststore.p12" |
| # truststorePasswordFile: "" |
| |
| solrClientTLS: {} |
| # pkcs12Secret: |
| # name: secret-name |
| # key: pkcs12-key |
| # keyStorePasswordSecret: |
| # name: secret-name |
| # key: password-key |
| # trustStoreSecret: |
| # name: secret-name |
| # key: truststore-key |
| # trustStorePasswordSecret: |
| # name: secret-name |
| # key: password-key |
| # mountedTLSDir: |
| # path: /path/to/mounted/tls |
| # keystoreFile: "keystore.p12" |
| # keystorePasswordFile: "" |
| # truststoreFile: "truststore.p12" |
| # truststorePasswordFile: "" |
| |
| # Customize the Solr Pod for your needs |
| podOptions: |
| annotations: {} |
| labels: {} |
| |
| # Add extra sidecar or init containers, e.g. for log or metrics forwarding |
| sidecarContainers: [] |
| initContainers: [] |
| |
| priorityClassName: "" |
| envVars: [] |
| podSecurityContext: {} |
| terminationGracePeriodSeconds: null |
| |
| # Set Solr service account individually instead of the global "serviceAccount.name" |
| serviceAccountName: "" |
| |
| # Manage where the Solr pods are scheduled |
| affinity: {} |
| tolerations: [] |
| nodeSelector: {} |
| # Documentation available at https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/ |
| # If a labelSelector is not provided, it will be auto-populated by the Solr Operator to match the statefulSet labels |
| topologySpreadConstraints: [] |
| # - maxSkew: 1 |
| # topologyKey: zone |
| # whenUnsatisfiable: DoNotSchedule |
| |
| # Probes for the Solr pods |
| livenessProbe: {} |
| readinessProbe: {} |
| startupProbe: {} |
| |
| # Lifecycle for the Solr container |
| lifecycle: {} |
| |
| imagePullSecrets: [] |
| |
| resources: {} |
| # limits: |
| # cpu: "2" |
| # memory: 10G |
| # requests: |
| # cpu: 500m |
| # memory: 4G |
| |
| # Resources for the init containers created by the Solr Operator |
| defaultInitContainerResources: {} |
| |
| volumes: [] |
| # - name: |
| # defaultContainerMount: {} |
| # source: {} |
| |
| statefulSetOptions: |
| annotations: {} |
| labels: {} |
| |
| # Specify a podManagementPolicy when you want control over how scale-ups and scale-downs occur |
| # https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-management-policies |
| # The default is: Parallel |
| podManagementPolicy: "" |
| |
| commonServiceOptions: |
| annotations: {} |
| labels: {} |
| |
| headlessServiceOptions: |
| annotations: {} |
| labels: {} |
| |
| nodeServiceOptions: |
| annotations: {} |
| labels: {} |
| |
| ingressOptions: |
| annotations: {} |
| labels: {} |
| ingressClassName: "" |
| |
| configMapOptions: |
| annotations: {} |
| labels: {} |
| |
| # This is an extremely advanced option, do not use it without understanding the requirements of the solr.xml you provide. |
| providedConfigMap: "" |