balloon Helm Chart

Prerequisites Details

  • Kubernetes 1.9+
  • PV support on the underlying infrastructure

Chart Details

This chart implements balloon with all necessary and optional features as sub charts. This charts includes the following sub charts:

  • balloon server
  • balloon server proxy
  • balloon web ui
  • balloon jobs
  • browserless-chrome

The following sub charts get installed as dependencies from helm stable if enabled (which is the default):

balloon sub charts do not require persistent volumes however the balloon server is dependent on MongoDB and therefore a pv infrastructure is required which also applies to the optional elasticsearch integration.

Installing the Chart

To install the chart with the release name my-release:

helm repo add balloon-stable https://gyselroth.github.io/balloon-helm/stable
helm install balloon-stable/balloon --name my-release --namespace mynamespace

Example deployment with ingress/tls enabled and 200GB MongoDB/Elasticsearch storage:

helm install balloon-stable/balloon --name my-release --namespace mynamespace <br/>
    --set balloon-proxy.ingress.enabled=true <br/>
    --set balloon-web.ingress.enabled=true <br/>
    --set balloon-proxy.ingress.host=balloon.local <br/>
    --set balloon-web.ingress.host=balloon.local <br/>
    --set balloon-web.ingress.tls[0].secretName=tls-balloon.local <br/>
    --set balloon-proxy.ingress.tls[0].secretName=tls-balloon.local <br/>
    --set balloon.url=https://balloon.local <br/>
    --set mongodb.persistentVolume.size=200Gi <br/>
    --set elasticsearch.data.persistence.size=75Gi <br/>
    --set elasticsearch.data.replicas=3

The balloon should now be installed and available. You may authenticate using the default admin user:

Username: admin
Password: admin

Configuration

The following table lists the configurable parameters of the balloon sub charts and their default values.

(Note: Only the configuration for the balloon server sub chart is documented so far)

Parameter Description Default
balloon.replicaCount Number of replicas in the replica set 2
balloon.fullnameOverrride Override deployment name ""
balloon.nameOverride Override deployment name ""
balloon.url The URL of balloon under which the server is reachable from outside https://balloon.local
balloon.image.repository Image repository and name gyselroth/balloon
balloon.image.tag Image tag for the install container 2.6.7
balloon.image.pullPolicy Image pull policy for the init container that establishes the replica set IfNotPresent
balloon.service.type Service Type ClusterIP
balloon.service.port Service Port (balloon < v3 is executed using PHP-FPM) 9000
balloon.extraLabels Extra labels {}
balloon.extraVars Extra env variables {}
balloon.nodeSelector Custom node selector ""
balloon.tolerations Tolerations []
balloon.resources Pod resource requests and limits {}
balloon.affinity Affinitiy {}

Installing pre releases

Besides the stable repository there is a repository which holds unstable balloon charts. Unstable charts also include all balloon pre-releases (Usually alpha and beta versions).

To install an unstable chart with the release name my-release:

helm repo add balloon-unstable https://gyselroth.github.io/balloon-helm/unstable
helm install balloon-unstable/balloon --name my-release --namespace mynamespace

Release new charts

Upgrade the sub charts first which have changes.

Pack chart and update dependencies:

helm package -d stable stable/balloon

Update repository index:

helm repo index stable/