mirror of
https://github.com/apache/superset.git
synced 2026-04-19 08:04:53 +00:00
fix(helm): Include option to use Redis with SSL (#26663)
This commit is contained in:
@@ -29,7 +29,7 @@ maintainers:
|
|||||||
- name: craig-rueda
|
- name: craig-rueda
|
||||||
email: craig@craigrueda.com
|
email: craig@craigrueda.com
|
||||||
url: https://github.com/craig-rueda
|
url: https://github.com/craig-rueda
|
||||||
version: 0.12.3
|
version: 0.12.4
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: postgresql
|
- name: postgresql
|
||||||
version: 12.1.6
|
version: 12.1.6
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ NOTE: This file is generated by helm-docs: https://github.com/norwoodj/helm-docs
|
|||||||
|
|
||||||
# superset
|
# superset
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Apache Superset is a modern, enterprise-ready business intelligence web application
|
Apache Superset is a modern, enterprise-ready business intelligence web application
|
||||||
|
|
||||||
@@ -188,8 +188,13 @@ On helm this can be set on `extraSecretEnv.SUPERSET_SECRET_KEY` or `configOverri
|
|||||||
| supersetNode.connections.db_pass | string | `"superset"` | |
|
| supersetNode.connections.db_pass | string | `"superset"` | |
|
||||||
| supersetNode.connections.db_port | string | `"5432"` | |
|
| supersetNode.connections.db_port | string | `"5432"` | |
|
||||||
| supersetNode.connections.db_user | string | `"superset"` | |
|
| supersetNode.connections.db_user | string | `"superset"` | |
|
||||||
|
| supersetNode.connections.redis_cache_db | string | `"1"` | |
|
||||||
|
| supersetNode.connections.redis_celery_db | string | `"0"` | |
|
||||||
| supersetNode.connections.redis_host | string | `"{{ .Release.Name }}-redis-headless"` | Change in case of bringing your own redis and then also set redis.enabled:false |
|
| supersetNode.connections.redis_host | string | `"{{ .Release.Name }}-redis-headless"` | Change in case of bringing your own redis and then also set redis.enabled:false |
|
||||||
| supersetNode.connections.redis_port | string | `"6379"` | |
|
| supersetNode.connections.redis_port | string | `"6379"` | |
|
||||||
|
| supersetNode.connections.redis_ssl.enabled | bool | `false` | |
|
||||||
|
| supersetNode.connections.redis_ssl.ssl_cert_reqs | string | `"CERT_NONE"` | |
|
||||||
|
| supersetNode.connections.redis_user | string | `""` | |
|
||||||
| supersetNode.containerSecurityContext | object | `{}` | |
|
| supersetNode.containerSecurityContext | object | `{}` | |
|
||||||
| supersetNode.deploymentAnnotations | object | `{}` | Annotations to be added to supersetNode deployment |
|
| supersetNode.deploymentAnnotations | object | `{}` | Annotations to be added to supersetNode deployment |
|
||||||
| supersetNode.deploymentLabels | object | `{}` | Labels to be added to supersetNode deployment |
|
| supersetNode.deploymentLabels | object | `{}` | Labels to be added to supersetNode deployment |
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ Create chart name and version as used by the chart label.
|
|||||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
|
||||||
{{- define "superset-config" }}
|
{{- define "superset-config" }}
|
||||||
import os
|
import os
|
||||||
from flask_caching.backends.rediscache import RedisCache
|
from flask_caching.backends.rediscache import RedisCache
|
||||||
@@ -68,15 +69,30 @@ from flask_caching.backends.rediscache import RedisCache
|
|||||||
def env(key, default=None):
|
def env(key, default=None):
|
||||||
return os.getenv(key, default)
|
return os.getenv(key, default)
|
||||||
|
|
||||||
|
# Redis Base URL
|
||||||
|
{{- if .Values.supersetNode.connections.redis_password }}
|
||||||
|
REDIS_BASE_URL=f"{env('REDIS_PROTO')}://{env('REDIS_USER', '')}:{env('REDIS_PASSWORD')}@{env('REDIS_HOST')}:{env('REDIS_PORT')}"
|
||||||
|
{{- else }}
|
||||||
|
REDIS_BASE_URL=f"{env('REDIS_PROTO')}://{env('REDIS_HOST')}:{env('REDIS_PORT')}"
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
# Redis URL Params
|
||||||
|
{{- if .Values.supersetNode.connections.redis_ssl.enabled }}
|
||||||
|
REDIS_URL_PARAMS = f"?ssl_cert_req={env('REDIS_SSL_CERT_REQS')}"
|
||||||
|
{{- else }}
|
||||||
|
REDIS_URL_PARAMS = ""
|
||||||
|
{{- end}}
|
||||||
|
|
||||||
|
# Build Redis URLs
|
||||||
|
CACHE_REDIS_URL = f"{REDIS_BASE_URL}/{env('REDIS_DB', 1)}{REDIS_URL_PARAMS}"
|
||||||
|
CELERY_REDIS_URL = f"{REDIS_BASE_URL}/{env('REDIS_CELERY_DB', 0)}{REDIS_URL_PARAMS}"
|
||||||
|
|
||||||
MAPBOX_API_KEY = env('MAPBOX_API_KEY', '')
|
MAPBOX_API_KEY = env('MAPBOX_API_KEY', '')
|
||||||
CACHE_CONFIG = {
|
CACHE_CONFIG = {
|
||||||
'CACHE_TYPE': 'RedisCache',
|
'CACHE_TYPE': 'RedisCache',
|
||||||
'CACHE_DEFAULT_TIMEOUT': 300,
|
'CACHE_DEFAULT_TIMEOUT': 300,
|
||||||
'CACHE_KEY_PREFIX': 'superset_',
|
'CACHE_KEY_PREFIX': 'superset_',
|
||||||
'CACHE_REDIS_HOST': env('REDIS_HOST'),
|
'CACHE_REDIS_URL': CACHE_REDIS_URL,
|
||||||
'CACHE_REDIS_PORT': env('REDIS_PORT'),
|
|
||||||
'CACHE_REDIS_PASSWORD': env('REDIS_PASSWORD'),
|
|
||||||
'CACHE_REDIS_DB': env('REDIS_DB', 1),
|
|
||||||
}
|
}
|
||||||
DATA_CACHE_CONFIG = CACHE_CONFIG
|
DATA_CACHE_CONFIG = CACHE_CONFIG
|
||||||
|
|
||||||
@@ -85,13 +101,8 @@ SQLALCHEMY_TRACK_MODIFICATIONS = True
|
|||||||
|
|
||||||
class CeleryConfig:
|
class CeleryConfig:
|
||||||
imports = ("superset.sql_lab", )
|
imports = ("superset.sql_lab", )
|
||||||
{{- if .Values.supersetNode.connections.redis_password }}
|
broker_url = CELERY_REDIS_URL
|
||||||
broker_url = f"redis://:{env('REDIS_PASSWORD')}@{env('REDIS_HOST')}:{env('REDIS_PORT')}/0"
|
result_backend = CELERY_REDIS_URL
|
||||||
result_backend = f"redis://:{env('REDIS_PASSWORD')}@{env('REDIS_HOST')}:{env('REDIS_PORT')}/0"
|
|
||||||
{{- else }}
|
|
||||||
broker_url = f"redis://{env('REDIS_HOST')}:{env('REDIS_PORT')}/0"
|
|
||||||
result_backend = f"redis://{env('REDIS_HOST')}:{env('REDIS_PORT')}/0"
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
CELERY_CONFIG = CeleryConfig
|
CELERY_CONFIG = CeleryConfig
|
||||||
RESULTS_BACKEND = RedisCache(
|
RESULTS_BACKEND = RedisCache(
|
||||||
@@ -100,7 +111,11 @@ RESULTS_BACKEND = RedisCache(
|
|||||||
password=env('REDIS_PASSWORD'),
|
password=env('REDIS_PASSWORD'),
|
||||||
{{- end }}
|
{{- end }}
|
||||||
port=env('REDIS_PORT'),
|
port=env('REDIS_PORT'),
|
||||||
key_prefix='superset_results'
|
key_prefix='superset_results',
|
||||||
|
{{- if .Values.supersetNode.connections.redis_ssl.enabled }}
|
||||||
|
ssl=True,
|
||||||
|
ssl_cert_reqs=env('REDIS_SSL_CERT_REQS'),
|
||||||
|
{{- end }}
|
||||||
)
|
)
|
||||||
|
|
||||||
{{ if .Values.configOverrides }}
|
{{ if .Values.configOverrides }}
|
||||||
|
|||||||
@@ -30,10 +30,17 @@ metadata:
|
|||||||
type: Opaque
|
type: Opaque
|
||||||
stringData:
|
stringData:
|
||||||
REDIS_HOST: {{ tpl .Values.supersetNode.connections.redis_host . | quote }}
|
REDIS_HOST: {{ tpl .Values.supersetNode.connections.redis_host . | quote }}
|
||||||
|
REDIS_USER: {{ .Values.supersetNode.connections.redis_user | quote }}
|
||||||
{{- if .Values.supersetNode.connections.redis_password }}
|
{{- if .Values.supersetNode.connections.redis_password }}
|
||||||
REDIS_PASSWORD: {{ .Values.supersetNode.connections.redis_password | quote }}
|
REDIS_PASSWORD: {{ .Values.supersetNode.connections.redis_password | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
REDIS_PORT: {{ .Values.supersetNode.connections.redis_port | quote }}
|
REDIS_PORT: {{ .Values.supersetNode.connections.redis_port | quote }}
|
||||||
|
REDIS_PROTO: {{ if .Values.supersetNode.connections.redis_ssl.enabled }}"rediss"{{ else }}"redis"{{ end }}
|
||||||
|
REDIS_DB: {{ .Values.supersetNode.connections.redis_cache_db | quote }}
|
||||||
|
REDIS_CELERY_DB: {{ .Values.supersetNode.connections.redis_celery_db | quote }}
|
||||||
|
{{- if .Values.supersetNode.connections.redis_ssl.enabled }}
|
||||||
|
REDIS_SSL_CERT_REQS: {{ .Values.supersetNode.connections.redis_ssl.ssl_cert_reqs | default "CERT_NONE" | quote }}
|
||||||
|
{{- end }}
|
||||||
DB_HOST: {{ tpl .Values.supersetNode.connections.db_host . | quote }}
|
DB_HOST: {{ tpl .Values.supersetNode.connections.db_host . | quote }}
|
||||||
DB_PORT: {{ .Values.supersetNode.connections.db_port | quote }}
|
DB_PORT: {{ .Values.supersetNode.connections.db_port | quote }}
|
||||||
DB_USER: {{ .Values.supersetNode.connections.db_user | quote }}
|
DB_USER: {{ .Values.supersetNode.connections.db_user | quote }}
|
||||||
|
|||||||
@@ -258,8 +258,16 @@ supersetNode:
|
|||||||
connections:
|
connections:
|
||||||
# -- Change in case of bringing your own redis and then also set redis.enabled:false
|
# -- Change in case of bringing your own redis and then also set redis.enabled:false
|
||||||
redis_host: '{{ .Release.Name }}-redis-headless'
|
redis_host: '{{ .Release.Name }}-redis-headless'
|
||||||
# redis_password: superset
|
|
||||||
redis_port: "6379"
|
redis_port: "6379"
|
||||||
|
redis_user: ""
|
||||||
|
# redis_password: superset
|
||||||
|
redis_cache_db: "1"
|
||||||
|
redis_celery_db: "0"
|
||||||
|
# Or SSL port is usually 6380
|
||||||
|
# Update following for using Redis with SSL
|
||||||
|
redis_ssl:
|
||||||
|
enabled: false
|
||||||
|
ssl_cert_reqs: CERT_NONE
|
||||||
# You need to change below configuration incase bringing own PostgresSQL instance and also set postgresql.enabled:false
|
# You need to change below configuration incase bringing own PostgresSQL instance and also set postgresql.enabled:false
|
||||||
db_host: '{{ .Release.Name }}-postgresql'
|
db_host: '{{ .Release.Name }}-postgresql'
|
||||||
db_port: "5432"
|
db_port: "5432"
|
||||||
|
|||||||
Reference in New Issue
Block a user