ProxBash - a bash script to manage Proxmox VE
Published: 28-06-2012 | Author: Remy van Elst | Text only version of this article
Table of Contents
Proxmox VE is a complete virtualization management solution for servers. You canvirtualize even the most demanding application workloads running on Linux andWindows Servers. It is based on the leading Kernel-based Virtual Machine (KVM)hypervisor and OpenVZ, the number one solution for container basedvirtualization.
ProxMox VE is a very nice piece of software to setup a VM host very fast, whichalso is easy manageable via a webinterface. It supports both OpenVZ and KVM. Iuse it to manage a few VM's to test stuff on and it works really great.
However, I'm a command line lover, and I thought it would be nice to be able to"Manage" Proxmox VE from a bash shell. And I've written a script to do justthat.
proxbash.sh is a bash script to manage your Proxmox VE server.
Check out my other Proxmox/OpenVZ related articles.
- Add OpenVZ containers
- Remove OpenVZ containers
- Start / Stop OpenVZ containers
- List all OpenVZ containers and KVM virtual machines
- Shell dropper into OpenVZ containers
- Command execution in openvz containers
As you can see there is a lot of OpenVZ and not a lot of KVM. Most of the VM's Iuse are OpenVZ, so for the KVM things you need to use the webinterface.
Or use this:
wget https://raymii.org/s/inc/software/proxbash.sh; chmod +x ./proxbash.sh; ./proxbash.sh
Before you start, edit the script variables:
VAR_PROXMOXHOST="192.168.0.25" #proxmox server IPVAR_PROXMOXSSH="22" #proxmox ssh portVAR_PROXMOXUSER="root" #proxmox ssh userVAR_PROXMOX_NODE="proxmox" #proxmox cluster node name
and set up passwordless key auth to the proxmox node. If you don't do that, youhave to enter the proxmox root password every time.
Also edit the case statement for the templates. Default it has ubuntu 10.04and 12.04 and centos 5 and 6.
Replace $CTID with an openvz ct id. (like 103, 104)
Create a CT
proxbash.sh createct node-hostname node-password node-template node-ram node-disk node-ipproxbash.sh createct prod001 supersecret1 ubuntu12 1024 15 172.20.5.48
proxbash.sh createct node-hostname node-password node-template node-ram node-disk node-ip $CTID
Start/Stop a CT
./proxbash.sh startct ./proxbash.sh startct $CTID ./proxbash.sh stopct./proxbash.sh stopct $CTID
Remove a CT
./proxbash.sh deletect./proxbash.sh deletect $CTID
./proxbash.sh shelldrop $CTID
Execute commands in CT
./proxbash.sh execinct $CTID "commands you -want -to; execute; in the ../ct"
./proxbash.sh listcts./proxbash.sh listvms
Get CT info
./proxbash.sh ctinfo./proxbash.sh ctinfo $CTID
If you like it or use it, please leave a comment.Tags: bash, kvm, openvz, proxmox, proxmox-ve, software, ssh, virtualization