Overview
Deploy QuestDB on Google Cloud Platform using Compute Engine VMs, Cloud Run for serverless containers, or Google Kubernetes Engine (GKE) for orchestrated deployments.Compute Engine Deployment
Quick Launch with Docker
- Create a Compute Engine instance:
- Access the web console:
Machine Type Recommendations
| Machine Type | vCPUs | Memory | Use Case |
|---|---|---|---|
| e2-standard-2 | 2 | 8 GB | Development/Testing |
| n2-standard-4 | 4 | 16 GB | Small Production |
| n2-standard-8 | 8 | 32 GB | Medium Production |
| n2-standard-16 | 16 | 64 GB | Large Production |
| n2-highmem-8 | 8 | 64 GB | Memory-Intensive |
| c2-standard-16 | 16 | 64 GB | CPU-Intensive |
Persistent Disk Configuration
Create and attach a persistent disk:Firewall Rules
Create firewall rules to allow traffic:Startup Script
Create a comprehensive startup script:Managed Instance Groups (Auto-scaling)
Create instance template:Cloud Run Deployment
Deploy to Cloud Run
Google Kubernetes Engine (GKE) Deployment
Create GKE Cluster
Deploy with Helm
Custom values.yaml for GKE
GKE Persistent Disk StorageClass
Load Balancing
HTTP(S) Load Balancer
Create load balancer for web console:Network Load Balancer (TCP)
For PostgreSQL and ILP protocols:Cloud Storage Integration
Backup to Cloud Storage (Enterprise)
Configure GCS backup inserver.conf:
Service Account for GCS Access
Monitoring and Logging
Cloud Monitoring
Enable monitoring:Cloud Logging
View logs:Custom Metrics
Create custom dashboard in Cloud Monitoring:- CPU utilization
- Memory usage
- Disk I/O
- Network throughput
- QuestDB query latency
- Ingestion rate
Security Best Practices
VPC Configuration
Identity and Access Management
Encryption
- Enable encryption at rest (default for persistent disks)
- Use customer-managed encryption keys (CMEK)
- Enable TLS for data in transit (Enterprise)
Cost Optimization
Committed Use Discounts
Purchase 1-year or 3-year commitments for up to 57% savings:Preemptible VMs
Use preemptible instances for development/testing (up to 80% savings):Persistent Disk Optimization
- Use standard persistent disks for cold data
- Use SSD persistent disks for hot data
- Enable disk snapshots for backups
- Delete unused disks
Troubleshooting
Check Instance Status
SSH into Instance
View Docker Logs
Check Disk Usage
GKE Troubleshooting
Next Steps
- Explore AWS deployment options
- Configure Kubernetes best practices
- Set up Docker for local development