Quick Comparison
Dev-Fast
~120s - Daily development
Cilium
~200s - CNI testing
Full
~250s - Full-stack validation
Feature Matrix
| Feature | Dev-Fast | Cilium | Full |
|---|---|---|---|
| CNI | kindnetd | Cilium + Hubble | Cilium + Hubble |
| Nodes | control-plane × 1 | control-plane + worker × 1 | control-plane + worker × 2 |
| Istio | ❌ None | ❌ None | ✅ Ambient mode |
| ArgoCD | ❌ None | ❌ None | ✅ GitOps |
| Warm Cluster | ✅ Hash-based | ❌ Not supported | ✅ Hash-based |
| Cold Start | ~120s | ~200s | ~250s |
| Warm Start | Instant / 10-15s | N/A | Instant / reapply |
| Command | bootstrap | bootstrap --full | full-bootstrap |
Timing Breakdown
Dev-Fast Mode (~120s)
Phase Timing (Apple M4, 24GB RAM)
Phase Timing (Apple M4, 24GB RAM)
| Phase | Duration | Description |
|---|---|---|
| phase1-prep | ~12s | kind + manifests + OTel + images (parallel) |
| phase2-load | ~37s | Load images into kind |
| phase3-deploy | ~21s | Deploy services (parallel) |
| phase4-wait | ~52s | Wait for pods |
| TOTAL | ~122s | 38% faster than Cilium |
Cilium Mode (~200s)
Adds Cilium installation overhead but provides network observability.
Full Mode (~250s)
Adds Istio + ArgoCD + second worker node. Most complete but slowest.
Warm Start Comparison
- Dev-Fast
- Cilium
- Full
Hash-Based Caching
Storage:.bootstrap-state/Scenarios:- ✅ Instant - No changes (hash match)
- ⚡ 10-15s - Manifest changes only
- 🔄 ~120s - Cluster config changes
Network Stack
Dev-Fast
kindnetd
- Default CNI
- No overhead
- Basic networking
- Fastest startup
Cilium
Cilium + Hubble
- eBPF-based CNI
- Network policies
- Traffic observability
- Hubble UI included
Full
Cilium + Istio
- Cilium CNI
- Istio ambient mode
- mTLS encryption
- Service mesh
Use Case Guide
When to Use Dev-Fast
Daily Development
Daily Development
- Rapid iteration cycles
- Frequent restarts
- Application development
- Local testing
Resource Constraints
Resource Constraints
- Limited RAM/CPU
- Single control-plane
- Minimal overhead
- Laptop development
Quick Testing
Quick Testing
- Fast feedback loops
- CI/CD pipelines
- Unit/integration tests
- Demo environments
When to Use Cilium
CNI Testing
CNI Testing
- Network policy validation
- eBPF feature testing
- CNI performance testing
- Cilium-specific features
Network Debugging
Network Debugging
- Traffic flow analysis
- Service dependency mapping
- Network bottlenecks
- Policy troubleshooting
Middle Ground
Middle Ground
- More realistic than dev-fast
- Faster than full
- No service mesh complexity
- Network observability needed
When to Use Full
Full-Stack Validation
Full-Stack Validation
- Production parity testing
- Integration testing
- End-to-end validation
- Release candidates
Service Mesh Testing
Service Mesh Testing
- Istio policy validation
- mTLS testing
- Traffic management
- Security features
GitOps Workflows
GitOps Workflows
- ArgoCD deployment testing
- Multi-environment sync
- Rollback scenarios
- CD pipeline validation
Multi-Node Testing
Multi-Node Testing
- Distributed workloads
- Node affinity/anti-affinity
- Pod spreading
- HA validation
Command Reference
Dev-Fast
Cilium
Full
Exposed Services Comparison
| Service | Dev-Fast | Cilium | Full |
|---|---|---|---|
| ArgoCD | ❌ | ❌ | ✅ :30080 |
| Grafana | ✅ :30300 | ✅ :30300 | ✅ :30300 |
| Prometheus | ✅ :30090 | ✅ :30090 | ✅ :30090 |
| Alertmanager | ✅ :30093 | ✅ :30093 | ✅ :30093 |
| Hubble UI | ❌ | ✅ :31235 | ✅ :31235 |
| Traefik | ✅ :30081 | ✅ :30081 | ✅ :30081 |
Resource Usage
Dev-Fast
Minimal
- 1 node
- kindnetd CNI
- No service mesh
- ~4-6GB RAM
Cilium
Moderate
- 2 nodes
- Cilium + Hubble
- No service mesh
- ~6-8GB RAM
Full
High
- 3 nodes
- Cilium + Istio
- ArgoCD
- ~8-12GB RAM
Decision Tree
Migration Between Modes
You can switch between modes by destroying and recreating:Performance Tips
Dev-Fast Optimization
Dev-Fast Optimization
- Use warm cluster support (don’t use
--cleanunless necessary) - R2 OTel cache enabled via
devenv.nix - Keep cluster running with
cluster-stopinstead ofcluster-down
Cilium Optimization
Cilium Optimization
- Pre-pull images before bootstrap
- Use SSD for Docker storage
- Increase Docker resource limits
Full Optimization
Full Optimization
- Use warm cluster support
- Pre-generate manifests
- Keep cluster running between tests
- Use
--cleanonly when needed
Common Operations
Cluster Management
| Command | Effect | When to Use |
|---|---|---|
cluster-stop | Pause containers (state preserved) | Before reboot, save resources |
cluster-start | Resume containers | Continue work |
cluster-down | Delete cluster completely | Reset environment |
Benchmarking
logs/benchmark/ with phase timing and resource usage.
Next Steps
Dev-Fast Guide
Learn about dev-fast mode
Cilium Guide
Explore Cilium mode
Full Guide
Discover full mode