Deploy QuestDB on Kubernetes: Fast Time-Series Database

Deploy QuestDB on Kubernetes to process high-throughput time-series data with SQL support. This template provisions a single-node QuestDB instance, persistent storage, internal network services, and Ingress routing for monitoring and analytics workloads.
| Component | Type | Port | Role |
|---|---|---|---|
| questdb-monitoring | Namespace | N/A | Isolates QuestDB resources |
| questdb-data | PersistentVolumeClaim | N/A | Stores persistent time-series data |
| questdb | Service | 9000, 8812, 9009 | Exposes HTTP, PGWire, and ILP endpoints |
| questdb | Deployment | 9000, 8812, 9009 | Runs single-replica QuestDB container |
| questdb-config | ConfigMap | N/A | Holds custom environment configuration |
| questdb-ingress | Ingress | 80 | Routes external traffic to Web Console |
The Ingress controller routes HTTP traffic from external clients to port 9000 of the ClusterIP Service. The Service forwards requests to the QuestDB Deployment. Applications write data through port 9009 using InfluxDB Line Protocol or query through port 8812 via PostgreSQL wire protocol. The Deployment mounts the PersistentVolumeClaim to /var/lib/questdb for state persistence, and environment variables inject from the ConfigMap.
questdb.local to your Ingress IP address.questdb-monitoring namespace.questdb.local to your designated domain name.[http://questdb.local](http://questdb.local) to access the QuestDB Web Console.curl -I [http://questdb.local/ping](http://questdb.local/ping).pg_isready -h questdb.local -p 8812.This template configures a complete QuestDB deployment on Kubernetes, including persistent volume storage, multi-protocol Service endpoints, and Ingress routing for real-time time-series analytics.