--- title: "Create a Virtual Machine" description: >- Step-by-step guide to launch a TIR Virtual Machine, configure storage and SSH keys, and connect via SSH. --- # Create a Virtual Machine > Launch a full OS virtual machine on TIR infrastructure, configure your SSH keys and startup scripts, and connect via a reserved IP — in under 5 minutes. --- ## Prerequisites | Requirement | Details | |-------------|---------| | **Active TIR account** | Access to the [TIR Cloud Portal](https://tir.e2enetworks.com/) | | **Sufficient credits** | On-Demand VMs are billed per minute; ensure credits are loaded | | **SSH key pair** | A public/private key pair for SSH access. See [SSH Key Management](/docs/tir/GettingStarted/Security/SSH_Key/) | | **Security Group** | A Security Group with **port 22 open** must be attached to allow SSH. See [Security Groups](/docs/tir/network/Security_Group/) | --- ## Step 1: Navigate to Virtual Machines 1. Log in to the [TIR Cloud Portal](https://tir.e2enetworks.com/). 2. Select your **Project** from the left-hand sidebar. 3. Under the **Compute**, click **Virtual Machines**. --- ## Step 2: Configure Compute Resources ### VM Name Enter a name for your VM (e.g. `my-vm`). The name is auto-generated but can be changed to something memorable for easy identification. ### Select Computing Resource TIR VMs support three types of compute resources. Choose the tab that matches your workload: #### GPU Select a GPU plan to run GPU-accelerated workloads directly on your VM. #### CPU Select a CPU plan for general-purpose or CPU-intensive workloads. Choose an instance family (e.g. **C3** — High-performance CPU instances), then pick a **Configuration** (e.g. 4 vCPUs – 8 GB RAM) from the dropdown. #### Private Cluster Select **Private Cluster** to launch your VM on a dedicated private cluster. ### Instance Pricing Multiple pricing plans are available, including On-Demand (pay per hour) and Savings Plans with discounts for longer commitments. Pricing is displayed on-screen once you select a configuration. --- ## Step 3: Configure Storage Set the size of your VM's persistent workspace disk: - **First 30 GB is free**, then **₹5 per GB/month** for additional storage. - Storage is available at **`/`** and **persists across restarts**. - **Storage cannot be reduced once allocated** — size can only be increased. - Range: **30 GB** (minimum, free) up to **15 TB**. :::warning Your workspace disk is automatically deleted when the VM is deleted. Back up any important data before deletion. ::: --- ## Step 4: Network & SSH ### SSH Key Select an existing SSH key from the dropdown, or create a new one. If you create a new key, the **private key (.pem)** is downloaded immediately — store it securely, as it cannot be re-downloaded. > Your public key is injected into the VM at first boot. You can add or rotate keys later without restarting — see [Connect via SSH](/docs/tir/VirtualMachines/vm-connect#add-or-rotate-ssh-keys). ### Security Group Attach a Security Group with **port 22 (SSH) open** as an inbound rule. Without this, SSH connections will be blocked. --- ## Step 5: Advanced Settings *(Optional)* | Setting | Description | |---------|-------------| | **Startup Scripts** | Shell scripts that run automatically on every VM boot. Use these to install packages, configure the environment, or start services. | | **Datasets** | Attach Dataset volumes. They are mounted inside the VM at `/datasets`. | | **Shared File System (SFS)** | Mount an existing Shared File System onto the VM. [Create one here](/docs/tir/sfs/QuickStart/) if you don't have one yet. | | **Reserve Static IP Address** | Assign a reserved static IP to the VM. [Create a reserved IP](/docs/tir/network/Reserve_IP/) if needed. | --- ## Step 6: Launch Review your configuration and click **Launch VM**. > The VM takes approximately **2–3 minutes** to boot. SSH becomes available once the status changes to **Running**. You can track the boot progress from the **VM Details** page. The status changes from **Waiting → Running** once the VM is fully ready. --- ## Step 7: Connect via SSH Once the VM status shows **Running**, connect using the Reserved IP or the IP shown in the VM details. ```bash ssh root@ ``` **Example:** ```bash ssh root@203.0.113.42 ``` :::tip The default username is `root` for all TIR VM images. ::: For detailed SSH setup, key rotation, and troubleshooting, see [Connect via SSH](/docs/tir/VirtualMachines/vm-connect). ---