ZeptoDB Deployment Guides
Guides for deploying ZeptoDB in production environments.
Documentation
Section titled “Documentation”1. DOCKER.md — Getting Started
Section titled “1. DOCKER.md — Getting Started”Docker Deployment Guide
- Quick start, all binaries, running different roles
- Enabled/disabled features comparison
- Bare metal vs Docker performance comparison
- Docker performance tuning (CPU pinning, HugePages, NUMA)
- Multi-node cluster with Docker Compose
2. PRODUCTION_DEPLOYMENT.md — Required Reading
Section titled “2. PRODUCTION_DEPLOYMENT.md — Required Reading”Bare Metal vs Cloud Selection Guide
- Deployment option selection by workload
- Bare metal deployment (HFT Edition)
- Cloud-native deployment (Analytics Edition)
- Comparison table and migration paths
Bare Metal Optimization Detailed Guide
- CPU Pinning & isolation (
isolcpus,nohz_full, IRQ affinity) - NUMA optimization (per-node binding,
numastatverification) - Hugepages (2MB/1GB sizing, allocation, verification)
- C-state & CPU frequency control
- Kernel sysctl parameters
- Build optimization (tcmalloc, LTO, PGO)
- Network tuning (busy_poll, buffer sizes)
- Benchmarking & profiling methods
Kubernetes Operations Guide (TODO)
- Helm Chart usage
- Rolling updates
- Monitoring configuration
- Troubleshooting
Zero-Downtime Upgrade Procedures
- Standard / Config-only / Canary / Cluster-mode upgrades
- Rollback procedures
- Pre-upgrade checklist
Quick Start
Section titled “Quick Start”Bare Metal (HFT/Real-time)
Section titled “Bare Metal (HFT/Real-time)”# 1. Run tuning scriptcd zeptodbsudo ./deploy/scripts/tune_bare_metal.sh
# 2. Buildmkdir build && cd buildcmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release -DAPEX_BARE_METAL=ONninja -j$(nproc)
# 3. Run (NUMA-aware)sudo numactl --cpunodebind=0 --membind=0 \ taskset -c 0-3 \ ./zepto_server --port 8123 --hugepagesCloud (Quant/Analytics)
Section titled “Cloud (Quant/Analytics)”# 1. Build Docker imagedocker build -t zeptodb:latest .
# 2. Deploy via Helm (recommended)helm install zeptodb ./deploy/helm/zeptodb -n zeptodb --create-namespace
# 3. Verifykubectl get pods -n zeptodbcurl -s http://<LB>:8123/health
# Upgradehelm upgrade zeptodb ./deploy/helm/zeptodb -n zeptodb --set image.tag=1.1.0 --waitDeployment Option Selection
Section titled “Deployment Option Selection”| Requirement | Deployment |
|---|---|
| Latency < 100us | Bare metal |
| Latency < 1ms | Bare metal recommended |
| Latency > 1ms | Cloud OK |
| Auto-scaling needed | Cloud |
| Fixed workload | Bare metal |
| Cost optimization priority | Cloud (spot) |
Support
Section titled “Support”- Enterprise support: enterprise@zeptodb.com
- Community: https://discord.gg/zeptodb
- Documentation: https://docs.zeptodb.com