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
| Component | Description |
|---|---|
| Status Indicator | VM power state |
| Start Button | Power on VM |
| Stop Button | Power off VM |
| System Info | Environment details |
VM States
| State | Color | Description | Action Available |
|---|---|---|---|
| VM running | Green | VM ready | Stop |
| VM deallocated | Gray | VM powered off | Start |
| VM starting | Yellow | Booting up | Wait |
| VM stopping | Yellow | Shutting down | Wait |
Starting the VM
Step-by-Step
- Check status on Dashboard
- If “VM deallocated”, click “Start”
- Wait for “VM starting” → “VM running”
- Access Terminal when ready
Expected Time
| Phase | Duration |
|---|---|
| Boot | 1-2 minutes |
| Services ready | 30 seconds |
| Total | ~2-3 minutes |
Stopping the VM
Step-by-Step
- Close terminal sessions
- Click “Stop” on Dashboard
- 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
| Specification | Value |
|---|---|
| Name | pes-sandbox |
| Resource Group | PES-SANDBOX-RG |
| Region | Southeast Asia |
| Size | Standard_B4ms |
| CPU | 4 vCPUs |
| RAM | 16 GB |
| OS | Ubuntu 22.04 LTS |
| Storage | 128 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:
| User | Home Directory | Isolation |
|---|---|---|
| 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
| Container | Description | Port |
|---|---|---|
| research-base | Base research environment | - |
| monitoring | Grafana dashboard | 3000 |
| logging | Loki log service | 3100 |
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:
- Wait 5 minutes and retry
- Check Azure Portal for errors
- Contact administrator
VM Starts But Terminal Unreachable
Possible Causes:
- WARP not connected
- Terminal service not running
- Network firewall
Solutions:
- Verify WARP connection
- Check VM status
- Restart terminal service
Slow Performance
Possible Causes:
- High CPU/memory usage
- Too many concurrent users
- Network latency
Solutions:
- Check resource usage:
top - Close unnecessary processes
- Contact administrator for scaling
Container Won’t Start
Possible Causes:
- Port conflict
- Volume mount issue
- Image pull failure
Solutions:
- Check port usage:
netstat -tuln - Check Docker logs:
docker logs <container> - Restart Docker:
sudo systemctl restart docker