tree: 5f4338b918dca14f095c63d4400c85ad2abe8286
  1. templates/
  2. tests/
  3. .gitignore
  4. .helmignore
  5. Chart.lock
  6. Chart.yaml
  7. README.md
  8. README.md.gotmpl
  9. UPGRADING.md
  10. values.schema.json
  11. values.yaml
helm/superset/README.md

superset

Version: 0.22.1

Apache Superset is a modern, enterprise-ready business intelligence web application

Homepage: https://superset.apache.org/

Source Code

TL;DR

helm repo add superset http://apache.github.io/superset/
helm install my-superset superset/superset

Make sure you set your own SECRET_KEY to something unique and secret. This secret key is used by Flask for securely signing the session cookie and will be used to encrypt sensitive data on Superset's metadata database. It should be a long random bytes or str.

On helm this can be set on extraSecretEnv.SUPERSET_SECRET_KEY or configOverrides.secrets

Upgrade Notes

Kubernetes recommended labels (breaking)

This chart labels and selects workloads using the Kubernetes recommended labels (app.kubernetes.io/*) instead of the legacy app/release labels. A Deployment's spec.selector.matchLabels is immutable, so helm upgrade against a release created before this change fails with a field is immutable error.

To upgrade an existing release, delete the affected workloads first (their selector labels changed), then upgrade so they are recreated:

kubectl delete deployment,statefulset -l release=<release-name> -n <namespace>
helm upgrade <release-name> superset/superset

Alternatively, perform a fresh install. This is a one-time migration; subsequent upgrades are unaffected.

Requirements

RepositoryNameVersion
oci://registry-1.docker.io/bitnamichartspostgresql16.7.27
oci://registry-1.docker.io/bitnamichartsredis17.9.4

Values

KeyTypeDefaultDescription
affinityobject{}
bootstrapScriptstringsee values.yamlInstall additional packages and do any other bootstrap configuration in this script For production clusters it's recommended to build own image with this step done in CI
cacheobject{"asyncQueries":{"keyPrefix":"qc-","timeout":86400},"cacheDb":null,"cacheUrl":null,"celeryDb":null,"celeryUrl":null,"defaultTimeout":86400,"driver":"","enabled":true,"host":null,"keyPrefix":"superset_","password":null,"port":null,"resultsBackendKeyPrefix":"superset_results","sentinel":null,"ssl":{"ca_certs":null,"certfile":null,"enabled":false,"keyfile":null,"ssl_cert_reqs":"required"},"user":""}Redis cache configuration for Superset Redis is optional but recommended for caching and Celery. If redis.enabled (chart dependency) is true, defaults point to the chart's Redis instance.
cache.asyncQueriesobject{"keyPrefix":"qc-","timeout":86400}Async queries configuration
cache.cacheDbstringnilRedis database number for cache (default: 1 when unset; legacy redis_cache_db is honored)
cache.cacheUrlstringnilFull Redis cache URL (overrides host/port/user/pass if set)
cache.celeryDbstringnilRedis database number for Celery (default: 0 when unset; legacy redis_celery_db is honored)
cache.celeryUrlstringnilFull Redis Celery URL (overrides host/port/user/pass if set)
cache.defaultTimeoutint86400Default cache timeout in seconds
cache.driverstring""Custom Redis driver (e.g. TLS/managed variants); overrides the redis proto in URLs when set. Ports the legacy supersetNode.connections.redis_driver escape hatch.
cache.enabledbooltrueEnable Redis-based features (cache, Celery). Set to false to disable Redis usage entirely.
cache.hoststringnilRedis host (default: {{ .Release.Name }}-redis-headless)
cache.keyPrefixstring"superset_"Cache key prefix
cache.passwordstringnilRedis password
cache.portstringnilRedis port (default: 6379 when unset; legacy supersetNode.connections.redis_port is honored)
cache.resultsBackendKeyPrefixstring"superset_results"Results backend key prefix
cache.sentinelstringnilRedis Sentinel configuration (optional)
cache.sslobject{"ca_certs":null,"certfile":null,"enabled":false,"keyfile":null,"ssl_cert_reqs":"required"}Redis SSL configuration
cache.userstring""Redis user (optional, for Redis ACL)
clusterobject{"databaseServiceName":null,"domain":".svc.cluster.local","redisServiceName":null,"websocketServiceName":null}Kubernetes cluster configuration Used for constructing service URLs between chart components
cluster.databaseServiceNamestringnilDatabase service name (default: {{ .Release.Name }}-postgresql) Override if using a different service name for the database
cluster.domainstring".svc.cluster.local"Kubernetes cluster domain (default: .svc.cluster.local) Override if using a custom cluster domain
cluster.redisServiceNamestringnilRedis service name (default: {{ .Release.Name }}-redis-headless) Override if using a different service name for Redis
cluster.websocketServiceNamestringnilWebSocket service name (default: {{ .Release.Name }}-ws) Override if using a different service name for the WebSocket service
configobject{}Superset configuration properties Set any configuration property from superset/config.py here See https://github.com/apache/superset/blob/master/superset/config.py for all available options
configFromSecretstring"{{ template \"superset.fullname\" . }}-config"The name of the secret which we will use to generate a superset_config.py file Note: this secret must have the key superset_config.py in it and can include other files as well
configMountPathstring"/app/pythonpath"
configOverridesobject{}A dictionary of overrides to append at the end of superset_config.py - the name does not matter WARNING: the order is not guaranteed Files can be passed as helm --set-file configOverrides.my-override=my-file.py
configOverridesFilesobject{}Same as above but the values are files
databaseobject{"driver":null,"host":null,"name":null,"password":null,"port":null,"ssl":{"enabled":false,"mode":"require"},"uri":null,"user":null}Database connection configuration for the Superset metadata database
database.driverstringnilDatabase driver used when uri is not set (default: postgresql+psycopg2 when unset; legacy supersetNode.connections.db_type is honored when this is unset)
database.hoststringnilDatabase host (default: {{ .Release.Name }}-postgresql)
database.namestringnilDatabase name (default: superset, resolved via superset.db.name)
database.passwordstringnilDatabase password (default: superset, resolved via superset.db.password) ⚠️ CHANGE THIS for production
database.portstringnilDatabase port (default: 5432 when unset; legacy supersetNode.connections.db_port is honored)
database.sslobject{"enabled":false,"mode":"require"}Database SSL configuration
database.uristringnilFull database URI (overrides host/port/user/pass/name if set) Example: “postgresql+psycopg2://user:pass@host:5432/dbname
database.userstringnilDatabase user (default: superset, resolved via superset.db.user)
envFromSecretstring"{{ template \"superset.fullname\" . }}-env"The name of the secret which we will use to populate env vars in deployed pods This can be useful for secret keys, etc.
envFromSecretslist[]This can be a list of templated strings
extraConfigMountPathstring"/app/configs"
extraConfigsobject{}Extra files to be mounted as ConfigMap on the path specified in extraConfigMountPath
extraEnvobject{}Extra environment variables that will be passed into pods
extraEnvRawlist[]Extra environment variables in RAW format that will be passed into pods
extraLabelsobject{}Labels to be added to all resources
extraSecretEnvobject{}Extra environment variables to pass as secrets
extraSecretsobject{}Extra files to be mounted as Secrets on the path specified in configMountPath
extraVolumeMountslist[]
extraVolumeslist[]
featureFlagsobject{}Feature flags configuration See https://github.com/apache/superset/blob/master/RESOURCES/FEATURE_FLAGS.md
fullnameOverridestringnilProvide a name to override the full names of resources
globalPodAnnotationsobject{}Global pod annotations to be added to all pods Use this to set annotations that apply to all Superset components Component-specific podAnnotations will be merged with these global annotations
hostAliaseslist[]Custom hostAliases for all superset pods # https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/
httprouteobjectsee values.yamlGateway API HTTPRoute for exposing Superset via a Gateway. Requires the Gateway API CRDs (gateway.networking.k8s.io/v1) installed in the cluster.
httproute.annotationsobject{}Annotations to add to the HTTPRoute
httproute.apiVersionstring"gateway.networking.k8s.io/v1"HTTPRoute apiVersion. Override to gateway.networking.k8s.io/v1beta1 for older Gateway API installations that have not promoted HTTPRoute to v1.
httproute.hostnameslist[]Hostnames that match against the HTTP Host header (templated)
httproute.labelsobject{}Additional labels to add to the HTTPRoute
httproute.parentRefslist[]Gateways this HTTPRoute attaches to
httproute.ruleslist[{"matches":[{"path":{"type":"PathPrefix","value":"/"}}]}]Routing rules. Each rule is backed by the Superset service. Set weight per rule to leave room for traffic splitting (defaults to 1). When supersetWebsockets.enabled is true, an extra rule routing supersetWebsockets.ingress.path to the -ws service is appended automatically, mirroring the ingress behavior.
image.pullPolicystring"IfNotPresent"
image.repositorystring"apachesuperset.docker.scarf.sh/apache/superset"
image.tagstringnil
imagePullSecretslist[]
ingress.annotationsobject{}
ingress.enabledboolfalse
ingress.extraHostsRawlist[]
ingress.hosts[0]string"chart-example.local"
ingress.ingressClassNamestringnil
ingress.pathstring"/"
ingress.pathTypestring"ImplementationSpecific"
ingress.tlslist[]
init.additionalPodSpecobject{}Custom pod spec to be added to init job
init.adminUser.emailstring"admin@superset.com"
init.adminUser.firstnamestring"Superset"
init.adminUser.lastnamestring"Admin"
init.adminUser.passwordstring"admin"
init.adminUser.usernamestring"admin"
init.affinityobject{}
init.commandlista superset_init.sh commandCommand
init.containerSecurityContextobject{}
init.createAdminbooltrue
init.enabledbooltrue
init.extraContainerslist[]Launch additional containers into init job pod
init.extraInitContainerslist[]Extra init containers appended after init job initContainers
init.initContainerslista container waiting for postgresList of initContainers
init.initscriptstringunused; kept for backwards-compatibility onlyDEPRECATED: this field is no longer used by the chart. The init script is rendered entirely from the internal superset.initScript template (which runs superset db upgrade, superset init, admin creation, and examples). Any customization placed here is silently ignored. See UPGRADING.md.
init.jobAnnotations.“helm.sh/hook”string"post-install,post-upgrade"
init.jobAnnotations.“helm.sh/hook-delete-policy”string"before-hook-creation"
init.loadExamplesboolfalse
init.podAnnotationsobject{}
init.podLabelsobject{}
init.podSecurityContextobject{}
init.priorityClassNamestringnilSet priorityClassName for init job pods
init.resourcesobject{}
init.tolerationslist[]
init.topologySpreadConstraintslist[]TopologySpreadConstrains to be added to init job
nameOverridestringnilProvide a name to override the name of the chart
nodeSelectorobject{}
postgresqlobjectsee values.yamlConfiguration values for the postgresql dependency. ref: https://github.com/bitnami/charts/tree/main/bitnami/postgresql
priorityClassNamestringnilSet priorityClassName for superset pods
redisobjectsee values.yamlConfiguration values for the Redis dependency. ref: https://github.com/bitnami/charts/blob/master/bitnami/redis More documentation can be found here: https://artifacthub.io/packages/helm/bitnami/redis
resourcesobject{}
runAsUserint0User ID directive. This user must have enough permissions to run the bootstrap script Running containers as root is not recommended in production. Change this to another UID - e.g. 1000 to be more secure
secretConfigobject{"annotations":{}}Specify whether Helm should apply additional settings to a secret containing configuration files
secretConfig.annotationsobject{}Annotations to be added to the secret which contains configuration files
secretEnvobject{"annotations":{},"create":true}Specify rather or not helm should create the secret described in secret-env.yaml template
secretEnv.annotationsobject{}Annotations to be added to the secret
secretEnv.createbooltrueChange to false in order to support externally created secret (Binami “Sealed Secrets” for Kubernetes or External Secrets Operator) note: when externally creating the secret, the chart still expects to pull values from a secret with the name of the release defaults to release-name-superset-env - full logic located in _helpers.tpl file: define "superset.fullname"
service.annotationsobject{}
service.loadBalancerIPstringnil
service.nodePort.httpint"nil"
service.portint8088
service.typestring"ClusterIP"
serviceAccount.annotationsobject{}
serviceAccount.createboolfalseCreate custom service account for Superset. If create: true and serviceAccountName is not provided, superset.fullname will be used.
serviceAccount.namestring""Service account name to use (if not specified, defaults to release name + chart name)
serviceAccountNamestringnilSpecify service account name to be used
supersetCeleryBeat.affinityobject{}Affinity to be added to supersetCeleryBeat deployment
supersetCeleryBeat.commandlista celery beat commandCommand
supersetCeleryBeat.containerSecurityContextobject{}
supersetCeleryBeat.deploymentAdditionalPodSpecobject{}Custom pod spec to be added to supersetCeleryBeat deployment
supersetCeleryBeat.deploymentAnnotationsobject{}Annotations to be added to supersetCeleryBeat deployment
supersetCeleryBeat.enabledboolfalseThis is only required if you intend to use alerts and reports
supersetCeleryBeat.extraContainerslist[]Launch additional containers into supersetCeleryBeat pods
supersetCeleryBeat.extraInitContainerslist[]Extra init containers appended after supersetCeleryBeat initContainers
supersetCeleryBeat.forceReloadboolfalseIf true, forces deployment to reload on each upgrade
supersetCeleryBeat.initContainerslista container waiting for postgresList of init containers
supersetCeleryBeat.podAnnotationsobject{}Annotations to be added to supersetCeleryBeat pods
supersetCeleryBeat.podDisruptionBudgetobject{"enabled":false,"maxUnavailable":1,"minAvailable":1}Sets the pod disruption budget for supersetCeleryBeat pods
supersetCeleryBeat.podDisruptionBudget.enabledboolfalseWhether the pod disruption budget should be created
supersetCeleryBeat.podDisruptionBudget.maxUnavailableint1If set, minAvailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetCeleryBeat.podDisruptionBudget.minAvailableint1If set, maxUnavailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetCeleryBeat.podLabelsobject{}Labels to be added to supersetCeleryBeat pods
supersetCeleryBeat.podSecurityContextobject{}
supersetCeleryBeat.priorityClassNamestringnilSet priorityClassName for CeleryBeat pods
supersetCeleryBeat.resourcesobject{}Resource settings for the CeleryBeat pods - these settings overwrite might existing values from the global resources object defined above.
supersetCeleryBeat.topologySpreadConstraintslist[]TopologySpreadConstrains to be added to supersetCeleryBeat deployments
supersetCeleryFlower.affinityobject{}Affinity to be added to supersetCeleryFlower deployment
supersetCeleryFlower.commandlista celery flower commandCommand
supersetCeleryFlower.containerSecurityContextobject{}
supersetCeleryFlower.deploymentAdditionalPodSpecobject{}Custom pod spec to be added to supersetCeleryFlower deployment
supersetCeleryFlower.deploymentAnnotationsobject{}Annotations to be added to supersetCeleryFlower deployment
supersetCeleryFlower.enabledboolfalseEnables a Celery flower deployment (management UI to monitor celery jobs) WARNING: on superset 1.x, this requires a Superset image that has flower<1.0.0 installed (which is NOT the case of the default images) flower>=1.0.0 requires Celery 5+ which Superset 1.5 does not support
supersetCeleryFlower.extraContainerslist[]Launch additional containers into supersetCeleryFlower pods
supersetCeleryFlower.extraInitContainerslist[]Extra init containers appended after supersetCeleryFlower initContainers
supersetCeleryFlower.initContainerslista container waiting for postgres and redisList of init containers
supersetCeleryFlower.livenessProbe.failureThresholdint3
supersetCeleryFlower.livenessProbe.httpGet.pathstring"/api/workers"
supersetCeleryFlower.livenessProbe.httpGet.portstring"flower"
supersetCeleryFlower.livenessProbe.initialDelaySecondsint5
supersetCeleryFlower.livenessProbe.periodSecondsint5
supersetCeleryFlower.livenessProbe.successThresholdint1
supersetCeleryFlower.livenessProbe.timeoutSecondsint1
supersetCeleryFlower.podAnnotationsobject{}Annotations to be added to supersetCeleryFlower pods
supersetCeleryFlower.podDisruptionBudgetobject{"enabled":false,"maxUnavailable":1,"minAvailable":1}Sets the pod disruption budget for supersetCeleryFlower pods
supersetCeleryFlower.podDisruptionBudget.enabledboolfalseWhether the pod disruption budget should be created
supersetCeleryFlower.podDisruptionBudget.maxUnavailableint1If set, minAvailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetCeleryFlower.podDisruptionBudget.minAvailableint1If set, maxUnavailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetCeleryFlower.podLabelsobject{}Labels to be added to supersetCeleryFlower pods
supersetCeleryFlower.podSecurityContextobject{}
supersetCeleryFlower.priorityClassNamestringnilSet priorityClassName for supersetCeleryFlower pods
supersetCeleryFlower.readinessProbe.failureThresholdint3
supersetCeleryFlower.readinessProbe.httpGet.pathstring"/api/workers"
supersetCeleryFlower.readinessProbe.httpGet.portstring"flower"
supersetCeleryFlower.readinessProbe.initialDelaySecondsint5
supersetCeleryFlower.readinessProbe.periodSecondsint5
supersetCeleryFlower.readinessProbe.successThresholdint1
supersetCeleryFlower.readinessProbe.timeoutSecondsint1
supersetCeleryFlower.replicaCountint1
supersetCeleryFlower.resourcesobject{}Resource settings for the CeleryBeat pods - these settings overwrite might existing values from the global resources object defined above.
supersetCeleryFlower.service.annotationsobject{}
supersetCeleryFlower.service.loadBalancerIPstringnil
supersetCeleryFlower.service.nodePort.httpint"nil"
supersetCeleryFlower.service.portint5555
supersetCeleryFlower.service.typestring"ClusterIP"
supersetCeleryFlower.startupProbe.failureThresholdint60
supersetCeleryFlower.startupProbe.httpGet.pathstring"/api/workers"
supersetCeleryFlower.startupProbe.httpGet.portstring"flower"
supersetCeleryFlower.startupProbe.initialDelaySecondsint5
supersetCeleryFlower.startupProbe.periodSecondsint5
supersetCeleryFlower.startupProbe.successThresholdint1
supersetCeleryFlower.startupProbe.timeoutSecondsint1
supersetCeleryFlower.topologySpreadConstraintslist[]TopologySpreadConstrains to be added to supersetCeleryFlower deployments
supersetMcp.affinityobject{}Affinity to be added to supersetMcp deployment
supersetMcp.commandlista superset mcp run commandCommand
supersetMcp.containerSecurityContextobject{}
supersetMcp.deploymentAdditionalPodSpecobject{}Custom pod spec to be added to supersetMcp deployment
supersetMcp.deploymentAnnotationsobject{}Annotations to be added to supersetMcp deployment
supersetMcp.deploymentLabelsobject{}Labels to be added to supersetMcp deployment
supersetMcp.enabledboolfalseEnables the Superset MCP Server. To expose it via the shared ingress at /mcp, also set supersetMcp.ingress.enabled=true. WARNING: this requires fastMCP to be installed, which can be done by installing apache-superset[fastmcp]
supersetMcp.extraContainerslist[]Launch additional containers into supersetMcp pods
supersetMcp.extraInitContainerslist[]Extra init containers appended after supersetMcp initContainers
supersetMcp.forceReloadboolfalseIf true, forces deployment to reload on each upgrade
supersetMcp.ingress.enabledboolfalseIf true, the MCP server will be exposed via the ingress /mcp subpath
supersetMcp.ingress.pathstring"/mcp"
supersetMcp.ingress.pathTypestring"Prefix"
supersetMcp.initContainerslista container waiting for postgres and redisList of init containers
supersetMcp.lifecycleobject{}Container lifecycle hooks for the worker pod
supersetMcp.livenessProbe.failureThresholdint3
supersetMcp.livenessProbe.httpGet.pathstring"/health"
supersetMcp.livenessProbe.httpGet.portstring"mcp"
supersetMcp.livenessProbe.initialDelaySecondsint15
supersetMcp.livenessProbe.periodSecondsint15
supersetMcp.livenessProbe.successThresholdint1
supersetMcp.livenessProbe.timeoutSecondsint3
supersetMcp.podAnnotationsobject{}Annotations to be added to supersetMcp pods
supersetMcp.podDisruptionBudgetobject{"enabled":false,"maxUnavailable":1,"minAvailable":1}Sets the pod disruption budget for supersetMcp pods
supersetMcp.podDisruptionBudget.enabledboolfalseWhether the pod disruption budget should be created
supersetMcp.podDisruptionBudget.maxUnavailableint1If set, minAvailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetMcp.podDisruptionBudget.minAvailableint1If set, maxUnavailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetMcp.podLabelsobject{}Labels to be added to supersetMcp pods
supersetMcp.podSecurityContextobject{}
supersetMcp.priorityClassNamestringnilSet priorityClassName for supersetMcp pods
supersetMcp.readinessProbe.failureThresholdint3
supersetMcp.readinessProbe.httpGet.pathstring"/health"
supersetMcp.readinessProbe.httpGet.portstring"mcp"
supersetMcp.readinessProbe.initialDelaySecondsint15
supersetMcp.readinessProbe.periodSecondsint15
supersetMcp.readinessProbe.successThresholdint1
supersetMcp.readinessProbe.timeoutSecondsint3
supersetMcp.replicaCountint1
supersetMcp.resourcesobject{}Resource settings for the supersetMcp pods - these settings overwrite might existing values from the global resources object defined above.
supersetMcp.service.annotationsobject{}
supersetMcp.service.loadBalancerIPstringnil
supersetMcp.service.nodePort.httpint"nil"
supersetMcp.service.portint5008
supersetMcp.service.typestring"ClusterIP"
supersetMcp.startupProbe.failureThresholdint60
supersetMcp.startupProbe.httpGet.pathstring"/health"
supersetMcp.startupProbe.httpGet.portstring"mcp"
supersetMcp.startupProbe.initialDelaySecondsint15
supersetMcp.startupProbe.periodSecondsint5
supersetMcp.startupProbe.successThresholdint1
supersetMcp.startupProbe.timeoutSecondsint3
supersetMcp.strategyobject{}
supersetMcp.terminationGracePeriodSecondsstringnilPod termination grace period (seconds) for the worker pod so in-flight tasks can drain before SIGKILL
supersetMcp.topologySpreadConstraintslist[]TopologySpreadConstrains to be added to supersetMcp deployments
supersetNode.affinityobject{}Affinity to be added to supersetNode deployment
supersetNode.autoscaling.enabledboolfalse
supersetNode.autoscaling.maxReplicasint100
supersetNode.autoscaling.minReplicasint1
supersetNode.autoscaling.targetCPUUtilizationPercentageint80
supersetNode.commandlistSee values.yamlStartup command
supersetNode.connectionsobject{}
supersetNode.containerSecurityContextobject{}
supersetNode.deploymentAdditionalPodSpecobject{}Custom pod spec to be added to supersetNode deployment
supersetNode.deploymentAnnotationsobject{}Annotations to be added to supersetNode deployment
supersetNode.deploymentLabelsobject{}Labels to be added to supersetNode deployment
supersetNode.envobject{}
supersetNode.extraContainerslist[]Launch additional containers into supersetNode pod
supersetNode.extraInitContainerslist[]Extra init containers appended after supersetNode initContainers
supersetNode.forceReloadboolfalseIf true, forces deployment to reload on each upgrade
supersetNode.initContainerslista container waiting for postgresInit containers
supersetNode.lifecycleobject{}Container lifecycle hooks, e.g. a preStop sleep so the Service/Ingress stops routing to the pod before gunicorn receives SIGTERM
supersetNode.livenessProbe.failureThresholdint3
supersetNode.livenessProbe.httpGet.pathstring"/health"
supersetNode.livenessProbe.httpGet.portstring"http"
supersetNode.livenessProbe.initialDelaySecondsint15
supersetNode.livenessProbe.periodSecondsint15
supersetNode.livenessProbe.successThresholdint1
supersetNode.livenessProbe.timeoutSecondsint1
supersetNode.podAnnotationsobject{}Annotations to be added to supersetNode pods
supersetNode.podDisruptionBudgetobject{"enabled":false,"maxUnavailable":1,"minAvailable":1}Sets the pod disruption budget for supersetNode pods
supersetNode.podDisruptionBudget.enabledboolfalseWhether the pod disruption budget should be created
supersetNode.podDisruptionBudget.maxUnavailableint1If set, minAvailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetNode.podDisruptionBudget.minAvailableint1If set, maxUnavailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetNode.podLabelsobject{}Labels to be added to supersetNode pods
supersetNode.podSecurityContextobject{}
supersetNode.readinessProbe.failureThresholdint3
supersetNode.readinessProbe.httpGet.pathstring"/health"
supersetNode.readinessProbe.httpGet.portstring"http"
supersetNode.readinessProbe.initialDelaySecondsint15
supersetNode.readinessProbe.periodSecondsint15
supersetNode.readinessProbe.successThresholdint1
supersetNode.readinessProbe.timeoutSecondsint1
supersetNode.replicas.enabledbooltrue
supersetNode.replicas.replicaCountint1
supersetNode.resourcesobject{}Resource settings for the supersetNode pods - these settings overwrite might existing values from the global resources object defined above.
supersetNode.startupProbe.failureThresholdint60
supersetNode.startupProbe.httpGet.pathstring"/health"
supersetNode.startupProbe.httpGet.portstring"http"
supersetNode.startupProbe.initialDelaySecondsint15
supersetNode.startupProbe.periodSecondsint5
supersetNode.startupProbe.successThresholdint1
supersetNode.startupProbe.timeoutSecondsint1
supersetNode.strategyobject{}
supersetNode.terminationGracePeriodSecondsstringnilPod termination grace period (seconds). Set greater than GUNICORN_TIMEOUT so in-flight requests can drain before SIGKILL
supersetNode.topologySpreadConstraintslist[]TopologySpreadConstrains to be added to supersetNode deployments
supersetWebsockets.affinityobject{}Affinity to be added to supersetWebsockets deployment
supersetWebsockets.commandlist[]
supersetWebsockets.configobjectsee values.yamlThe config.json to pass to the server, see https://github.com/apache/superset/tree/master/superset-websocket Note that the configuration can also read from environment variables (which will have priority), see https://github.com/apache/superset/blob/master/superset-websocket/src/config.ts for a list of supported variables
supersetWebsockets.configAnnotationsobject{}Annotations to be added to the secret which contains config.json
supersetWebsockets.containerSecurityContextobject{}
supersetWebsockets.deploymentAdditionalPodSpecobject{}Custom pod spec to be added to supersetWebsockets deployment
supersetWebsockets.deploymentAnnotationsobject{}
supersetWebsockets.enabledboolfalseThis is only required if you intend to use GLOBAL_ASYNC_QUERIES in ws mode see https://superset.apache.org/docs/contributing/misc#async-chart-queries
supersetWebsockets.extraContainerslist[]Launch additional containers into supersetWebsockets pods
supersetWebsockets.extraInitContainerslist[]Extra init containers appended after supersetWebsockets initContainers
supersetWebsockets.image.pullPolicystring"IfNotPresent"
supersetWebsockets.image.repositorystring"oneacrefund/superset-websocket"There is no official image (yet), this one is community-supported
supersetWebsockets.image.tagstring"latest"
supersetWebsockets.ingress.pathstring"/ws"
supersetWebsockets.ingress.pathTypestring"Prefix"
supersetWebsockets.initContainerslista container waiting for redisList of initContainers
supersetWebsockets.livenessProbe.failureThresholdint3
supersetWebsockets.livenessProbe.httpGet.pathstring"/health"
supersetWebsockets.livenessProbe.httpGet.portstring"ws"
supersetWebsockets.livenessProbe.initialDelaySecondsint5
supersetWebsockets.livenessProbe.periodSecondsint5
supersetWebsockets.livenessProbe.successThresholdint1
supersetWebsockets.livenessProbe.timeoutSecondsint1
supersetWebsockets.podAnnotationsobject{}
supersetWebsockets.podDisruptionBudgetobject{"enabled":false,"maxUnavailable":1,"minAvailable":1}Sets the pod disruption budget for supersetWebsockets pods
supersetWebsockets.podDisruptionBudget.enabledboolfalseWhether the pod disruption budget should be created
supersetWebsockets.podDisruptionBudget.maxUnavailableint1If set, minAvailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetWebsockets.podDisruptionBudget.minAvailableint1If set, maxUnavailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetWebsockets.podLabelsobject{}
supersetWebsockets.podSecurityContextobject{}
supersetWebsockets.priorityClassNamestringnilSet priorityClassName for supersetWebsockets pods
supersetWebsockets.readinessProbe.failureThresholdint3
supersetWebsockets.readinessProbe.httpGet.pathstring"/health"
supersetWebsockets.readinessProbe.httpGet.portstring"ws"
supersetWebsockets.readinessProbe.initialDelaySecondsint5
supersetWebsockets.readinessProbe.periodSecondsint5
supersetWebsockets.readinessProbe.successThresholdint1
supersetWebsockets.readinessProbe.timeoutSecondsint1
supersetWebsockets.replicaCountint1
supersetWebsockets.resourcesobject{}
supersetWebsockets.service.annotationsobject{}
supersetWebsockets.service.loadBalancerIPstringnil
supersetWebsockets.service.nodePort.httpint"nil"
supersetWebsockets.service.portint8080
supersetWebsockets.service.typestring"ClusterIP"
supersetWebsockets.startupProbe.failureThresholdint60
supersetWebsockets.startupProbe.httpGet.pathstring"/health"
supersetWebsockets.startupProbe.httpGet.portstring"ws"
supersetWebsockets.startupProbe.initialDelaySecondsint5
supersetWebsockets.startupProbe.periodSecondsint5
supersetWebsockets.startupProbe.successThresholdint1
supersetWebsockets.startupProbe.timeoutSecondsint1
supersetWebsockets.strategyobject{}
supersetWebsockets.topologySpreadConstraintslist[]TopologySpreadConstrains to be added to supersetWebsockets deployments
supersetWorker.affinityobject{}Affinity to be added to supersetWorker deployment
supersetWorker.autoscaling.enabledboolfalse
supersetWorker.autoscaling.maxReplicasint100
supersetWorker.autoscaling.minReplicasint1
supersetWorker.autoscaling.targetCPUUtilizationPercentageint80
supersetWorker.commandlista celery worker commandWorker startup command
supersetWorker.containerSecurityContextobject{}
supersetWorker.deploymentAdditionalPodSpecobject{}Custom pod spec to be added to supersetWorker deployment
supersetWorker.deploymentAnnotationsobject{}Annotations to be added to supersetWorker deployment
supersetWorker.deploymentLabelsobject{}Labels to be added to supersetWorker deployment
supersetWorker.extraContainerslist[]Launch additional containers into supersetWorker pod
supersetWorker.extraInitContainerslist[]Extra init containers appended after supersetWorker initContainers
supersetWorker.forceReloadboolfalseIf true, forces deployment to reload on each upgrade
supersetWorker.healthCheckobject{"enabled":false,"livenessFile":"/tmp/celery_worker_alive","livenessHeartbeatInterval":10,"readinessFile":"/tmp/celery_worker_ready"}Celery worker file-based health check (worker writes readiness/liveness files via signals; point supersetWorker.readinessProbe/livenessProbe at these files to use them)
supersetWorker.healthCheck.enabledboolfalseEnable the file-based Celery worker health check
supersetWorker.healthCheck.livenessFilestring"/tmp/celery_worker_alive"Liveness file (touched periodically by a heartbeat thread)
supersetWorker.healthCheck.livenessHeartbeatIntervalint10Seconds between liveness heartbeats
supersetWorker.healthCheck.readinessFilestring"/tmp/celery_worker_ready"Readiness file (created when the worker is ready, removed on shutdown)
supersetWorker.initContainerslista container waiting for postgres and redisInit container
supersetWorker.lifecycleobject{}Container lifecycle hooks for the worker pod
supersetWorker.livenessProbe.exec.commandlista celery inspect ping commandLiveness probe command
supersetWorker.livenessProbe.failureThresholdint3
supersetWorker.livenessProbe.initialDelaySecondsint120
supersetWorker.livenessProbe.periodSecondsint60
supersetWorker.livenessProbe.successThresholdint1
supersetWorker.livenessProbe.timeoutSecondsint60
supersetWorker.podAnnotationsobject{}Annotations to be added to supersetWorker pods
supersetWorker.podDisruptionBudgetobject{"enabled":false,"maxUnavailable":1,"minAvailable":1}Sets the pod disruption budget for supersetWorker pods
supersetWorker.podDisruptionBudget.enabledboolfalseWhether the pod disruption budget should be created
supersetWorker.podDisruptionBudget.maxUnavailableint1If set, minAvailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetWorker.podDisruptionBudget.minAvailableint1If set, maxUnavailable must not be set - see https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget
supersetWorker.podLabelsobject{}Labels to be added to supersetWorker pods
supersetWorker.podSecurityContextobject{}
supersetWorker.priorityClassNamestringnilSet priorityClassName for supersetWorker pods
supersetWorker.readinessProbeobject{}No startup/readiness probes by default since we don‘t really care about its startup time (it doesn’t serve traffic)
supersetWorker.replicas.enabledbooltrue
supersetWorker.replicas.replicaCountint1
supersetWorker.resourcesobject{}Resource settings for the supersetWorker pods - these settings overwrite might existing values from the global resources object defined above.
supersetWorker.startupProbeobject{}No startup/readiness probes by default since we don‘t really care about its startup time (it doesn’t serve traffic)
supersetWorker.strategyobject{}
supersetWorker.terminationGracePeriodSecondsstringnilPod termination grace period (seconds) for the worker pod so in-flight tasks can drain before SIGKILL
supersetWorker.topologySpreadConstraintslist[]TopologySpreadConstrains to be added to supersetWorker deployments
tolerationslist[]
topologySpreadConstraintslist[]TopologySpreadConstrains to be added to all deployments

Versioning

This chart follows semantic versioning. The chart version is independent of the Superset version. The chart version is incremented when there are changes to the chart itself, such as new features, bug fixes, or changes in configuration options. In addition to semver, the chart version is also incremented in the minor version when there is a breaking change in the Superset appVersion itself. When there are non-breaking changes in the Superset appVersion, the chart version is incremented in the patch version.