mirror of
https://github.com/bitnami/charts.git
synced 2026-03-13 14:57:24 +08:00
[bitnami/elasticsearch] Unify and document production values
Signed-off-by: Carlos Rodriguez Hernandez <crhernandez@bitnami.com>
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
apiVersion: v1
|
||||
name: elasticsearch
|
||||
version: 5.1.5
|
||||
version: 5.1.6
|
||||
appVersion: 7.1.1
|
||||
description: A highly scalable open-source full-text search and analytics engine
|
||||
keywords:
|
||||
|
||||
@@ -114,7 +114,7 @@ The following table lists the configurable parameters of the Elasticsearch chart
|
||||
| `coordinating.readinessProbe.successThreshold` | Minimum consecutive successes for the probe to be considered successful after having failed (coordinating-only nodes pod) | `1` |
|
||||
| `coordinating.readinessProbe.failureThreshold` | Minimum consecutive failures for the probe to be considered failed after having succeeded | `5` |
|
||||
| `data.name` | Data node pod name | `data` |
|
||||
| `data.replicas` | Desired number of Elasticsearch data nodes nodes | `3` |
|
||||
| `data.replicas` | Desired number of Elasticsearch data nodes | `3` |
|
||||
| `data.updateStrategy.type` | Update strategy for Data statefulset | `RollingUpdate` |
|
||||
| `data.updateStrategy.rollingUpdatePartition` | Partition update strategy for Data statefulset | `nil` |
|
||||
| `data.heapSize` | Data node heap size | `1024m` |
|
||||
@@ -197,6 +197,174 @@ $ helm install --name my-release -f values.yaml bitnami/elasticsearch
|
||||
|
||||
> **Tip**: You can use the default [values.yaml](values.yaml). [values-production.yaml](values-production.yaml) has defaults optimized for use in production environments.
|
||||
|
||||
### Production configuration
|
||||
|
||||
This chart includes a `values-production.yaml` file where you can find some parameters oriented to production configuration in comparison to the regular `values.yaml`:
|
||||
|
||||
- Desired number of Elasticsearch master-eligible nodes:
|
||||
```diff
|
||||
- master.replicas: 2
|
||||
+ master.replicas: 3
|
||||
```
|
||||
|
||||
- Enable the liveness probe (master-eligible nodes pod):
|
||||
```diff
|
||||
- master.livenessProbe.enabled: false
|
||||
- # initialDelaySeconds: 90
|
||||
- # periodSeconds: 10
|
||||
- # timeoutSeconds: 5
|
||||
- # successThreshold: 1
|
||||
- # failureThreshold: 5
|
||||
+ master.livenessProbe.enabled: true
|
||||
+ initialDelaySeconds: 90
|
||||
+ periodSeconds: 10
|
||||
+ timeoutSeconds: 5
|
||||
+ successThreshold: 1
|
||||
+ failureThreshold: 5
|
||||
```
|
||||
|
||||
- Enable the readiness probe (master-eligible nodes pod):
|
||||
```diff
|
||||
- master.readinessProbe.enabled: false
|
||||
- # initialDelaySeconds: 90
|
||||
- # periodSeconds: 10
|
||||
- # timeoutSeconds: 5
|
||||
- # successThreshold: 1
|
||||
- # failureThreshold: 5
|
||||
+ master.readinessProbe.enabled: true
|
||||
+ initialDelaySeconds: 90
|
||||
+ periodSeconds: 10
|
||||
+ timeoutSeconds: 5
|
||||
+ successThreshold: 1
|
||||
+ failureThreshold: 5
|
||||
```
|
||||
|
||||
- Desired number of Elasticsearch coordinating-only nodes:
|
||||
```diff
|
||||
- data.replicas: 2
|
||||
+ data.replicas: 3
|
||||
```
|
||||
|
||||
- Enable the liveness probe (coordinating-only nodes pod):
|
||||
```diff
|
||||
- coordinating.livenessProbe.enabled: false
|
||||
- # initialDelaySeconds: 90
|
||||
- # periodSeconds: 10
|
||||
- # timeoutSeconds: 5
|
||||
- # successThreshold: 1
|
||||
- # failureThreshold: 5
|
||||
+ coordinating.livenessProbe.enabled: true
|
||||
+ initialDelaySeconds: 90
|
||||
+ periodSeconds: 10
|
||||
+ timeoutSeconds: 5
|
||||
+ successThreshold: 1
|
||||
+ failureThreshold: 5
|
||||
```
|
||||
|
||||
- Enable the readiness probe (coordinating-only nodes pod):
|
||||
```diff
|
||||
- coordinating.readinessProbe.enabled: false
|
||||
- # initialDelaySeconds: 90
|
||||
- # periodSeconds: 10
|
||||
- # timeoutSeconds: 5
|
||||
- # successThreshold: 1
|
||||
- # failureThreshold: 5
|
||||
+ coordinating.readinessProbe.enabled: true
|
||||
+ initialDelaySeconds: 90
|
||||
+ periodSeconds: 10
|
||||
+ timeoutSeconds: 5
|
||||
+ successThreshold: 1
|
||||
+ failureThreshold: 5
|
||||
```
|
||||
|
||||
- Desired number of Elasticsearch data nodes:
|
||||
```diff
|
||||
- data.replicas: 2
|
||||
+ data.replicas: 3
|
||||
```
|
||||
|
||||
- Enable the liveness probe (data nodes pod):
|
||||
```diff
|
||||
- data.livenessProbe.enabled: false
|
||||
- # initialDelaySeconds: 90
|
||||
- # periodSeconds: 10
|
||||
- # timeoutSeconds: 5
|
||||
- # successThreshold: 1
|
||||
- # failureThreshold: 5
|
||||
+ data.livenessProbe.enabled: true
|
||||
+ initialDelaySeconds: 90
|
||||
+ periodSeconds: 10
|
||||
+ timeoutSeconds: 5
|
||||
+ successThreshold: 1
|
||||
+ failureThreshold: 5
|
||||
```
|
||||
|
||||
- Enable the readiness probe (data nodes pod):
|
||||
```diff
|
||||
- data.readinessProbe.enabled: false
|
||||
- # initialDelaySeconds: 90
|
||||
- # periodSeconds: 10
|
||||
- # timeoutSeconds: 5
|
||||
- # successThreshold: 1
|
||||
- # failureThreshold: 5
|
||||
+ data.readinessProbe.enabled: true
|
||||
+ initialDelaySeconds: 90
|
||||
+ periodSeconds: 10
|
||||
+ timeoutSeconds: 5
|
||||
+ successThreshold: 1
|
||||
+ failureThreshold: 5
|
||||
```
|
||||
|
||||
- Enable ingest nodes:
|
||||
```diff
|
||||
- ingest.enabled: false
|
||||
+ ingest.enabled: true
|
||||
```
|
||||
|
||||
- Desired number of Elasticsearch ingest nodes:
|
||||
```diff
|
||||
- data.replicas: 2
|
||||
+ data.replicas: 3
|
||||
```
|
||||
|
||||
- Enable the liveness probe (ingest nodes pod):
|
||||
```diff
|
||||
- ingest.livenessProbe.enabled: false
|
||||
- # initialDelaySeconds: 90
|
||||
- # periodSeconds: 10
|
||||
- # timeoutSeconds: 5
|
||||
- # successThreshold: 1
|
||||
- # failureThreshold: 5
|
||||
+ ingest.livenessProbe.enabled: true
|
||||
+ initialDelaySeconds: 90
|
||||
+ periodSeconds: 10
|
||||
+ timeoutSeconds: 5
|
||||
+ successThreshold: 1
|
||||
+ failureThreshold: 5
|
||||
```
|
||||
|
||||
- Enable the readiness probe (ingest nodes pod):
|
||||
```diff
|
||||
- ingest.readinessProbe.enabled: false
|
||||
- # initialDelaySeconds: 90
|
||||
- # periodSeconds: 10
|
||||
- # timeoutSeconds: 5
|
||||
- # successThreshold: 1
|
||||
- # failureThreshold: 5
|
||||
+ ingest.readinessProbe.enabled: true
|
||||
+ initialDelaySeconds: 90
|
||||
+ periodSeconds: 10
|
||||
+ timeoutSeconds: 5
|
||||
+ successThreshold: 1
|
||||
+ failureThreshold: 5
|
||||
```
|
||||
|
||||
- Enable prometheus exporter:
|
||||
```diff
|
||||
- metrics.enabled: false
|
||||
+ metrics.enabled: true
|
||||
```
|
||||
|
||||
### [Rolling VS Immutable tags](https://docs.bitnami.com/containers/how-to/understand-rolling-tags-containers/)
|
||||
|
||||
It is strongly recommended to use immutable tags in a production environment. This ensures your deployment does not change automatically if the same tag is updated with a different image.
|
||||
|
||||
@@ -26,6 +26,25 @@ image:
|
||||
# pullSecrets:
|
||||
# - myRegistryKeySecretName
|
||||
|
||||
## Image that performs the sysctl operation
|
||||
##
|
||||
sysctlImage:
|
||||
enabled: false
|
||||
registry: docker.io
|
||||
repository: bitnami/minideb
|
||||
tag: latest
|
||||
## Specify a imagePullPolicy
|
||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
||||
##
|
||||
pullPolicy: Always
|
||||
## Optionally specify an array of imagePullSecrets.
|
||||
## Secrets must be manually created in the namespace.
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||
##
|
||||
# pullSecrets:
|
||||
# - myRegistryKeySecretName
|
||||
|
||||
## Elasticsearch cluster name
|
||||
##
|
||||
name: elastic
|
||||
@@ -66,6 +85,9 @@ master:
|
||||
annotations: {}
|
||||
# loadBalancerIP:
|
||||
|
||||
## Provide annotations for the master pods.
|
||||
podAnnotations: {}
|
||||
|
||||
## Configure resource requests and limits
|
||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
||||
##
|
||||
@@ -90,24 +112,10 @@ master:
|
||||
successThreshold: 1
|
||||
failureThreshold: 5
|
||||
|
||||
## Image that performs the sysctl operation
|
||||
## Elasticsearch discovery node parameters
|
||||
##
|
||||
sysctlImage:
|
||||
enabled: false
|
||||
registry: docker.io
|
||||
repository: bitnami/minideb
|
||||
tag: latest
|
||||
## Specify a imagePullPolicy
|
||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
||||
##
|
||||
pullPolicy: IfNotPresent
|
||||
## Optionally specify an array of imagePullSecrets.
|
||||
## Secrets must be manually created in the namespace.
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||
##
|
||||
# pullSecrets:
|
||||
# - myRegistryKeySecretName
|
||||
discovery:
|
||||
name: discovery
|
||||
|
||||
## Pod Security Context
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
||||
@@ -117,16 +125,11 @@ securityContext:
|
||||
fsGroup: 1001
|
||||
runAsUser: 1001
|
||||
|
||||
## Elasticsearch discovery node parameters
|
||||
##
|
||||
discovery:
|
||||
name: discovery
|
||||
|
||||
## Elasticsearch coordinating-only node parameters
|
||||
##
|
||||
coordinating:
|
||||
name: coordinating-only
|
||||
replicas: 2
|
||||
replicas: 3
|
||||
heapSize: 128m
|
||||
antiAffinity: "soft"
|
||||
## node affinity
|
||||
@@ -148,6 +151,9 @@ coordinating:
|
||||
annotations: {}
|
||||
# loadBalancerIP:
|
||||
|
||||
## Provide annotations for the coordinating pods.
|
||||
podAnnotations: {}
|
||||
|
||||
## Configure resource requests and limits
|
||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
||||
##
|
||||
@@ -186,6 +192,8 @@ data:
|
||||
antiAffinity: "soft"
|
||||
## node affinity
|
||||
# nodeAffinity:
|
||||
## Provide annotations for the data pods.
|
||||
podAnnotations: {}
|
||||
## Configure resource requests and limits
|
||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
||||
##
|
||||
@@ -243,7 +251,7 @@ data:
|
||||
ingest:
|
||||
enabled: true
|
||||
name: ingest
|
||||
replicas: 2
|
||||
replicas: 3
|
||||
heapSize: 128m
|
||||
antiAffinity: "soft"
|
||||
## node affinity
|
||||
@@ -265,6 +273,9 @@ ingest:
|
||||
annotations: {}
|
||||
# loadBalancerIP:
|
||||
|
||||
## Provide annotations for the ingest pods.
|
||||
podAnnotations: {}
|
||||
|
||||
## Configure resource requests and limits
|
||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
||||
##
|
||||
@@ -303,11 +314,13 @@ metrics:
|
||||
##
|
||||
# pullSecrets:
|
||||
# - myRegistryKeySecretName
|
||||
## Provide annotations for the metrics pods.
|
||||
podAnnotations: {}
|
||||
annotations:
|
||||
prometheus.io/scrape: "true"
|
||||
prometheus.io/port: "9108"
|
||||
service:
|
||||
type: ClusterIP
|
||||
resources: {}
|
||||
# requests:
|
||||
# cpu: 25m
|
||||
resources:
|
||||
# requests:
|
||||
# cpu: 25m
|
||||
|
||||
@@ -18,7 +18,7 @@ image:
|
||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
||||
##
|
||||
pullPolicy: Always
|
||||
pullPolicy: IfNotPresent
|
||||
## Optionally specify an array of imagePullSecrets.
|
||||
## Secrets must be manually created in the namespace.
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||
@@ -88,9 +88,6 @@ master:
|
||||
## Provide annotations for the master pods.
|
||||
podAnnotations: {}
|
||||
|
||||
## Configure resource requests and limits
|
||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
||||
##
|
||||
## Configure resource requests and limits
|
||||
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
||||
##
|
||||
@@ -310,7 +307,7 @@ metrics:
|
||||
registry: docker.io
|
||||
repository: bitnami/elasticsearch-exporter
|
||||
tag: 1.0.2
|
||||
pullPolicy: Always
|
||||
pullPolicy: IfNotPresent
|
||||
## Optionally specify an array of imagePullSecrets.
|
||||
## Secrets must be manually created in the namespace.
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||
|
||||
Reference in New Issue
Block a user