VM Control

PES Research Documentation

Last updated: March 2026 5 min read

VM Control

Dashboard memberikan kontrol penuh atas Azure VM research environment. Panduan ini menjelaskan cara mengelola VM.

Dashboard Overview

ComponentDescription
Status IndicatorVM power state
Start ButtonPower on VM
Stop ButtonPower off VM
System InfoEnvironment details

VM States

StateColorDescriptionAction Available
VM runningGreenVM readyStop
VM deallocatedGrayVM powered offStart
VM startingYellowBooting upWait
VM stoppingYellowShutting downWait

Starting the VM

Step-by-Step

  1. Check status on Dashboard
  2. If “VM deallocated”, click “Start”
  3. Wait for “VM starting”“VM running”
  4. Access Terminal when ready

Expected Time

PhaseDuration
Boot1-2 minutes
Services ready30 seconds
Total~2-3 minutes

Stopping the VM

Step-by-Step

  1. Close terminal sessions
  2. Click “Stop” on Dashboard
  3. Wait for “VM stopping”“VM deallocated”

Important Notes

  • Active sessions will be terminated
  • Unsaved data may be lost
  • User data is preserved in home directories

VM Specifications

SpecificationValue
Namepes-sandbox
Resource GroupPES-SANDBOX-RG
RegionSoutheast Asia
SizeStandard_B4ms
CPU4 vCPUs
RAM16 GB
OSUbuntu 22.04 LTS
Storage128 GB Premium SSD

Cost Management

Billing Model

Running State:  Compute charges + Storage charges
Stopped State:  Storage charges only

Recommendations

  • Stop VM when not in use
  • Use sessions efficiently
  • Monitor usage via Azure Portal

Multi-User Access

Shared Resource

VM is shared across authorized users:

UserHome DirectoryIsolation
sboxuser/home/sboxuser/Full
dimas/home/dimas/Full
rizal/home/rizal/Full

Log Separation

/home/<user>/research-logs/  # Terminal session logs
/home/<user>/research-data/  # Research data
/var/log/                    # System logs (shared)

System State

Default Containers

ContainerDescriptionPort
research-baseBase research environment-
monitoringGrafana dashboard3000
loggingLoki log service3100

Reset to Safe State

Administrators can reset VM to default state:

What Gets Reset:

  • Installed packages
  • Running services
  • System configurations

What Gets Preserved:

  • User home directories
  • Research data
  • Log files

API Reference

Get VM Status

curl http://localhost:8787/api/status

Response:

{"status": "VM running"}

Start VM

curl -X POST http://localhost:8787/api/power \
  -H "Content-Type: application/json" \
  -d '{"action":"start"}'

Response:

{"success": true}

Stop VM

curl -X POST http://localhost:8787/api/power \
  -H "Content-Type: application/json" \
  -d '{"action":"stop"}'

Response:

{"success": true}

Monitoring

Resource Usage

# CPU & Memory
top

# Disk
df -h

# Processes
ps aux | head -20

# Network
netstat -tuln

Docker Stats

# Container resource usage
docker stats

# Container logs
docker logs <container> --tail 100

Troubleshooting

VM Won’t Start

Possible Causes:

  • Azure quota exceeded
  • Resource group locked
  • Network issues

Solutions:

  1. Wait 5 minutes and retry
  2. Check Azure Portal for errors
  3. Contact administrator

VM Starts But Terminal Unreachable

Possible Causes:

  • WARP not connected
  • Terminal service not running
  • Network firewall

Solutions:

  1. Verify WARP connection
  2. Check VM status
  3. Restart terminal service

Slow Performance

Possible Causes:

  • High CPU/memory usage
  • Too many concurrent users
  • Network latency

Solutions:

  1. Check resource usage: top
  2. Close unnecessary processes
  3. Contact administrator for scaling

Container Won’t Start

Possible Causes:

  • Port conflict
  • Volume mount issue
  • Image pull failure

Solutions:

  1. Check port usage: netstat -tuln
  2. Check Docker logs: docker logs <container>
  3. Restart Docker: sudo systemctl restart docker

Was this page helpful?