From ce5ce2b4a38f1dba5b093d960d8caf21bc0cdea0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kamil=20Szczygie=C5=82?= Date: Mon, 10 Dec 2018 16:18:22 +0100 Subject: [PATCH] [stable/elasticsearch] Ingress for Elasticsearch client nodes (#9742) * ingress for elasticsearch client Signed-off-by: Kamil Szczygiel * bump chart version Signed-off-by: Kamil Szczygiel * bump version Signed-off-by: Kamil Szczygiel * bump minor Signed-off-by: Kamil Szczygiel * chart version to 1.15.0 Signed-off-by: Kamil Szczygiel --- stable/elasticsearch/Chart.yaml | 2 +- stable/elasticsearch/README.md | 4 ++ .../templates/client-ingress.yaml | 39 +++++++++++++++++++ stable/elasticsearch/values.yaml | 12 ++++++ 4 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 stable/elasticsearch/templates/client-ingress.yaml diff --git a/stable/elasticsearch/Chart.yaml b/stable/elasticsearch/Chart.yaml index f0c5326c95..8b04710b31 100755 --- a/stable/elasticsearch/Chart.yaml +++ b/stable/elasticsearch/Chart.yaml @@ -1,6 +1,6 @@ name: elasticsearch home: https://www.elastic.co/products/elasticsearch -version: 1.14.3 +version: 1.15.0 appVersion: 6.5.1 description: Flexible and powerful open source, distributed real-time search and analytics engine. diff --git a/stable/elasticsearch/README.md b/stable/elasticsearch/README.md index ab4de6bba9..8d1445fb88 100644 --- a/stable/elasticsearch/README.md +++ b/stable/elasticsearch/README.md @@ -88,6 +88,10 @@ The following table lists the configurable parameters of the elasticsearch chart | `client.loadBalancerSourceRanges` | Client loadBalancerSourceRanges | `{}` | | `client.antiAffinity` | Client anti-affinity policy | `soft` | | `client.nodeAffinity` | Client node affinity policy | `{}` | +| `client.ingress.enabled` | Enable Client Ingress | `false` | +| `client.ingress.annotations` | Client Ingress annotations | `{}` | +| `client.ingress.hosts` | Client Ingress Hostnames | `[]` | +| `client.ingress.tls` | Client Ingress TLS configuration | `[]` | | `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` | diff --git a/stable/elasticsearch/templates/client-ingress.yaml b/stable/elasticsearch/templates/client-ingress.yaml new file mode 100644 index 0000000000..0564589fd6 --- /dev/null +++ b/stable/elasticsearch/templates/client-ingress.yaml @@ -0,0 +1,39 @@ +{{- if .Values.client.ingress.enabled -}} +{{- $fullName := include "elasticsearch.client.fullname" . -}} +{{- $ingressPath := .Values.client.ingress.path -}} +apiVersion: extensions/v1beta1 +kind: Ingress +metadata: + name: {{ $fullName }} + labels: + app: {{ template "elasticsearch.name" . }} + chart: {{ .Chart.Name }}-{{ .Chart.Version }} + component: "{{ .Values.client.name }}" + heritage: {{ .Release.Service }} + release: {{ .Release.Name }} +{{- with .Values.client.ingress.annotations }} + annotations: +{{ toYaml . | indent 4 }} +{{- end }} +spec: +{{- if .Values.client.ingress.tls }} + tls: + {{- range .Values.client.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} +{{- end }} + rules: + {{- range .Values.client.ingress.hosts }} + - host: {{ . | quote }} + http: + paths: + - path: {{ $ingressPath }} + backend: + serviceName: {{ $fullName }} + servicePort: http + {{- end }} +{{- end }} diff --git a/stable/elasticsearch/values.yaml b/stable/elasticsearch/values.yaml index ec464518f2..bfbe8d93af 100644 --- a/stable/elasticsearch/values.yaml +++ b/stable/elasticsearch/values.yaml @@ -90,6 +90,18 @@ client: enabled: false minAvailable: 1 # maxUnavailable: 1 + ingress: + enabled: false + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + path: / + hosts: + - chart-example.local + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local master: name: master