Documentation

Creating VPS Instances

Step-by-step guide to creating and configuring your first VPS instance.

Prerequisites

Before creating a VPS:

  1. ✅ Have an active project
  2. ✅ Add a payment method to your project
  3. ✅ Have at least one SSH key configured
  4. ✅ Check account limits (10 VPS by default)

Step-by-Step Guide

Step 1: Navigate to VPS Section

  1. Log in to your DanubeData dashboard
  2. Ensure you're in the correct project
  3. Click Pods in the main navigation

Step 2: Start Creation

  1. Click the Create Pod button
  2. 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-01
  • staging-api-server
  • dev-frontend
  • wordpress-blog

Poor Names:

  • server1
  • test
  • vps

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:

  1. Closest to your users (lowest latency)
  2. Data sovereignty requirements
  3. 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?

  1. Click Add SSH Key link

  2. 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"
    
  3. Copy your public key:

    # Linux/Mac
    cat ~/.ssh/id_ed25519.pub
    
    # Windows
    type %USERPROFILE%\.ssh\id_ed25519.pub
    
  4. Paste in SSH key form

  5. Give it a name (e.g., "My Laptop", "Work Desktop")

  6. Click Add Key

  7. 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

  1. Review everything is correct
  2. Click Create Pod
  3. Deployment begins immediately

Deployment Time: 3-5 minutes

You'll see progress stages:

  1. ☐ Provisioning resources
  2. ☐ Creating storage
  3. ☐ Installing OS
  4. ☐ Configuring network
  5. ✅ 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

  1. Update System:

    # Ubuntu/Debian
    apt update && apt upgrade -y
    
    # CentOS/Fedora
    yum update -y
    
  2. Create Non-Root User:

    adduser yourusername
    usermod -aG sudo yourusername  # Ubuntu/Debian
    usermod -aG wheel yourusername  # CentOS/Fedora
    
  3. Configure 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 --reload
    
  4. Install 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:

  1. Refresh the page
  2. Check VPS list for the instance
  3. 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@IP for 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:

  1. Connect via SSH
  2. Install your application
  3. Configure firewall rules
  4. Set up monitoring
  5. Create snapshots

Need help? Contact support through the dashboard.