Skip to main content
This page walks through a default install with a single engine.
Engines need object storage configured under customEngineConfig.storage. Without it, the engine pod never becomes Ready. Configure it first (Object Storage).
The commands below assume a my-values.yaml that sets customEngineConfig.storage.

Install

Install the chart into the firebolt namespace, creating it if it does not exist:
helm install firebolt ./helm \
  --namespace firebolt --create-namespace \
  -f my-values.yaml

Verify

List the workloads the release created:
kubectl -n firebolt get statefulset,deployment
Expect firebolt-engine-default-node-0, firebolt-metadata-pg, firebolt-gateway, and firebolt-metadata-service to reach READY.

Query

Forward the gateway Service to a local port and send a SQL query through it:
# Forward the gateway Service to localhost:8080 in the background.
kubectl -n firebolt port-forward svc/firebolt-gateway 8080:80 &

# Send `SELECT 1` to the gateway. The X-Firebolt-Engine header selects the engine.
curl -s http://localhost:8080/ \
  -H "X-Firebolt-Engine: default" \
  -H "Content-Type: text/plain" \
  --data "SELECT 1"
The gateway routes by the X-Firebolt-Engine header.

Test and tear down

Run the chart’s smoke tests, then uninstall everything:
make test       # run helm test against the release (engine ready, gateway ready, smoke SQL)
make cleanup    # uninstall the release, delete its PVCs, and delete the namespace