Launch your first VM

This quickstart walks you through launching your first IBEE Solutions VM — pick a region, plan, and OS, deploy the server, and SSH in. You can do everything from the portal, the ibeectl CLI, or the API.

By the end you’ll have a running Ubuntu 24.04 VM in Amaravati on a small Performance plan, accessible over SSH and ready to run your workload.

Before you begin

You’ll need:

$ssh-keygen -t ed25519 -C "your-email@example.com"

Your public key is at ~/.ssh/id_ed25519.pub.

Option A — Launch from the portal

1

1. Open Cloud VMs

In the portal, expand Products and click Cloud VMs, then Create server.

2

2. Pick a region and location

Select Asia → Amaravati (AVR) for this quickstart. See Regions and locations for the full list.

3

3. Choose a plan

Pick any plan that fits your workload. For a first VM we recommend perf.1.c2.m4 or std.1.c4.m16 — both have enough headroom for typical web/API work. The estimated monthly and hourly cost updates as you select.

Standard VMs — balanced vCPU, memory, included disk and bandwidth. Good default for production:

PlanvCPURAMDiskBandwidthBest for
std.1.c2.m828 GiB50 GB2 TBDevelopment environments, small apps, APIs, staging
std.1.c4.m16 (popular)416 GiB100 GB4 TBProduction web apps, SaaS, APIs, small databases
std.1.c8.m32832 GiB150 GB6 TBSaaS, CRM/ERP, medium databases
std.1.c16.m641664 GiB200 GB8 TBHigh-traffic apps, growing databases
std.1.c32.m12832128 GiB300 GB12 TBEnterprise, analytics, large backends
std.1.c64.m25664256 GiB400 GB16 TBLarge-scale systems, in-memory databases

Performance VMs — compute-optimized with stronger CPU density per core:

PlanvCPURAMDiskBandwidthBest for
perf.1.c1.m212 GiB40 GB1 TBDev, testing, lightweight workloads
perf.1.c2.m424 GiB50 GB2 TBFirst VM, microservices, API gateways
perf.1.c4.m8 (popular)48 GiB80 GB3 TBHigh-traffic web servers, stateless apps
perf.1.c8.m16816 GiB120 GB5 TBGaming servers, batch processing, CPU ML inference
perf.1.c16.m321632 GiB160 GB8 TBData pipelines, container workloads
perf.1.c32.m643264 GiB240 GB12 TBHPC, distributed systems, compute-intensive apps
perf.1.c64.m12864128 GiB320 GB16 TBLarge compute clusters, simulations

For full network bandwidth tiers per plan and the naming convention, see Instance types.

4

4. Select an operating system

On the Operating System → Templates tab, pick Ubuntu, then choose Ubuntu 24.04 from the OS Version dropdown. The available templates are filtered to show only images compatible with Cloud VMs.

For ISOs, snapshots, or backups as the source, see Custom images.

5

5. Add an SSH key

Under SSH Keys, click + New and paste your public key. The key is injected into the VM at first boot. See SSH Keys for full details.

6

6. Set a hostname and deploy

Enter a lowercase hostname (letters, numbers, hyphens only — for example web-01), then click Deploy Now. The platform checks your billing state and wallet balance first. If credits are sufficient, provisioning takes about a minute. If not, a billing popup prompts you to add credits.

7

7. Connect

Once the status shows Running, copy the public IP from the Cloud VMs list and SSH in:

$ssh ubuntu@<public-ip>

You’re done — you have a running VM. Next steps below.

Option B — Using the ibee CLI

ibeectl is the official IBEE Solutions command-line tool. Use it to launch and manage VMs without leaving the terminal — handy for scripts, CI/CD, and infrastructure-as-code.

Install

PlatformCommand
macOS / Linuxcurl -fsSL https://get.ibee.cloud/cli | sh
WindowsDownload the latest release from github.com/ibee/ibeectl
From sourcego install github.com/ibee/ibeectl/cmd/ibeectl@latest

Verify the install:

$ibeectl version

Authenticate

Generate an API token in the portal under Tools → API Tokens, then log in:

$ibeectl auth login --token <your-api-token>

Tokens are stored in ~/.config/ibeectl/credentials. To switch organizations:

$ibeectl config set organization <organization-id>

Launch a VM

A minimal launch command:

$ibeectl vm create \
> --name web-01 \
> --region asia-avr \
> --plan perf.1.c2.m4 \
> --image ubuntu-24-04 \
> --ssh-key "$(cat ~/.ssh/id_ed25519.pub)"

The CLI prints the new VM’s ID, status, and public IP as soon as provisioning starts. Use --wait to block until the VM is in Running state:

$ibeectl vm create \
> --name web-01 \
> --region asia-avr \
> --plan perf.1.c2.m4 \
> --image ubuntu-24-04 \
> --ssh-key-id <ssh-key-id> \
> --wait

Helpful CLI commands

CommandDescription
ibeectl vm listList all VMs in the current organization
ibeectl vm get <vm-id>Show details (IP, plan, status, attached volumes)
ibeectl vm ssh <vm-id>Open an SSH session using your saved key
ibeectl vm console <vm-id>Open the web console
ibeectl vm stop <vm-id>Gracefully stop
ibeectl vm start <vm-id>Start a stopped VM
ibeectl vm reboot <vm-id>Restart in place
ibeectl vm resize <vm-id> --plan <plan>Change plan (Resize)
ibeectl vm snapshot create <vm-id> --label pre-deployTake a snapshot
ibeectl vm delete <vm-id> --confirmPermanently delete

For full help on any command:

$ibeectl vm create --help

List available plans, regions, and images

$ibeectl plans list # Standard + Performance instance types
$ibeectl regions list # Available regions and locations
$ibeectl images list --type template # OS templates
$ibeectl images list --type iso # ISOs in the organization

Output as JSON

Pipe --output json into jq for scripting:

$ibeectl vm list --output json | jq '.[] | {id, name, status, ip}'

Verify

Whichever path you took, confirm the VM is healthy:

$# From your laptop
$ssh ubuntu@<public-ip> 'uname -a; uptime'
$
$# Inside the VM
$sudo apt update
$sudo apt install -y nginx
$curl -I http://localhost

Open http://<public-ip> in a browser to see the default nginx page.

What to do next

Troubleshooting

Deploy Now is disabled Region, Location, Plan, OS, OS Version, SSH key, and Hostname are all required. Hostname must contain only lowercase letters, numbers, and hyphens.

Billing needs attention popup Your organization’s wallet balance is insufficient for the selected plan. Click Add Credits to top up, then return to deploy.

SSH connection refused Wait until the VM shows Running and the public IP is populated. The first sshd start takes a few seconds after the IP is assigned.

ibeectl: command not found Re-open your shell after install, or add ~/.local/bin (or wherever the installer put the binary) to PATH.

ibeectl auth login fails Generate a fresh token under Tools → API Tokens; tokens are scoped per organization.