Creating VPS Instances
Step-by-step guide to creating and configuring your first VPS instance.
Prerequisites
Before creating a VPS:
- ✅ Have an active project
- ✅ Add a payment method to your project
- ✅ Have at least one SSH key configured
- ✅ Check account limits (10 VPS by default)
Step-by-Step Guide
Step 1: Navigate to VPS Section
- Log in to your DanubeData dashboard
- Ensure you're in the correct project
- Click Pods in the main navigation
Step 2: Start Creation
- Click the Create Pod button
- You'll see the VPS creation form
Step 3: Choose Operating System
Select your preferred OS:
Ubuntu (Recommended for most users)
- 24.04 LTS (Latest, best support)
- 22.04 LTS (Stable, long-term support)
- 20.04 LTS (Older, still supported)
Debian
- 12 (Bookworm) - Latest stable
- 11 (Bullseye) - Previous stable
- 10 (Buster) - Older
CentOS
- 8 Stream - Latest
- 7 - Legacy support
Fedora
- 39 - Latest features
- 38 - Stable
Choosing an OS
For Web Applications:
- Ubuntu 22.04 or 24.04 LTS
- Wide software support
- Large community
For Stability:
- Debian 11 or 12
- Rock-solid reliability
- Security focus
For Enterprise:
- CentOS 8 Stream
- RHEL compatibility
- Corporate environment
For Latest Features:
- Fedora 39
- Cutting edge packages
- Short support cycle
Step 4: Select Resource Profile
Choose based on your workload:
| Profile | vCPU | RAM | Storage | Best For | Price/hour |
|---|---|---|---|---|---|
| Micro | 1 | 1 GB | 25 GB | Testing, low traffic | $0.007 |
| Small | 2 | 2 GB | 50 GB | Small apps, dev | $0.015 |
| Medium | 4 | 4 GB | 80 GB | Production apps | $0.030 |
| Large | 8 | 8 GB | 160 GB | High traffic sites | $0.060 |
| XL | 16 | 16 GB | 320 GB | Heavy workloads | $0.120 |
Profile Selection Tips:
Micro - Good for:
- Development/testing
- Learning
- Personal projects
- Low-traffic blogs
Small - Good for:
- Small production sites
- API servers
- Development environments
- Small databases (non-critical)
Medium - Good for:
- Standard production workloads
- E-commerce sites
- SaaS applications
- Multiple services
Large - Good for:
- High-traffic applications
- Data processing
- Heavy compute tasks
- Large databases
XL - Good for:
- Very high traffic
- Big data processing
- Machine learning
- Resource-intensive apps
Step 5: Name Your Instance
Enter a descriptive name:
Good Names:
prod-web-01staging-api-serverdev-frontendwordpress-blog
Poor Names:
server1testvps
Naming Convention Tips:
[environment]-[purpose]-[number]
prod-web-01
staging-api-02
dev-database-01
Step 6: Choose Region
Select a data center location:
- EU-Central (Frankfurt) - Europe, Middle East, Africa
- US-East (New York) - Americas
- Asia-Pacific (Singapore) - Asia, Oceania
Selection Criteria:
- Closest to your users (lowest latency)
- Data sovereignty requirements
- Compliance regulations
Latency Matters:
- 10ms difference = 10ms faster page load
- Choose nearest region for best UX
- Use CDN for global applications
Step 7: Add SSH Keys
Select existing SSH key(s):
- Check boxes for keys to add
- Can select multiple keys
- Keys allow secure server access
Don't have an SSH key?
Click Add SSH Key link
Generate SSH key on your computer:
# On Linux/Mac ssh-keygen -t ed25519 -C "your_email@example.com" # On Windows (PowerShell) ssh-keygen -t ed25519 -C "your_email@example.com"Copy your public key:
# Linux/Mac cat ~/.ssh/id_ed25519.pub # Windows type %USERPROFILE%\.ssh\id_ed25519.pubPaste in SSH key form
Give it a name (e.g., "My Laptop", "Work Desktop")
Click Add Key
Return to VPS creation
Step 8: Configure Networking (Optional)
Hostname (optional):
- Custom hostname for your server
- Example:
web-server.example.com - Defaults to auto-generated name
Firewall (optional):
- Attach an existing firewall
- Leave empty for default (allow all)
- Can attach later
Private Network (optional):
- Connect to a private network
- For internal instance communication
- Can configure later
Step 9: Review Configuration
Review your selections:
- Operating System
- Resource Profile
- Name
- Region
- SSH Keys
- Monthly cost estimate
- Hourly cost
Cost Estimate Example:
Small Profile: $0.015/hour
= $10.80/month (if running 24/7)
Step 10: Create Instance
- Review everything is correct
- Click Create Pod
- Deployment begins immediately
Deployment Time: 3-5 minutes
You'll see progress stages:
- ☐ Provisioning resources
- ☐ Creating storage
- ☐ Installing OS
- ☐ Configuring network
- ✅ Ready!
After Creation
Get Connection Info
Once ready, you'll see:
- Public IP Address: For SSH connection
- Status: Should show "Running"
- Resource Usage: CPU, memory metrics
First Connection
Connect via SSH:
ssh root@YOUR_VPS_IP
First login:
- Accept host key fingerprint
- You're now logged in as root
- Change root password (recommended)
Initial Setup
Update System:
# Ubuntu/Debian apt update && apt upgrade -y # CentOS/Fedora yum update -yCreate Non-Root User:
adduser yourusername usermod -aG sudo yourusername # Ubuntu/Debian usermod -aG wheel yourusername # CentOS/FedoraConfigure Firewall (if not using platform firewall):
# Ubuntu/Debian ufw allow 22/tcp ufw allow 80/tcp ufw allow 443/tcp ufw enable # CentOS/Fedora firewall-cmd --permanent --add-service=ssh firewall-cmd --permanent --add-service=http firewall-cmd --permanent --add-service=https firewall-cmd --reloadInstall Essential Packages:
# Ubuntu/Debian apt install -y curl wget git vim htop # CentOS/Fedora yum install -y curl wget git vim htop
Common Creation Scenarios
Web Server
OS: Ubuntu 22.04 LTS
Profile: Small (2 vCPU, 2 GB RAM)
Purpose: Host WordPress site
Firewall: Allow 80, 443, 22
API Server
OS: Ubuntu 24.04 LTS
Profile: Medium (4 vCPU, 4 GB RAM)
Purpose: REST API backend
Firewall: Allow 443, 22 from specific IPs
Development Environment
OS: Ubuntu 22.04 LTS
Profile: Micro (1 vCPU, 1 GB RAM)
Purpose: Testing and development
Firewall: Allow 22 from your IP only
Docker Host
OS: Ubuntu 22.04 LTS
Profile: Medium (4 vCPU, 4 GB RAM)
Purpose: Run containers
Firewall: Allow 22, 80, 443
CI/CD Server
OS: Ubuntu 22.04 LTS
Profile: Large (8 vCPU, 8 GB RAM)
Purpose: Jenkins/GitLab CI
Firewall: Allow 22, 8080
Creation Checklist
Before clicking create, verify:
- Correct operating system version
- Appropriate resource profile for workload
- Descriptive, meaningful name
- Best region for users
- SSH key(s) added
- Firewall configured (if needed)
- Understand monthly costs
- Within project resource limits
Troubleshooting
Can't Create VPS
Error: "Payment method required"
- Add payment method in Billing section
Error: "Resource limit exceeded"
- You've hit the 10 VPS limit
- Delete unused VPS or request limit increase
Error: "SSH key required"
- Must add at least one SSH key
- Generate and add SSH key first
Creation Stuck
If creation takes longer than 10 minutes:
- Refresh the page
- Check VPS list for the instance
- Contact support if still stuck
Can't SSH After Creation
Connection refused:
- Wait 5 full minutes after creation
- VPS might still be booting
- Check VPS status is "Running"
Permission denied:
- Verify SSH key was added correctly
- Check you're using correct private key
- Try:
ssh -v root@IPfor verbose output
Timeout:
- Check firewall allows port 22
- Verify you have the correct IP
- Check network connectivity
Best Practices
Naming
- Use consistent naming scheme
- Include environment (prod/staging/dev)
- Include purpose (web/api/db)
- Add numbers for multiple instances
Sizing
- Start small, scale up if needed
- Monitor resource usage first week
- Resize if consistently over 80% usage
- Don't over-provision "just in case"
Security
- Add SSH keys before creation
- Attach firewall immediately
- Use strong hostname
- Change default passwords
- Update system after creation
Cost Management
- Choose appropriate profile
- Stop dev/staging instances when not needed
- Delete unused instances
- Monitor spending in Billing
Next Steps
Now that your VPS is created:
- Connect via SSH
- Install your application
- Configure firewall rules
- Set up monitoring
- Create snapshots
Need help? Contact support through the dashboard.