Skip to content
Coritan Docs

Use an instance's console

Open a browser console on an instance's screen, even when its network is down, and read its use, recent tasks and advanced details.

View as Markdown

The Console tab shows the instance's screen in your browser and sends it your keyboard and mouse, as a monitor and keyboard plugged into the machine would. It works while the instance has no network. Use it when SSH does not answer, for example after a firewall change locks you out, or to watch the instance boot.

Above the screen, the tab shows what the instance is using. Below it are its recent tasks and an Advanced fold with what the instance reports about itself and its virtual hardware. Once account plans open on your account, it also shows the instance's plan and add-ons.

  • The instance is running. Start it from the header if it is stopped, as Start, stop and restart an instance describes.
  • The instance is not suspended. The console does not connect to a suspended instance.
  • To sign in at the screen, you need the password of the instance's user account. We do not show the password the instance was created with, so reset the password first if you do not have one. SSH keys do not work at the console.
  1. In the dashboard, go to Cloud Compute and open the instance.
  2. Select the Console tab. The Display panel connects on its own and shows the screen once its status reads Connected.
  3. Click the screen, then type. Your keys go to the instance.
Ctrl+Alt+Del
Sends that key combination to the instance. Your own computer keeps it for itself when you press it, so use this button instead.
View only
Stops your keyboard and mouse reaching the instance, so you can watch the screen without typing into it by accident. Select it again to type.
Reconnect
Starts a new session and connects again. It reads New session while you are connected.
Fullscreen
Fills the browser window with the screen. Select Exit fullscreen, or press Esc, to go back.

Note

A note above the screen tells you when the instance needs one restart before the console can show its screen. Some older instances still use a serial port as their display, and some Debian 13 instances still use a display adapter that Debian 13 cannot draw on. Select Restart in the header once, and the console shows the screen from then on. A reboot typed inside the instance does not change its display.

The four cards above the display show the instance's size and use:

vCPU
The number of cores, and the share of them in use.
Memory
The memory size, and the share in use.
Disk
The disk size, and the share the host reports as allocated.
Bandwidth
The traffic used this period against the plan's allowance, and the date it resets. How instance traffic is counted explains the figure.

Select Advanced: system report and hardware to open two cards.

The System report card shows what the guest agent reports. The guest agent is a small program inside the instance that reads its system and addresses. The card lists the operating system, kernel, Hostname inside and Addresses it reports. The badge reads Reporting when the agent answers, and Not reporting when it does not. You need the agent to reset the password, and it lets the instance shut down cleanly when you select Stop.

The Hardware card shows the instance's virtual hardware: CPU model, storage, network speed, the size of each disk, each network card's MAC address and model, and the DNS resolvers we set up for it. The password and SSH keys never appear there. The Overview tab shows the operating system, size and location, the Access tab shows the user account, and the Network tab shows the addresses and their gateway.

Once account plans open on your account, a Plan and add-ons card follows. It gives the instance's Plan and Price, such as $0.0421/hr, at most $28.29 a month, and Open Billing in its header opens the Billing tab. Under that:

  • On this service lists what the instance already has, each with its price. A floating IP bought with the instance is there too, with Open, which opens its page. Remove ends an add-on.
  • Available lists the add-ons you can put on the instance, each with its price, such as Weekly Instance Backups at 20% of the instance price. Select Add… beside one, then Add (Add capacity to a service, Automatic backups).
  • More for this instance lists Floating IP and DDoS Shield profile, each a service of its own. Add… opens its order page. When the instance has a floating IP, the DDoS Shield page opens with that address chosen.

The Recent tasks table lists the instance's last eight tasks, such as power actions, backups, snapshots and console sessions. Status reads OK when a task finished, Warnings when it finished with warnings, Running while it runs, and Failed when it did not finish. Select the refresh button (Refresh tasks) to read the list again.

You see the instance's screen, and you can sign in at it as you would at a physical machine.

