diff --git a/bitnami/elasticsearch/Chart.yaml b/bitnami/elasticsearch/Chart.yaml index 63d77b584..800a87a25 100644 --- a/bitnami/elasticsearch/Chart.yaml +++ b/bitnami/elasticsearch/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: elasticsearch -version: 9.0.4 +version: 10.0.0 appVersion: 7.5.0 description: A highly scalable open-source full-text search and analytics engine keywords: diff --git a/bitnami/elasticsearch/README.md b/bitnami/elasticsearch/README.md index fbb64055b..d4aa4bb35 100644 --- a/bitnami/elasticsearch/README.md +++ b/bitnami/elasticsearch/README.md @@ -57,6 +57,7 @@ The following table lists the configurable parameters of the Elasticsearch chart | `global.imageRegistry` | Global Docker image registry | `nil` | | `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | | `global.storageClass` | Global storage class for dynamic provisioning | `nil` | +| `global.coordinating.name` | Coordinating-only node pod name at global level to be used also in the Kibana subchart | `coordinating-only` | | `image.registry` | Elasticsearch image registry | `docker.io` | | `image.repository` | Elasticsearch image repository | `bitnami/elasticsearch` | | `image.tag` | Elasticsearch image tag | `{TAG_NAME}` | @@ -103,7 +104,6 @@ The following table lists the configurable parameters of the Elasticsearch chart | `master.readinessProbe.failureThreshold` | Minimum consecutive failures for the probe to be considered failed after having succeeded | `5` | | `clusterDomain` | Kubernetes cluster domain | `cluster.local` | | `discovery.name` | Discover node pod name | `discovery` | -| `coordinating.name` | Coordinating-only node pod name | `coordinating-only` | | `coordinating.replicas` | Desired number of Elasticsearch coordinating-only nodes | `2` | | `coordinating.heapSize` | Coordinating-only node heap size | `128m` | | `coordinating.antiAffinity` | Coordinating-only node pod anti-affinity policy | `soft` | @@ -245,6 +245,13 @@ The following table lists the configurable parameters of the Elasticsearch chart | `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `Always` | | `volumePermissions.resources` | Init container resource requests/limit | `nil` | +### Kibana Parameters + +| `kibana.enabled` | Use bundled Kibana | `false` | +| `kibana.elasticsearch.hosts` | Array containing hostnames for the ES instances. Used to generate the URL | `{{ include "elasticsearch.coordinating.fullname" . }}` Coordinating service (fullname) | +| `kibana.elasticsearch.port` | Port to connect Kibana and ES instance. Used to generate the URL | `9200` | +| `kibana.nameOverride` | String to partially override elasticsearch.fullname template in the kibana subchart | `elasticsearch` | + Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example, ```console @@ -433,6 +440,12 @@ This chart includes a `values-production.yaml` file where you can find some para + metrics.enabled: true ``` +- Enable bundled Kibana: +```diff +- kibana.enabled: false ++ kibana.enabled: true +``` + ### Default kernel settings Currently, Elasticsearch requires some changes in the kernel of the host machine to work as expected. If those values are not set in the underlying operating system, the ES containers fail to boot with ERROR messages. More information about these requirements can be found in the links below: @@ -443,6 +456,11 @@ Currently, Elasticsearch requires some changes in the kernel of the host machine This chart uses a **privileged** initContainer to change those settings in the Kernel by running: `sysctl -w vm.max_map_count=262144 && sysctl -w fs.file-max=65536`. You can disable the initContainer using the `sysctlImage.enabled=false` parameter. +### Enable bundled Kibana + +This Elasticsearch chart contains Kibana as subchart, you can enable it just setting the `kibana.enabled=true` parameter. It is enabled by default using the `values-production.yaml` file. +If you want to modify the `nameOverride` parameter in the Elasticsearch chart, you also need to set the same value for the `kibana.nameOverride` in order to use the same value in both charts. + ## Persistence The [Bitnami Elasticsearch](https://github.com/bitnami/bitnami-docker-elasticsearch) image stores the Elasticsearch data at the `/bitnami/elasticsearch/data` path of the container. @@ -460,6 +478,10 @@ You can enable this initContainer by setting `volumePermissions.enabled` to `tru ## Notable changes +### 10.0.0 + +In this version, Kibana was added as dependant chart. More info about how to enable and work with this bundled Kibana in the ["Enable bundled Kibana"](#enable-bundled-kibana) section. + ### 9.0.0 Elasticsearch master nodes store the cluster status at `/bitnami/elasticsearch/data`. Among other things this includes the UUID of the elasticsearch cluster. Without a persistent data store for this data, the UUID of a cluster could change if k8s node(s) hosting the es master nodes go down and are scheduled on some other master node. In the event that this happens, the data nodes will no longer be able to join a cluster as the uuid changed resulting in a broken cluster. diff --git a/bitnami/elasticsearch/requirements.lock b/bitnami/elasticsearch/requirements.lock new file mode 100644 index 000000000..80f18828c --- /dev/null +++ b/bitnami/elasticsearch/requirements.lock @@ -0,0 +1,6 @@ +dependencies: +- name: kibana + repository: https://charts.bitnami.com/bitnami + version: 5.0.0 +digest: sha256:25180f145e2b144df74901fa1825cedd396faa2d5d1881a45b28d61a9e000bde +generated: "2019-12-12T18:42:40.963383539Z" diff --git a/bitnami/elasticsearch/requirements.yaml b/bitnami/elasticsearch/requirements.yaml new file mode 100644 index 000000000..08fffed29 --- /dev/null +++ b/bitnami/elasticsearch/requirements.yaml @@ -0,0 +1,5 @@ +dependencies: + - name: kibana + version: 5.x.x + repository: https://charts.bitnami.com/bitnami + condition: kibana.enabled diff --git a/bitnami/elasticsearch/templates/_helpers.tpl b/bitnami/elasticsearch/templates/_helpers.tpl index f8ef301cc..6be58dd18 100644 --- a/bitnami/elasticsearch/templates/_helpers.tpl +++ b/bitnami/elasticsearch/templates/_helpers.tpl @@ -127,7 +127,7 @@ We truncate at 63 chars because some Kubernetes name fields are limited to this */}} {{- define "elasticsearch.coordinating.fullname" -}} {{- $name := default .Chart.Name .Values.nameOverride -}} -{{- printf "%s-%s-%s" .Release.Name $name .Values.coordinating.name | trunc 63 | trimSuffix "-" -}} +{{- printf "%s-%s-%s" .Release.Name $name .Values.global.coordinating.name | trunc 63 | trimSuffix "-" -}} {{- end -}} {{/* diff --git a/bitnami/elasticsearch/values-production.yaml b/bitnami/elasticsearch/values-production.yaml index f1ea455f0..a15e106c9 100644 --- a/bitnami/elasticsearch/values-production.yaml +++ b/bitnami/elasticsearch/values-production.yaml @@ -2,11 +2,15 @@ ## Please, note that this will override the image parameters, including dependencies, configured to use the global value ## Current available global Docker image parameters: imageRegistry and imagePullSecrets ## -# global: -# imageRegistry: myRegistryName -# imagePullSecrets: -# - myRegistryKeySecretName -# storageClass: myStorageClass +global: + # imageRegistry: myRegistryName + # imagePullSecrets: + # - myRegistryKeySecretName + # storageClass: myStorageClass + ## Coordinating name to be used in the Kibana subchart (service name) + ## + coordinating: + name: coordinating-only ## Bitnami Elasticsearch image version ## ref: https://hub.docker.com/r/bitnami/elasticsearch/tags/ @@ -238,7 +242,6 @@ master: ## Elasticsearch coordinating-only node parameters ## coordinating: - name: coordinating-only ## Number of coordinating-only node(s) replicas to deploy ## replicas: 2 @@ -730,3 +733,15 @@ metrics: ## # selector: # prometheus: my-prometheus + +## Enable bundled Kibana +## +kibana: + enabled: true + elasticsearch: + hosts: + - '{{ include "elasticsearch.coordinating.fullname" . }}' + port: 9200 + ## String to partially override elasticsearch.fullname template in the kibana subchart + ## + nameOverride: elasticsearch diff --git a/bitnami/elasticsearch/values.yaml b/bitnami/elasticsearch/values.yaml index dc4f9415f..6b227c22b 100644 --- a/bitnami/elasticsearch/values.yaml +++ b/bitnami/elasticsearch/values.yaml @@ -2,11 +2,15 @@ ## Please, note that this will override the image parameters, including dependencies, configured to use the global value ## Current available global Docker image parameters: imageRegistry and imagePullSecrets ## -# global: -# imageRegistry: myRegistryName -# imagePullSecrets: -# - myRegistryKeySecretName -# storageClass: myStorageClass +global: + # imageRegistry: myRegistryName + # imagePullSecrets: + # - myRegistryKeySecretName + # storageClass: myStorageClass + ## Coordinating name to be used in the Kibana subchart (service name) + ## + coordinating: + name: coordinating-only ## Bitnami Elasticsearch image version ## ref: https://hub.docker.com/r/bitnami/elasticsearch/tags/ @@ -238,7 +242,6 @@ master: ## Elasticsearch coordinating-only node parameters ## coordinating: - name: coordinating-only ## Number of coordinating-only node(s) replicas to deploy ## replicas: 2 @@ -730,3 +733,15 @@ metrics: ## # selector: # prometheus: my-prometheus + +## Enable bundled Kibana +## +kibana: + enabled: false + elasticsearch: + hosts: + - '{{ include "elasticsearch.coordinating.fullname" . }}' + port: 9200 + ## String to partially override elasticsearch.fullname template in the kibana subchart + ## + nameOverride: elasticsearch