2. Proxmox VE
Proxmox VE is a complete virtualization management solution for
servers. You can virtualize even the most demanding application
workloads running on Linux and Windows Servers.
It is based on the Kernel-based Virtual Machine (KVM) hypervisor and
OpenVZ, the most used solution for container based virtualization.
Proxmox is not about cloud, but virtualization!
And best of all: it's Open Source! (Debian based)
Youtube channel: http://www.youtube.com/user/ProxmoxVE
3. |Features|
Virtualization (KVM)
Containers (OpenVZ)
Command Line Interface
Rich Web Client
Role Based Administration
Multiple Login Modules
RESTful web API
Backup and Restore
Live Snapshots
Proxmox Cluster File System
Live Migrations
VLAN and Resource Management
Storage local or networked (iscsi, nfs, fc and all other supported by debian)
4. Virtualization
Paravirtualization (KVM)
OS Virtualization (OpenVZ)
By RedHat
By Parallels (Virtuozzo)
Needs a Hypervisor (qemu/kvm)
Is the same kernel as the Host
Supports multiple OSes
Supports only linux based OSes
VM Storage are files or volumes.
VM Storage is a directory of the Host
/etc/pve/qemu-server/vmid.conf
/etc/pve/openvz/vmid.conf
Resource Management
Resource Management
5. Command Line Interface
API browser:
# pvesh get
/nodes/<node>/openvz/<vmid>/status/curr
ent
<<JSON>>
Benchmark
# pveperf
Cluster Management
# pvecm status|nodes|...
OpenVZ Management
# vzctl
KVM Management
# qm
Update templates
# pveam update
7. Most valuable features
Virtualization (KVM AND OpenVZ)
|OpenVZ Templates|
Proxmox Cluster
No central management node
|Supports multicast/unicast |
RESTful API
|Perl based (hackable)|
|Allows knife-proxmox plugin|
Backup & Restore
|Scheduling|
Distributed Storage (DRBD, NFS, iSCSI)
|Fault Tolerant Machines|
Multiple Authentication Modules
|Compression|
|Live Snapshot|
|Local (Proxmox)|
Active Project (new release 3.0 RC-2)
8. Contras
Very old kernel 2.6.32 (OpenVZ dropped in kernel 3.x.x)
Doesn't support LXC... yet, but maybe never.
Some issues with backups and stop/starting servers
Lack of firewalling... but you can use iptables, ufw, shorewall...
Cannot run on USB pendrive (as VMware ESXi does)
Doesn't have thinks I love from SmartOS (dtrace, zfs, branded zones, crossbow)
9. Tips and tricks
Use OpenVZ to improve performance when using linux VM
Use KVM when other OSes are really needed
VPN and clusters works really well
"MongoDB on OpenVZ" issue has been solved several years ago
You can easily develop your own tools with ssh + vzctl or qm, or use the API
You can create KVM VM's with storage on LVM directly
You can update to new Turnkey Templates into your Proxmox with
https://github.com/turnkeylinux/pve-patches.git
10. Automated Creation of CT
Shell Scripting is easy, only needs a SSH connection
${SSHCMD} pvectl create ${NEW_CTID}
/var/lib/vz/template/cache/ubuntu-11.10-x86_64-taric4.tar.gz
-netif ifname=eth0,bridge=vmbr0 -onboot 1
-password $PASSWORD -hostname $HOSTNAME
${SSHCMD} pvectl start ${NEW_CTID}
NEW_IP=""
while [ "x${NEW_IP}" = "x" ]; do
NEW_IP=$(${SSHCMD} vzctl exec ${NEW_CTID} ip addr ls dev eth0 | awk '/inet /
{gsub(//24/, "", $2); print $2}')
sleep 1
done
11. knife-proxmox
knife plugin that manages openvz servers and integrates with chef-server through
proxmox REST API
https://rubygems.org/gems/knife-proxmox
Needs a little bit of magic to allow this
$ knife proxmox server list
$ knife proxmox server create
$ knife proxmox server info
$ knife proxmox template list
$ knife proxmox template available
$ knife proxmox server st[art,op]
$ knife proxmox server destroy
Any help is welcome: https://bitbucket.org/jmoratilla/knife-proxmox