From 8a99f900a1d59df32df72b31ca4a6c07eacd84c9 Mon Sep 17 00:00:00 2001 From: jslusher Date: Fri, 5 Jan 2018 01:26:12 -0600 Subject: [PATCH] [incubator/elasticsearch] Optionally expose http (#3213) Declares a value for exposing port 9200 for master and data pods and sets it to `false`. This allows for downstream users to open elasticsearch http port for monitoring or other purposes. We use datadog for our monitoring and the agent pod expects port 9200 to be open so that it can get and send metrics at the container level. --- incubator/elasticsearch/Chart.yaml | 2 +- incubator/elasticsearch/README.md | 2 ++ incubator/elasticsearch/templates/data-statefulset.yaml | 4 ++++ incubator/elasticsearch/templates/master-statefulset.yaml | 4 ++++ incubator/elasticsearch/values.yaml | 2 ++ 5 files changed, 13 insertions(+), 1 deletion(-) diff --git a/incubator/elasticsearch/Chart.yaml b/incubator/elasticsearch/Chart.yaml index 5b7b730831..829de6272a 100755 --- a/incubator/elasticsearch/Chart.yaml +++ b/incubator/elasticsearch/Chart.yaml @@ -1,6 +1,6 @@ name: elasticsearch home: https://www.elastic.co/products/elasticsearch -version: 0.4.4 +version: 0.4.5 description: Flexible and powerful open source, distributed real-time search and analytics engine. icon: https://static-www.elastic.co/assets/blteb1c97719574938d/logo-elastic-elasticsearch-lt.svg diff --git a/incubator/elasticsearch/README.md b/incubator/elasticsearch/README.md index 5bb880ebca..76724652d2 100644 --- a/incubator/elasticsearch/README.md +++ b/incubator/elasticsearch/README.md @@ -69,6 +69,7 @@ The following tables lists the configurable parameters of the elasticsearch char | `client.podAnnotations` | Client Deployment annotations | `{}` | | `client.serviceAnnotations` | Client Service annotations | `{}` | | `client.serviceType` | Client service type | `ClusterIP` | +| `master.exposeHttp` | Expose http port 9200 on master Pods for monitoring, etc | `false` | | `master.name` | Master component name | `master` | | `master.replicas` | Master node replicas (deployment) | `2` | | `master.resources` | Master node resources requests & limits | `{} - cpu limit must be an integer` | @@ -80,6 +81,7 @@ The following tables lists the configurable parameters of the elasticsearch char | `master.persistence.size` | Master persistent volume size | `4Gi` | | `master.persistence.storageClass` | Master persistent volume Class | `nil` | | `master.persistence.accessMode` | Master persistent Access Mode | `ReadWriteOnce` | +| `data.exposeHttp` | Expose http port 9200 on data Pods for monitoring, etc | `false` | | `data.replicas` | Data node replicas (statefulset) | `3` | | `data.resources` | Data node resources requests & limits | `{} - cpu limit must be an integer` | | `data.heapSize` | Data node heap size | `1536m` | diff --git a/incubator/elasticsearch/templates/data-statefulset.yaml b/incubator/elasticsearch/templates/data-statefulset.yaml index b35dfc2657..1ecd0b1a46 100644 --- a/incubator/elasticsearch/templates/data-statefulset.yaml +++ b/incubator/elasticsearch/templates/data-statefulset.yaml @@ -96,6 +96,10 @@ spec: ports: - containerPort: 9300 name: transport +{{ if .Values.data.exposeHttp }} + - containerPort: 9200 + name: http +{{ end }} resources: {{ toYaml .Values.data.resources | indent 12 }} readinessProbe: diff --git a/incubator/elasticsearch/templates/master-statefulset.yaml b/incubator/elasticsearch/templates/master-statefulset.yaml index 9beb65d39e..3f6326321e 100644 --- a/incubator/elasticsearch/templates/master-statefulset.yaml +++ b/incubator/elasticsearch/templates/master-statefulset.yaml @@ -107,6 +107,10 @@ spec: ports: - containerPort: 9300 name: transport +{{ if .Values.master.exposeHttp }} + - containerPort: 9200 + name: http +{{ end }} volumeMounts: - mountPath: /usr/share/elasticsearch/data name: data diff --git a/incubator/elasticsearch/values.yaml b/incubator/elasticsearch/values.yaml index b6f218f17f..dca2d37843 100644 --- a/incubator/elasticsearch/values.yaml +++ b/incubator/elasticsearch/values.yaml @@ -42,6 +42,7 @@ client: master: name: master + exposeHttp: false replicas: 3 heapSize: "512m" persistence: @@ -65,6 +66,7 @@ master: data: name: data + exposeHttp: false replicas: 2 heapSize: "1536m" persistence: