mirror of
https://github.com/bitnami/charts.git
synced 2026-03-05 06:47:25 +08:00
[bitnami/logstash] Major change: Adapt ingress (#4988)
This commit is contained in:
committed by
GitHub
parent
deb6d3c0d7
commit
0f8b53bd42
@@ -1,6 +1,6 @@
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 1.1.2
|
||||
digest: sha256:e96477f37f86a4595dce9057f8d04f903f761f340440986129e53cc55f3d63ee
|
||||
generated: "2020-12-11T12:21:27.260238+01:00"
|
||||
version: 1.2.3
|
||||
digest: sha256:3fc1fbf3ae204e0121f1e202d6d57f9381f3a45d8821647d1dfe0a475644da0c
|
||||
generated: "2021-01-13T11:38:38.463181+01:00"
|
||||
|
||||
@@ -23,4 +23,4 @@ name: logstash
|
||||
sources:
|
||||
- https://github.com/bitnami/bitnami-docker-logstash
|
||||
- https://www.elastic.co/products/logstash
|
||||
version: 2.0.2
|
||||
version: 3.0.0
|
||||
|
||||
@@ -58,6 +58,7 @@ The following tables lists the configurable parameters of the Logstash chart and
|
||||
| `image.pullPolicy` | Logstash image pull policy | `IfNotPresent` |
|
||||
| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) |
|
||||
| `image.debug` | Specify if debug logs should be enabled | `false` |
|
||||
| `kubeVersion` | Force target Kubernetes version (using Helm capabilities if not set) | `nil` |
|
||||
| `nameOverride` | String to partially override logstash.fullname template with a string (will prepend the release name) | `nil` |
|
||||
| `fullnameOverride` | String to fully override logstash.fullname template with a string | `nil` |
|
||||
| `clusterDomain` | Default Kubernetes cluster domain | `cluster.local` |
|
||||
@@ -101,11 +102,15 @@ The following tables lists the configurable parameters of the Logstash chart and
|
||||
| `service.clusterIP` | Static clusterIP or None for headless services | `nil` |
|
||||
| `ingress.enabled` | Enable ingress controller resource | `false` |
|
||||
| `ingress.certManager` | Add annotations for cert-manager | `false` |
|
||||
| `ingress.annotations` | Ingress annotations | `{}` |
|
||||
| `ingress.hosts[0].name` | Hostname for Logstash service | `logstash.local` |
|
||||
| `ingress.hosts[0].path` | Path within the url structure | `/` |
|
||||
| `ingress.tls[0].hosts[0]` | TLS hosts | `logstash.local` |
|
||||
| `ingress.tls[0].secretName` | TLS Secret (certificates) | `logstash.local-tls` |
|
||||
| `ingress.hostname` | Default host for the ingress resource | `logstash.local` |
|
||||
| `ingress.path` | Default path for the ingress resource | `/` |
|
||||
| `ingress.tls` | Create TLS Secret | `false` |
|
||||
| `ingress.annotations` | Ingress annotations | `[]` (evaluated as a template) |
|
||||
| `ingress.extraHosts[0].name` | Additional hostnames to be covered | `nil` |
|
||||
| `ingress.extraHosts[0].path` | Additional hostnames to be covered | `nil` |
|
||||
| `ingress.extraPaths` | Additional arbitrary path/backend objects | `nil` |
|
||||
| `ingress.extraTls[0].hosts[0]` | TLS configuration for additional hostnames to be covered | `nil` |
|
||||
| `ingress.extraTls[0].secretName` | TLS configuration for additional hostnames to be covered | `nil` |
|
||||
| `ingress.secrets[0].name` | TLS Secret Name | `nil` |
|
||||
| `ingress.secrets[0].certificate` | TLS Secret Certificate | `nil` |
|
||||
| `ingress.secrets[0].key` | TLS Secret Key | `nil` |
|
||||
@@ -303,6 +308,10 @@ Find more information about how to deal with common errors related to Bitnami’
|
||||
|
||||
## Upgrading
|
||||
|
||||
### To 3.0.0
|
||||
|
||||
This version standardizes the way of defining Ingress rules. When configuring a single hostname for the Ingress rule, set the `ingress.hostname` value. When defining more than one, set the `ingress.extraHosts` array. Apart from this case, no issues are expected to appear when upgrading.
|
||||
|
||||
### To 2.0.0
|
||||
|
||||
This version drops support of including files in the `files/` folder, as it was working only under certain circumstances and the chart already provides alternative mechanisms like the `input` , `output` and `filter`, the `existingConfiguration` or the `extraDeploy` values.
|
||||
|
||||
@@ -8,21 +8,13 @@ Logstash can be accessed through following DNS names from within your cluster:
|
||||
Logstash Prometheus Metrics: {{ include "common.names.fullname" . }}-metrics.{{ .Release.Namespace }}.svc.{{ .Values.clusterDomain }} (port {{ .Values.metrics.service.port }})
|
||||
{{- end }}
|
||||
|
||||
|
||||
To access Logstash from outside the cluster execute the following commands:
|
||||
|
||||
{{- if .Values.ingress.enabled }}
|
||||
{{- $ingressHost := first .Values.ingress.hosts }}
|
||||
|
||||
You should be able to access your new Logstash server(s) through:
|
||||
|
||||
{{- range .Values.ingress.hosts }}
|
||||
{{ if .tls }}https{{- else }}http{{ end }}://{{ .name }}
|
||||
{{- end }}
|
||||
|
||||
e.g.:
|
||||
|
||||
curl {{ if .tls }}https{{- else }}http{{ end }}://{{ $ingressHost.name }}
|
||||
curl {{ if .Values.ingress.tls }}https{{- else }}http{{ end }}://{{ .Values.ingress.hostname }}
|
||||
|
||||
{{- else if contains "NodePort" .Values.service.type }}
|
||||
|
||||
|
||||
@@ -1,33 +1,59 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||
apiVersion: networking.k8s.io/v1beta1
|
||||
{{- else -}}
|
||||
apiVersion: extensions/v1beta1
|
||||
{{- end }}
|
||||
{{- if .Values.ingress.enabled }}
|
||||
apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }}
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
labels: {{ include "common.labels.standard" . | nindent 4 }}
|
||||
name: {{ include "common.names.fullname" . }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
annotations:
|
||||
{{- if .Values.ingress.certManager }}
|
||||
kubernetes.io/tls-acme: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.ingress.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- if .Values.ingress.annotations }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.ingress.annotations "context" $) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ .name }}
|
||||
{{- if .Values.ingress.hostname }}
|
||||
- host: {{ .Values.ingress.hostname }}
|
||||
http:
|
||||
paths:
|
||||
{{- if .Values.ingress.extraPaths }}
|
||||
{{- toYaml .Values.ingress.extraPaths | nindent 10 }}
|
||||
{{- end }}
|
||||
- path: {{ .Values.ingress.path }}
|
||||
{{- if eq "true" (include "common.ingress.supportsPathType" .) }}
|
||||
pathType: {{ .Values.ingress.pathType }}
|
||||
{{- end }}
|
||||
backend: {{- include "common.ingress.backend" (dict "serviceName" (include "common.names.fullname" .) "servicePort" "http" "context" $) | nindent 14 }}
|
||||
{{- end }}
|
||||
{{- range .Values.ingress.extraHosts }}
|
||||
- host: {{ .name | quote }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ default "/" .path }}
|
||||
backend:
|
||||
serviceName: {{ include "common.names.fullname" $ }}
|
||||
servicePort: http
|
||||
{{- end }}
|
||||
{{- if .Values.ingress.tls }}
|
||||
{{- if eq "true" (include "common.ingress.supportsPathType" $) }}
|
||||
pathType: {{ default "ImplementationSpecific" .pathType }}
|
||||
{{- end }}
|
||||
backend: {{- include "common.ingress.backend" (dict "serviceName" (include "common.names.fullname" $) "servicePort" "http" "context" $) | nindent 14 }}
|
||||
{{- end }}
|
||||
{{- if or .Values.ingress.tls .Values.ingress.extraTls }}
|
||||
tls:
|
||||
{{- toYaml .Values.ingress.tls | nindent 4 }}
|
||||
{{- if .Values.ingress.tls }}
|
||||
- hosts:
|
||||
- {{ .Values.ingress.hostname }}
|
||||
{{- range .Values.ingress.extraHosts }}
|
||||
- {{ .name }}
|
||||
{{- end }}
|
||||
secretName: {{ printf "%s-tls" .Values.ingress.hostname }}
|
||||
{{- end }}
|
||||
{{- if .Values.ingress.extraTls }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.ingress.extraTls "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
@@ -29,6 +29,10 @@ image:
|
||||
##
|
||||
debug: false
|
||||
|
||||
## Force target Kubernetes version (using Helm capabilites if not set)
|
||||
##
|
||||
kubeVersion:
|
||||
|
||||
## String to partially override logstash.fullname template (will maintain the release name)
|
||||
##
|
||||
# nameOverride:
|
||||
@@ -292,7 +296,9 @@ service:
|
||||
##
|
||||
annotations: {}
|
||||
|
||||
## Ingress parameters
|
||||
## Configure the ingress resource that allows you to access the
|
||||
## Logstash installation. Set up the URL
|
||||
## ref: http://kubernetes.io/docs/user-guide/ingress/
|
||||
##
|
||||
ingress:
|
||||
## Set to true to enable ingress record generation
|
||||
@@ -303,31 +309,61 @@ ingress:
|
||||
##
|
||||
certManager: false
|
||||
|
||||
## Ingress Path type
|
||||
##
|
||||
pathType: ImplementationSpecific
|
||||
|
||||
## Override API Version (automatically detected if not set)
|
||||
##
|
||||
apiVersion:
|
||||
|
||||
## When the ingress is enabled, a host pointing to this will be created
|
||||
##
|
||||
hostname: logstash.local
|
||||
|
||||
## The Path to Logstash. You may need to set this to '/*' in order to use this
|
||||
## with ALB ingress controllers.
|
||||
##
|
||||
path: /
|
||||
|
||||
## Ingress annotations done as key:value pairs
|
||||
## For a full list of possible ingress annotations, please see
|
||||
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md
|
||||
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md
|
||||
##
|
||||
## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set
|
||||
## If certManager is set to true, annotation kubernetes.io/tls-acme: "true" will automatically be set
|
||||
##
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
|
||||
## The list of hostnames to be covered with this ingress record.
|
||||
## Most likely this will be just one host, but in the event more hosts are needed, this is an array
|
||||
## Enable TLS configuration for the hostname defined at ingress.hostname parameter
|
||||
## TLS certificates will be retrieved from a TLS secret with name: {{- printf "%s-tls" .Values.ingress.hostname }}
|
||||
## You can use the ingress.secrets parameter to create this TLS secret or relay on cert-manager to create it
|
||||
##
|
||||
hosts:
|
||||
- name: logstash.local
|
||||
path: /
|
||||
tls: false
|
||||
|
||||
## The tls configuration for the ingress
|
||||
## The list of additional hostnames to be covered with this ingress record.
|
||||
## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array
|
||||
## extraHosts:
|
||||
## - name: logstash.local
|
||||
## path: /
|
||||
##
|
||||
|
||||
## Any additional arbitrary paths that may need to be added to the ingress under the main host.
|
||||
## For example: The ALB ingress controller requires a special rule for handling SSL redirection.
|
||||
## extraPaths:
|
||||
## - path: /*
|
||||
## backend:
|
||||
## serviceName: ssl-redirect
|
||||
## servicePort: use-annotation
|
||||
##
|
||||
|
||||
## The tls configuration for additional hostnames to be covered with this ingress record.
|
||||
## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls
|
||||
# tls:
|
||||
# - hosts:
|
||||
# - logstash.local
|
||||
# secretName: logstash.local-tls
|
||||
## extraTls:
|
||||
## - hosts:
|
||||
## - logstash.local
|
||||
## secretName: logstash.local-tls
|
||||
##
|
||||
|
||||
secrets:
|
||||
## If you're providing your own certificates, please use this to add the certificates as secrets
|
||||
## key and certificate should start with -----BEGIN CERTIFICATE----- or
|
||||
## -----BEGIN RSA PRIVATE KEY-----
|
||||
@@ -337,9 +373,12 @@ ingress:
|
||||
##
|
||||
## It is also possible to create and manage the certificates outside of this helm chart
|
||||
## Please see README.md for more information
|
||||
# - name: logstash.local-tls
|
||||
# key:
|
||||
# certificate:
|
||||
##
|
||||
secrets: []
|
||||
## - name: logstash.local-tls
|
||||
## key:
|
||||
## certificate:
|
||||
##
|
||||
|
||||
## Prometheus metrics
|
||||
##
|
||||
|
||||
@@ -29,6 +29,10 @@ image:
|
||||
##
|
||||
debug: false
|
||||
|
||||
## Force target Kubernetes version (using Helm capabilites if not set)
|
||||
##
|
||||
kubeVersion:
|
||||
|
||||
## String to partially override logstash.fullname template (will maintain the release name)
|
||||
##
|
||||
# nameOverride:
|
||||
@@ -292,7 +296,9 @@ service:
|
||||
##
|
||||
annotations: {}
|
||||
|
||||
## Ingress parameters
|
||||
## Configure the ingress resource that allows you to access the
|
||||
## Logstash installation. Set up the URL
|
||||
## ref: http://kubernetes.io/docs/user-guide/ingress/
|
||||
##
|
||||
ingress:
|
||||
## Set to true to enable ingress record generation
|
||||
@@ -303,31 +309,61 @@ ingress:
|
||||
##
|
||||
certManager: false
|
||||
|
||||
## Ingress Path type
|
||||
##
|
||||
pathType: ImplementationSpecific
|
||||
|
||||
## Override API Version (automatically detected if not set)
|
||||
##
|
||||
apiVersion:
|
||||
|
||||
## When the ingress is enabled, a host pointing to this will be created
|
||||
##
|
||||
hostname: logstash.local
|
||||
|
||||
## The Path to Logstash. You may need to set this to '/*' in order to use this
|
||||
## with ALB ingress controllers.
|
||||
##
|
||||
path: /
|
||||
|
||||
## Ingress annotations done as key:value pairs
|
||||
## For a full list of possible ingress annotations, please see
|
||||
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md
|
||||
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md
|
||||
##
|
||||
## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set
|
||||
## If certManager is set to true, annotation kubernetes.io/tls-acme: "true" will automatically be set
|
||||
##
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
|
||||
## The list of hostnames to be covered with this ingress record.
|
||||
## Most likely this will be just one host, but in the event more hosts are needed, this is an array
|
||||
## Enable TLS configuration for the hostname defined at ingress.hostname parameter
|
||||
## TLS certificates will be retrieved from a TLS secret with name: {{- printf "%s-tls" .Values.ingress.hostname }}
|
||||
## You can use the ingress.secrets parameter to create this TLS secret or relay on cert-manager to create it
|
||||
##
|
||||
hosts:
|
||||
- name: logstash.local
|
||||
path: /
|
||||
tls: false
|
||||
|
||||
## The tls configuration for the ingress
|
||||
## The list of additional hostnames to be covered with this ingress record.
|
||||
## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array
|
||||
## extraHosts:
|
||||
## - name: logstash.local
|
||||
## path: /
|
||||
##
|
||||
|
||||
## Any additional arbitrary paths that may need to be added to the ingress under the main host.
|
||||
## For example: The ALB ingress controller requires a special rule for handling SSL redirection.
|
||||
## extraPaths:
|
||||
## - path: /*
|
||||
## backend:
|
||||
## serviceName: ssl-redirect
|
||||
## servicePort: use-annotation
|
||||
##
|
||||
|
||||
## The tls configuration for additional hostnames to be covered with this ingress record.
|
||||
## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls
|
||||
# tls:
|
||||
# - hosts:
|
||||
# - logstash.local
|
||||
# secretName: logstash.local-tls
|
||||
## extraTls:
|
||||
## - hosts:
|
||||
## - logstash.local
|
||||
## secretName: logstash.local-tls
|
||||
##
|
||||
|
||||
secrets:
|
||||
## If you're providing your own certificates, please use this to add the certificates as secrets
|
||||
## key and certificate should start with -----BEGIN CERTIFICATE----- or
|
||||
## -----BEGIN RSA PRIVATE KEY-----
|
||||
@@ -337,9 +373,12 @@ ingress:
|
||||
##
|
||||
## It is also possible to create and manage the certificates outside of this helm chart
|
||||
## Please see README.md for more information
|
||||
# - name: logstash.local-tls
|
||||
# key:
|
||||
# certificate:
|
||||
##
|
||||
secrets: []
|
||||
## - name: logstash.local-tls
|
||||
## key:
|
||||
## certificate:
|
||||
##
|
||||
|
||||
## Prometheus metrics
|
||||
##
|
||||
|
||||
Reference in New Issue
Block a user