The instance is powered off
The instance is stopped. Select Start in the header. The console connects once the instance is running.
Could not connect to the console
The session expired before it connected, or the host did not answer. Select Try again for a new session. If the message below it says You are signed out. Sign in again to open the console., sign in to the dashboard again first.
Disconnected
The session ended or the connection dropped. Select Try again for a new session.
Coloured lines after the boot logo, then a black screen
The instance still uses a display adapter its operating system cannot draw on. Debian 13 did this until we moved its image to another adapter. The note above the screen says the instance gets a new display adapter on its next restart. Select Restart in the header once; a reboot typed inside the instance keeps the old adapter. SSH works meanwhile.
The instance is not reporting
The instance has no guest agent, or it is not running. This shows in the System report card under Advanced. Install it from the console or over SSH. On Ubuntu or Debian, run sudo apt install qemu-guest-agent. On AlmaLinux, Rocky Linux or Fedora, run sudo dnf install qemu-guest-agent. Then run sudo systemctl start qemu-guest-agent.
No public address
The instance has no public IP address, so you can reach it only through this console. This shows on the Overview tab with Open Network. Attach a floating IP, as Manage an instance's addresses and names describes.

GET /api/v1/client/vps/{uuid}/console starts a console session on the instance's host.

Shell
curl https://api.coritan.com/api/v1/client/vps/$INSTANCE_UUID/console \
  -H "Authorization: Bearer $CORITAN_TOKEN"
JSON
{
  "vnc_ws": "/ws/vps/vnc/5b0c2f7e-8a31-4d2b-9f4e-2a7c1d9e6b10",
  "vnc_session": "q3Vx…",
  "vnc_password": "Zk2p…",
  "expires_in": 120,
  "display": "vga"
}

Within expires_in seconds, connect a VNC client that speaks WebSocket, such as noVNC, to the socket below. Pass your access token and the session in the query string, and answer the VNC password prompt with vnc_password.

Text
wss://api.coritan.com/ws/vps/vnc/<instance uuid>?token=<access token>&session=<vnc_session>

Ask for a new session for every connection, as the dashboard does. display is vga when the console shows the instance's screen, serial while the instance still uses its serial port as its screen, and pending while it waits for the display adapter its image now uses. Restart the instance once with the reboot power action to end either of the last two. When the socket cannot connect, it closes with one of these codes:

1013
The instance belongs to an organization, and we could not add the session to its audit log. The reason reads We could not record this console session, so we did not open it. Try again in a moment.
4001
The token is not a valid access token.
4003
The instance is not on your account, and you are not the owner or an admin of the organization it belongs to. It also answers this while the instance is suspended or being moved.
4004
The session is missing or expired, or the host's console is not available. Ask for a new session.
4029
You already have too many consoles open. Close one and try again.

When the host cannot start a console, GET /console answers 400 with a message that starts Console unavailable.

GET /api/v1/client/vps/{uuid}/config returns the virtual machine's configuration with the password and SSH keys removed. config holds cores, memory (in MiB), name, ostype, boot, agent, disks and nics (keyed by device, such as scsi0 or net0), and cloud_init, the settings cloud-init applies, such as ipconfig0, ciuser and nameserver. The response also carries vmid, rescue_mode and rescue_iso.

GET /api/v1/client/vps/{uuid}/guest asks the guest agent. agent_online is true when it answered, and os_info and network_interfaces then hold what it reported. When a question fails, agent_error, os_error or network_error says why, such as VM is not running or qemu-guest-agent not responding.

GET /api/v1/client/vps/{uuid}/tasks returns the host's recent tasks for the instance. Send limit for how many: the default is 50 and the most is 100.

type
What the task did, such as qmstart, qmshutdown, qmsnapshot, vzdump for a backup or vncproxy for a console session.
status
OK when the task finished cleanly, and the error when it failed. It is absent while the task runs.
starttime, endtime
When the task started and finished, in Unix seconds.
upid
The host's ID for the task.

While we move the instance to another host, /config, /guest and /tasks answer 409 with Instance is migrating.

API operations on this page

MethodPathWhat it does
GET/api/v1/client/vps/{uuid}/consoleStart a display console session on the instance's host
GET/api/v1/client/vps/{uuid}/configGet instance config
GET/api/v1/client/vps/{uuid}/guestGet guest info
GET/api/v1/client/vps/{uuid}/tasksGet instance tasks
GET/api/v1/services/{service_ref}/addonsThe add-ons on one of your services, and the ones you can add