GlassFlow CLI
The GlassFlow CLI provides a quick way to set up a local development environment for exploring and testing GlassFlow - an open-source ETL tool for real-time data processing from Kafka to ClickHouse.
- The GlassFlow CLI is designed for local testing, demos, and exploration only.
- For production deployments, use the official GlassFlow Helm charts.
- The CLI creates a local Kubernetes cluster using Kind and deploys all necessary components.
Prerequisites
Before installing the GlassFlow CLI, ensure you have:
- Docker (or compatible runtime like Docker Desktop, OrbStack, Colima, or Podman)
- Helm — install via Helm docs or run:
brew install helm - kubectl (installed automatically via Homebrew, or install manually)
Install CLI
Verify installation
glassflow versionYou should see the version number of the installed GlassFlow CLI.
Quick Start
Step 1: Bring up the services
Run glassflow up to create the cluster and install the core services:
glassflow upThis will:
- Create a Kind cluster (if needed)
- Install GlassFlow ETL (glassflow namespace) via Helm
- Install Kafka (kafka namespace) and ClickHouse (clickhouse namespace) via Helm
- Wait for all services to be ready (up to ~25 minutes)
- Configure port forwarding for UI and API access
Access GlassFlow services (available after Step 1; ports may vary if alternatives were chosen):
- GlassFlow UI: http://localhost:30080
- GlassFlow API: http://localhost:30180
- ClickHouse HTTP: http://localhost:30090
Step 2: Set up the demo (optional)
To create a demo pipeline, Kafka topic, ClickHouse table, and a data producer that sends sample events:
glassflow setup-demoThis will create a pipeline, create a Kafka topic, create a ClickHouse table, and start a data producer.
After running glassflow setup-demo, a pipeline ingests events from the demo_events Kafka topic into the demo_events table in ClickHouse. You can view this pipeline in the GlassFlow UI.
Stop the environment
When you’re done testing, stop and clean up the local environment:
glassflow downThis will stop all running services, remove the Kind cluster, and clean up all resources.
What gets installed
After glassflow up:
- Kind: Local Kubernetes cluster for running all services
- Kafka: Message broker (kafka namespace, Bitnami Helm chart)
- ClickHouse: Columnar database (clickhouse namespace, Bitnami Helm chart)
- GlassFlow ETL: Real-time streaming ETL service (glassflow namespace, GlassFlow Helm chart)
After glassflow setup-demo (optional):
- A demo pipeline, Kafka topic, ClickHouse table, and a data producer that sends sample events