Skip to content

Cloud instances

Cloud instances are managed virtual machines running on your choice of cloud providers. Sencai simplifies provisioning, scaling, and monitoring of compute infrastructure.

Need to hand instances off to your own Terraform workflow? See Exporting to Terraform to generate reviewable .tf files for the instances you select.

Sencai currently supports provisioning on these providers:

ProviderInstance TypesRegionsStatus
AWSEC2 (general, compute, memory optimized)20+ regions worldwideFully supported
Google Cloud (GCP)Compute Engine (general, memory, compute)40+ regionsFully supported
HetznerCloud servers (standard, optimized)EU & USFully supported
ScalewayCloud servers, bare metalEUFully supported
OVHcloudPublic Cloud instancesEU & CanadaFully supported
UpCloudCloud serversMultiple regionsFully supported
AzureVirtual MachinesMultiple regionsFully supported

The following providers are not yet implemented — no provisioning support exists today, regardless of what may be mentioned elsewhere:

ProviderInstance TypesStatus
DigitalOceanDropletsPlanned / not yet implemented
VultrCloud instancesPlanned / not yet implemented
LinodeCompute instancesPlanned / not yet implemented
  1. Log in to Sencai
  2. Select your organization from the header
  3. Click Cloud Instances in the sidebar

Click the + New Instance button.

Fill in the following details:

  • Instance Name — A descriptive name (e.g., “api-server-prod-1”)
  • Cloud Provider — Choose from available providers
  • Region — Select the geographic location closest to your users
  • Instance Type — Select size based on your workload:
    • Small (2 vCPU, 4 GB RAM) — Development, testing
    • Medium (4 vCPU, 8 GB RAM) — Small production workloads
    • Large (8 vCPU, 16 GB RAM) — Production applications
    • Extra Large (16+ vCPU, 32+ GB RAM) — High-traffic services
  • Operating System — Ubuntu 22.04 LTS (default), Debian 12, or others (provider-dependent)
  • SSH Key — Your public SSH key for secure access (auto-generated if not provided)
  • Public IP Address — Whether the instance needs internet-facing IP (recommended)
  • Tags (optional) — Labels for organization (e.g., “production”, “gpu-required”)
  • The estimated monthly cost appears based on your selections
  • Click Provision Instance

Provisioning typically takes 3–5 minutes. A progress indicator shows the status.

Instances can be in one of these states:

StateMeaningActions Available
ProvisioningBeing created— (wait)
ReadyFully operationalStop, Restart, Resize, Terminate, Access
StartingBeing powered on— (wait)
StoppingBeing powered off— (wait)
StoppedPowered off, not billedStart, Terminate, Delete
ErrorProvisioning or operation failedRetry, Delete, Contact support
TerminatingBeing permanently destroyed— (wait)

Once ready, you can perform these actions on your instance:

Start — Power on a stopped instance (ready to use again in ~1 minute)

Stop — Power off the instance (stops compute billing, but storage still incurs charges)

Restart — Reboot the operating system without stopping (keeps public IP)

Resize — Change the instance type (CPU/RAM scaling). Requires stopping the instance; typically takes 2–5 minutes.

Terminate — Permanently delete the instance and all data. This cannot be undone.

  1. Open the instance in Sencai

  2. Go to the Access section

  3. You’ll see:

    • Public IP Address — Used to connect remotely
    • SSH Connection String — Ready-to-use SSH command
    • Default User — Usually ubuntu or root
  4. Connect via SSH in your terminal:

    Terminal window
    ssh ubuntu@<PUBLIC_IP>
  5. The first time you connect, you may see a warning about an unknown host key. Type yes to proceed.

You don’t need a local SSH client to reach your instance. Click Terminal on the instance detail page to open a full in-browser SSH session, backed by ssh-proxy-service over a WebSocket connection. Your existing Keycloak session authenticates you, and the proxy verifies your organization membership and ownership of the instance before opening the SSH channel — no extra credentials to manage. RDP is not supported.

Each instance displays real-time metrics:

  • CPU Usage — Percentage of processor utilization
  • Memory Usage — RAM consumption
  • Disk Space — Storage used / total available
  • Network I/O — Bytes in/out per second
  • Network Traffic — Cumulative data transferred

Graphs show usage over the last 24 hours. Alert thresholds can be configured (contact support).

Cloud costs are transparent and calculated per instance:

Monthly Cost = (Hourly Rate × Hours Running) + Storage + Data Transfer
  • Compute — Per vCPU and GB RAM per hour (varies by provider and region)
  • Storage — Per GB stored per month (typically $0.10–$0.30/GB/month)
  • Data Transfer — Outbound traffic to internet (usually $0.10–$0.20/GB, free within region)
  1. Click your instance to view details
  2. The Estimated Monthly Cost updates based on current runtime
  3. Go to OrganizationBilling to see historical invoices and detailed breakdowns
  • Stop instances when idle — Avoid unnecessary charges for unused instances
  • Right-size your workload — Start small; resize up if needed
  • Use regional data transfer — Keep instances and data in the same region to avoid egress charges
  • Terminate unused instances — Remove test/development instances after use
  • Set budget alerts — Ask your organization Owner to configure spending limits

Q: Provisioning is taking longer than expected

A: First provisioning can take up to 10 minutes. Check the progress indicator in Sencai. If stuck for 15+ minutes, refresh the page or contact support.

Q: Can’t connect via SSH

A: Check the following:

  • Verify you’re using the correct public IP address (not the private IP)
  • Ensure you’re using the correct username (usually ubuntu for Ubuntu, admin for Debian)
  • Confirm SSH port 22 is open in your security group (check cloud provider settings)
  • Try restarting the instance

Q: Instance shows “Error” status

A: This may be a temporary cloud provider issue. Click Retry. If it persists, contact support with the instance ID.

Q: How do I add more disk space?

A: Instance resize can increase storage, but it requires stopping the instance. Alternatively, attach external volumes via the cloud provider’s console directly.

Q: Can I access the instance via RDP or web terminal?

A: Yes — click Terminal on the instance detail page to open a full in-browser SSH session (xterm.js over WebSocket via ssh-proxy-service). Your Keycloak session authenticates you; the proxy verifies org-membership/ownership of the instance before connecting. RDP is not supported.