Virtual Machine Management Skill
Create, manage, and optimize virtual machines in your Proxmox environment.
What this skill does
This skill enables you to:
- •List virtual machines on specific nodes
- •Get detailed VM configuration and status
- •Start, stop, reboot, suspend, and resume virtual machines
- •Create new virtual machines with basic or advanced configuration
- •Clone existing virtual machines
- •Delete virtual machines
- •Modify VM resource allocation
- •Monitor VM performance metrics
- •Manage VM snapshots
- •Plan VM deployment strategies
- •Optimize resource allocation
When to use this skill
Use this skill when you need to:
- •Check VM status and configuration
- •Manage VM lifecycle (start/stop/reboot)
- •Monitor VM performance and resource usage
- •Adjust VM resources (CPU, memory, storage)
- •Create new virtual machines
- •Troubleshoot VM issues
- •Plan VM migrations
- •Optimize VM placement
Available Tools
- •
get_vms- List all VMs on a specific node - •
get_vm_status- Get detailed VM status and configuration - •
get_vm_config- Get full VM configuration details - •
start_vm- Start a virtual machine - •
stop_vm- Stop a VM immediately - •
shutdown_vm- Gracefully shutdown a VM - •
reboot_vm- Reboot a virtual machine - •
suspend_vm- Suspend (pause) a running VM - •
resume_vm- Resume a suspended VM - •
create_vm- Create a new virtual machine with basic configuration - •
create_vm_advanced- Create a VM with advanced configuration options - •
clone_vm- Clone an existing virtual machine - •
update_vm_config- Update VM configuration (resources, options, mark as template) - •
delete_vm- Delete a virtual machine
Template VM Creation
Creating template VMs allows you to quickly deploy preconfigured virtual machines:
Workflow: Create a Template VM
- •
Create or prepare a base VM
- •Use
create_vm_advancedor clone from an existing VM - •Install and configure the OS and applications
- •Test thoroughly before templating
- •Use
- •
Update VM as Template
- •Use
update_vm_configwithtemplate: 1to mark as template
json{ "template": 1 } - •Use
- •
Clone from Template
- •Use
clone_vmto create instances from the template - •Template VMs cannot be directly used as running instances
- •Each clone becomes a full, independent VM
- •Use
Example: Mark VM as Template
bash
# First, prepare your VM (install OS, apps, configure)
# Then mark it as a template:
update_vm_config(node="pve2", vmid=100, config={"template": 1})
Example: Clone from Template
bash
# Clone the template to create a new VM clone_vm(node="pve2", source_vmid=100, new_vmid=200, new_name="web-server-01", full=true)
Typical Workflows
VM Lifecycle Management
- •Use
get_vmsto list available VMs - •Use
get_vm_statusorget_vm_configto check VM state - •Use start/stop/reboot/suspend/resume to manage VM operations
- •Monitor VM health during changes
VM Creation & Configuration
- •Use
create_vmorcreate_vm_advancedto provision new VM - •Use
get_vm_statusto verify configuration - •Use
clone_vmto create copies for testing or deployment - •Use
get_vm_configto review detailed settings - •Document VM details for reference
VM Lifecycle Operations
- •Use
suspend_vmto pause a running VM (preserves state) - •Use
resume_vmto resume operations from suspended state - •Use
shutdown_vmfor graceful shutdown - •Use
reboot_vmto restart VM - •Use
stop_vmfor immediate termination if needed
VM Troubleshooting
- •Use
get_vm_statusto check VM health - •Use reboot/restart to recover from issues
- •Use snapshots to rollback problematic changes
- •Analyze performance metrics for root cause
Example Questions
- •"List all VMs on the production node"
- •"What's the status and resource usage of VM 100?"
- •"Get the full configuration of VM 105"
- •"Start the web server VM"
- •"Create a new VM with 4 cores and 8GB RAM"
- •"Clone VM 100 to create a test copy"
- •"Mark VM 100 as a template for future deployments"
- •"Clone the template VM 100 to create web-server-01"
- •"Update VM 105 to use 16GB RAM"
- •"Suspend VM 200 for maintenance"
- •"Resume VM 200 to continue operations"
- •"Gracefully shutdown VM 150"
- •"Delete VM 199 and remove all data"
Response Format
When using this skill, I provide:
- •VM listings with status and resource allocation
- •Detailed VM configuration and performance metrics
- •Status confirmations for VM operations
- •Resource utilization analysis
- •Optimization recommendations
Best Practices
- •Monitor VM performance regularly
- •Use cloning for quick VM deployment
- •Create VMs with appropriate resource allocation
- •Use suspend/resume for temporary pauses
- •Use graceful shutdown to minimize data loss
- •Plan resource allocation carefully
- •Balance VMs across nodes
- •Implement high-availability for critical VMs
- •Keep VM templates updated
- •Document VM configuration and purpose
- •Test changes in non-production first
- •Monitor disk usage to prevent full disks
- •Clean up unused VMs to conserve resources