Post

Superset

How to install Apache Superset on Kubernetes using Helm, including custom values.yaml configuration for init scripts.

Superset

Install Superset using Helm with the service type set to NodePort so it is accessible from outside the cluster.

1
helm install superset --set service.type=NodePort stable/superset

values.yaml

The initFile section in values.yaml controls how Superset initializes. It supports both development and production modes, with the production mode using gunicorn as the WSGI server.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
initFile: |-
  if [ "$1" == "development-mode" ]; then
    /usr/local/bin/superset-init --username admin --firstname admin --lastname user --email admin@fab.org --password admin
    superset run
  elif [ "$1" == "production-mode" ]; then

    /usr/local/bin/superset-init --username admin --firstname admin --lastname user --email admin@fab.org --password Start123
    superset db upgrade
    superset init
    gunicorn \
        -w 10 \
        -k gevent \
        --timeout 300 \
        -b  0.0.0.0:8088 \
        --limit-request-line 0 \
        --limit-request-field_size 0 \
        "superset.app:create_app()"
  else
    echo "You need to specify which mode to start in by setting production-mode"
    echo "or development-mode in extraArguments."
    exit 1
  fi

...

extraArguments:
- production-mode

This post is licensed under CC BY 4.0 by the author.