kombify Cloud follows a simulation-first philosophy: test your infrastructure configurations in a safe, isolated environment before deploying to real hardware.
Why simulate?
Catch errors early Identify configuration issues before they affect production
Zero risk Test destructive changes without impacting real systems
Fast iteration Spin up and tear down environments in seconds
Cost effective No cloud costs for testing and development
How kombify Simulate works
kombify Simulate creates lightweight Docker-based “VMs” that simulate your infrastructure:
┌─────────────────────────────────────────────────────────────┐
│ kombify Simulate Engine │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────────────────┐ ┌─────────────┐ │
│ │ REST API │───▶│ Docker │ │
│ │ :5270 │ │ Engine │ │
│ └─────────────────────┘ └─────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────┤
│ │ Port Range: 30000-39999 (SSH to containers) │
│ └─────────────────────────────────────────────────────────┘
└─────────────────────────────────────────────────────────────┘
Simulation nodes
Each simulated node is a Docker container with:
Real SSH access on ports 30000-39999
Persistent storage via Docker volumes
Network isolation with custom Docker networks
Resource limits to simulate different hardware tiers
Workflow
Create simulation
Define your infrastructure in kombify Simulate: curl -X POST http://localhost:5270/api/v1/simulations \
-H "Content-Type: application/json" \
-d '{
"name": "my-homelab-test",
"nodes": [
{"name": "vps-web", "location": "vps"},
{"name": "local-db", "location": "local"}
]
}'
Start nodes
curl -X POST http://localhost:5270/api/v1/simulations/{id}/start
kombify Simulate creates Docker containers and assigns SSH ports.
Test configuration
SSH into simulated nodes and test your setup: # Get SSH details
curl http://localhost:5270/api/v1/nodes/{id}/ssh
# SSH into node
ssh -p 30001 root@localhost
# Password: kombisim
Deploy with kombify TechStack
Once validated, deploy to real infrastructure: # Export simulation config
curl http://localhost:5270/api/v1/simulations/{id}/export > kombination.yaml
# Deploy to real hardware
kombistack apply kombination.yaml
Pre-built templates
kombify Simulate includes 6 templates for common scenarios:
Homelab basic
Homelab advanced
Hybrid setup
HA setup
2 nodes: Web server + Database{
"name" : "homelab-basic" ,
"category" : "homelab" ,
"nodes" : [
{ "name" : "web-server" , "location" : "local" },
{ "name" : "database" , "location" : "local" }
]
}
Use case: Simple web application with database5 nodes: Proxy, apps, database, storage, monitoring{
"name" : "homelab-advanced" ,
"category" : "homelab" ,
"nodes" : [
{ "name" : "proxy" , "location" : "local" },
{ "name" : "app-1" , "location" : "local" },
{ "name" : "app-2" , "location" : "local" },
{ "name" : "database" , "location" : "local" },
{ "name" : "storage" , "location" : "local" }
]
}
Use case: Production-grade homelab5 nodes: VPS + Local combined{
"name" : "hybrid-setup" ,
"category" : "homelab" ,
"nodes" : [
{ "name" : "vps-web" , "location" : "vps" },
{ "name" : "vps-api" , "location" : "vps" },
{ "name" : "local-db" , "location" : "local" },
{ "name" : "local-storage" , "location" : "local" },
{ "name" : "local-backup" , "location" : "local" }
]
}
Use case: Public services on VPS, data at home5 nodes: Load balancer + HA cluster{
"name" : "ha-setup" ,
"category" : "homelab" ,
"nodes" : [
{ "name" : "lb-1" , "location" : "local" },
{ "name" : "app-1" , "location" : "local" },
{ "name" : "app-2" , "location" : "local" },
{ "name" : "db-primary" , "location" : "local" },
{ "name" : "db-replica" , "location" : "local" }
]
}
Use case: High availability testing
Integration with kombify TechStack
kombify TechStack can automatically use kombify Simulate for validation:
simulation :
enabled : true
endpoint : "http://localhost:5270"
auto_validate : true
validation :
simulate_before_deploy : true
simulation_timeout : 300s
Automatic simulation workflow
When simulate_before_deploy is enabled:
Create simulation
kombify TechStack sends your kombination.yaml to kombify Simulate
Provision simulated nodes
kombify Simulate creates Docker containers matching your spec
Run pre-checks
kombify TechStack validates:
SSH connectivity
Required packages
Network configuration
Service dependencies
Deploy to simulation
Full deployment to simulated infrastructure
Validation results
If successful, proceed to real deployment If failed, return errors and logs
Testing scenarios
1. Service dependencies
Test that services start in the correct order:
services :
- name : postgres
type : database
- name : web-app
type : application
depends_on : [ postgres ]
Simulation validates:
PostgreSQL starts first
Web app waits for database
Connection strings are correct
2. Network configuration
Test firewall rules and port mappings:
services :
- name : traefik
firewall :
allow :
- port : 80
- port : 443
Simulation validates:
Ports are accessible
Firewall rules are applied
SSL certificates work
3. Resource constraints
Test with limited resources:
nodes :
- name : low-spec-server
resources :
cpu : 2
memory : 4GB
Simulation validates:
Services run within constraints
No OOM errors
Performance is acceptable
Best practices
Always simulate complex changes
Before making significant infrastructure changes:
Create a simulation matching your current setup
Apply the changes to the simulation
Validate everything works
Deploy to production
Use templates as starting points
Start with a pre-built template and customize: # Apply template
curl -X POST http://localhost:5270/api/v1/templates/homelab-basic/apply \
-d '{"simulation_name": "my-test", "auto_start": true}'
# Customize nodes
curl -X PATCH http://localhost:5270/api/v1/nodes/{id} \
-d '{"resources": {"memory": "8GB"}}'
Delete simulations after testing to free resources: curl -X DELETE http://localhost:5270/api/v1/simulations/{id}
Save working configurations for reuse: curl http://localhost:5270/api/v1/simulations/{id}/export > validated-config.yaml
Limitations
kombify Simulate is for testing and validation , not production workloads.
What kombify Simulate simulates:
✅ Service deployment and configuration
✅ Network connectivity and firewall rules
✅ SSH access and authentication
✅ Basic resource constraints
What kombify Simulate does NOT simulate:
❌ Real hardware performance
❌ Actual network latency
❌ Physical hardware failures
❌ Production-scale load
Next steps
kombify Simulate quickstart Get started with simulation
kombify Simulate templates Explore pre-built templates
kombify Simulate API reference Full API documentation
kombify TechStack integration Configure automatic simulation