Commit Graph

712 Commits

Author SHA1 Message Date
Alexandre Derumier
affd2f88ea add diskio throttling option to drive
This add disk io limit to drive options.

I also add the qemu monitor command, but I din't have added yet to Qemu.pm

>From qemu mailing:

Some available features follow as below:
(1) global bps limit.
   -drive bps=xxx            in bytes/s
(2) only read bps limit
   -drive bps_rd=xxx         in bytes/s
(3) only write bps limit
   -drive bps_wr=xxx         in bytes/s
(4) global iops limit
   -drive iops=xxx           in ios/s
(5) only read iops limit
   -drive iops_rd=xxx        in ios/s
(6) only write iops limit
   -drive iops_wr=xxx        in ios/s
(7) the combination of some limits.
   -drive bps=xxx,iops=xxx

Known Limitations:
(1) #1 can not coexist with #2, #3
(2) #4 can not coexist with #5, #6
(3) When bps/iops limits are specified to a small value such as 511 bytes/s,
this VM will hang up. We are considering how to handle this senario.

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-05-14 06:48:05 +02:00
Dietmar Maurer
41e7bdb916 removed startall/stopall commands
Because we now support startup priorities, and start/stop order must include containers
2012-04-20 09:30:42 +02:00
Dietmar Maurer
59411c4e10 new startup option to define startup order 2012-04-19 14:28:05 +02:00
Dietmar Maurer
71c11a8301 fix bug #147: allow to set migrate_downtime to 0 2012-04-11 10:54:04 +02:00
Alexandre Derumier
e482cec30b add directsync cache mode
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2012-04-10 09:21:28 +02:00
Dietmar Maurer
b7e0c8bf39 use '-no-kvm-pit-reinjection -no-hpet' for win7 and w2k8 2012-04-05 12:34:33 +02:00
Dietmar Maurer
47152e2ee3 fix bug #12: check storage availability early (migrate) 2012-03-30 09:13:31 +02:00
Dietmar Maurer
036e0e2b4b correctly pass hexadecimal numbers with prefix 0x to kvm
This is related to this change in kvm:

http://git.kernel.org/?p=virt/kvm/qemu-kvm.git;a=commitdiff;h=97aa6e9b8f9df37add21d86fac1a9ca6ce7df9b7
2012-03-29 07:12:43 +02:00
Dietmar Maurer
191435c643 only wait 1 second to aquire lock on vm_create
Waiting is not necessary, and we want to avoid delays in the GUI.
2012-03-27 09:02:50 +02:00
Dietmar Maurer
18744ba33f corretcly use tag instead of vlan 2012-03-22 06:30:43 +01:00
Derumier Alexandre
5070f384d1 renamme vlan option to tag
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-03-22 06:27:58 +01:00
Dietmar Maurer
fc1ddcdcae use Digest::SHA instead of Digest::SHA1 2012-03-20 12:25:08 +01:00
Derumier Alexandre
3c720aeac6 add vlan for testing
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-03-20 06:12:46 +01:00
Dietmar Maurer
28ef82d3be use scsi inquiry to test if we can use the scsi-block driver
This is basically the same test as done inside the scsi-block driver. This also works for device-mapper multipath devices.
2012-03-19 10:39:43 +01:00
Dietmar Maurer
7fabe17df2 restrict name to DNS format 'dns-name' 2012-03-13 07:00:27 +01:00
Dietmar Maurer
961bfcb224 fix bug 102: remove stale status file on stop 2012-03-01 12:54:06 +01:00
Dietmar Maurer
0581fe4fd6 save description as comment 2012-03-01 08:13:14 +01:00
Dietmar Maurer
684bcdd7a4 revert tablet mice fix 2012-02-29 09:47:31 +01:00
Derumier Alexandre
ce332eeb58 fix tablet mice as default when live migrate
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-02-29 06:49:57 +01:00
Derumier Alexandre
5b805e5081 Support new cpu models
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-02-22 07:18:07 +01:00
Dietmar Maurer
da21653bfb ignore -tdf (avoid kvm warning) - this is no longer needed 2012-02-13 11:18:09 +01:00
Derumier Alexandre
95d6343bfa don't try to hotplug/unplug is device exist/don't exist
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-02-06 07:26:38 +01:00
Dietmar Maurer
ae57f6b352 cleanup update_vm - factor out code to make is simpler 2012-02-03 10:23:50 +01:00
Dietmar Maurer
1858638fe3 replace change_config_nolock with update_config_nolock
We now use cfs_file_write() in order to avoid race conditions between
file IO and cfs operations (read after write works now).
2012-02-02 14:18:41 +01:00
Dietmar Maurer
5d7a6767be cleanup update_vm - carefully reload config after changes
Split out code to delete drive into delete_drive()

Always hotplug after config is written and reloaded.

Do not revert config if hotplug fails.

Do not safe config in add_unused_volume.
2012-02-02 10:57:16 +01:00
Dietmar Maurer
a0d1b1a2fe start adding permission checks 2012-02-02 06:57:47 +01:00
Derumier Alexandre
26ee04b6a0 add ahci controller
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-02-02 06:21:47 +01:00
Derumier Alexandre
cdb0931f68 add sata hdd support
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-02-02 06:21:42 +01:00
Derumier Alexandre
5f0c4c32f2 cleanup warning messages
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-30 06:13:14 +01:00
Derumier Alexandre
2630d2a958 add qemu_netdevadd, qemu_netdevdel and add them in hotplug code
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-30 06:06:24 +01:00
Derumier Alexandre
cc4d61824c add print_netdevice_full, print_netdev_full subs
and change code to use it

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-30 05:58:29 +01:00
Dietmar Maurer
afdb31d5f8 removed trailing whitespace 2012-01-27 09:35:26 +01:00
Derumier Alexandre
c2a64aa7cf update_vm rework
now we write conf after each option.

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-27 05:55:00 +01:00
Derumier Alexandre
fcdb011702 rework of hotplug/unplug in Qemu.pm
manage errors on more than 1 device
use unused disk for new created disk but failed hotplug

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-23 09:15:57 +01:00
Derumier Alexandre
a4f091a073 add scsi disk hotplug/unplug
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-23 09:14:31 +01:00
Derumier Alexandre
cfc817c710 add lsi controller hotplug
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-23 09:13:01 +01:00
Derumier Alexandre
5e5dcb7362 create qemu_deviceadd, qemu_devicedel, qemu_driveadd, qemu_drivedel, qemu_deviceaddverify, qemu_devicedelverify
and replace code in vm_deviceplug/vm_deviceunplug

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-23 09:09:15 +01:00
Derumier Alexandre
7ebe888a03 print_drivedevice_full : change deviceid: device-scsi to scsi and device-ide to ide
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-23 09:07:21 +01:00
Derumier Alexandre
ec21aa112d rename vm_deviceadd to vm_deviceplug, and vm_devicedel to vm_deviceunplug
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-23 09:06:24 +01:00
Derumier Alexandre
69b6ae0ce3 rename scsicontroller deviceid from scsi0/1 to lsi0/1
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2012-01-23 09:05:34 +01:00
Dietmar Maurer
f0cab979e5 catch exception when storage does not exists 2012-01-17 13:12:40 +01:00
Dietmar Maurer
254575e971 fix bug #81: do no deactivate volumes in vzdump stop mode
We add a keepActive parameter to stop/shutdown API.
2012-01-17 11:56:56 +01:00
Dietmar Maurer
e95fe75f86 use 'da' instead of 'dk' for Danish keyboard
Qemu use that name.
2012-01-09 11:51:28 +01:00
Dietmar Maurer
745fed70c0 do not raise exceptions in vm_stop_cleanup 2011-12-16 06:34:35 +01:00
Dietmar Maurer
9269013a93 implement forceStop for vm_shutdown 2011-12-15 12:58:29 +01:00
Derumier Alexandre
231f2e13cb scsi-block auto detection
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-12-13 10:45:39 +01:00
Dietmar Maurer
0888fdce30 fix bootorder 2011-12-08 11:41:58 +01:00
Dietmar Maurer
1c06086781 do not use ehci by default
Because the ehci driver blocks migration (ehci is currently not migratable)
2011-12-08 10:26:59 +01:00
Dietmar Maurer
2b5569777b use cache=none by default (for raw format) 2011-12-07 12:02:34 +01:00
Dietmar Maurer
3b408e826c use new bootindex option 2011-12-07 11:54:31 +01:00
Dietmar Maurer
2ed36a412c code cleanup 2011-12-07 11:41:27 +01:00
Dietmar Maurer
a3c5221310 fix version parser for qemu-kvm 1.0 2011-12-07 11:16:57 +01:00
Derumier Alexandre
2b05ac1331 add ide-cd, ide-hd, scsi-cd, scsi-hd, scsi-block to device syntax
ide-cd, ide-hd replace old ide-drive legacy syntax
scsi-cd, iscsi-hd replace old ide-drive legacy syntax
scsi-block is new in qemu 1.0

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-12-07 06:24:36 +01:00
Dietmar Maurer
bbbe5146ff fix stopall 2011-11-29 11:14:26 +01:00
Dietmar Maurer
15f231e1c7 do not call check_lock() for sendkey 2011-11-25 13:20:58 +01:00
Dietmar Maurer
ff1a2432c8 activate LVM LVs more carefully
And remove syslog whenever possible (we run most commands as tasks, so
the output is loged anyways)
2011-11-25 08:08:27 +01:00
Dietmar Maurer
48e1a963f4 set correct migrate speed
We overwrite slow kvm default.
2011-11-23 09:13:33 +01:00
Dietmar Maurer
ae4915a20d fix cpu usage 2011-11-18 09:35:32 +01:00
Dietmar Maurer
5534dd1ad1 add cache=unsafe mode 2011-11-18 05:48:52 +01:00
Dietmar Maurer
3ada46c9b1 use split_args from PVE::Tools 2011-10-25 12:19:36 +02:00
Dietmar Maurer
2415a44601 use shellquote from PVE::Tools 2011-10-25 11:37:56 +02:00
Dietmar Maurer
4925fe8ec1 fix shell quoting 2011-10-20 06:39:45 +02:00
Dietmar Maurer
9c502e26f3 enable piped input with qmrestore 2011-10-19 11:27:42 +02:00
Derumier Alexandre
58dc808de2 bugfix scsicontroller
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-19 06:06:09 +02:00
Dietmar Maurer
51586c3a4c implement unique option for restore
Also try to convert old vlanX to new netX syntax.
2011-10-18 09:14:05 +02:00
Dietmar Maurer
a6af7b3e35 destroy old data when restore with --force 2011-10-18 07:42:29 +02:00
Dietmar Maurer
3e16d5fc60 implement qmrestore
Restore is a special case of create_vm.
2011-10-17 13:51:05 +02:00
Derumier Alexandre
f19d1c4790 Fix/cleanup disk hotplug
- pass $conf to create_disks sub
- add some checks on results of "drive_del","drive_add","device_del","device_add"
- replace "sleep 2" by iterative sub vm_waitfordevicecleanup

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-14 10:20:05 +02:00
Dietmar Maurer
1dc4f49676 further code cleanups 2011-10-11 13:30:18 +02:00
Dietmar Maurer
e8b9c17cac use 'boolean' for hotplug option
cleanup coding style
2011-10-11 13:22:40 +02:00
Derumier Alexandre
2ddd3d2e46 add a hook to call vm_deviceadd when the disk in config file are added
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-11 13:12:46 +02:00
Derumier Alexandre
873c2d698f add vm_devicedel sub
use qm monitor to hot-unplug device.

Currently only virtio disk

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-11 13:12:28 +02:00
Derumier Alexandre
a4dea33125 add vm_deviceadd sub
use qm monitor to hotplug pci device

currently only virtio disk

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-11 13:12:13 +02:00
Derumier Alexandre
86fdcfb229 add vm_devices_list sub
parse qemu "info pci" result

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-11 13:11:54 +02:00
Derumier Alexandre
2ff09f52e8 Add hotplug option
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-11 13:11:05 +02:00
Dietmar Maurer
5fdbe4f023 create background tasks 2011-10-10 13:17:40 +02:00
Dietmar Maurer
9f91ff0281 use random_ether_addr() from PVE::Tools 2011-10-05 09:24:49 +02:00
Derumier Alexandre
e5f7f8ed0f remove net6 reservation and add comments for addr1, 2, 29 2011-10-05 06:40:42 +02:00
Derumier Alexandre
f290f8d92b fix net device pci addr 2011-10-04 09:06:56 +02:00
Derumier Alexandre
4513fd8304 fix scsi controllers pci addr 2011-10-04 09:06:52 +02:00
Derumier Alexandre
0a40e8eab5 fix watchdog pci addr
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-04 07:54:21 +02:00
Derumier Alexandre
b78ebef7e7 fix hostpci addr
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-04 07:54:16 +02:00
Derumier Alexandre
13b5a75337 Fix balloon0 device pci addr
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-10-03 07:44:58 +02:00
Dietmar Maurer
32baffb4e0 change default boot order to cdn 2011-09-29 07:43:05 +02:00
Dietmar Maurer
5ee957cced only list 'qemu' VMs 2011-09-26 12:20:05 +02:00
Dietmar Maurer
7878afeb10 cleanup balloon patch - removed debug code 2011-09-16 06:57:54 +02:00
Derumier Alexandre
13a4862059 Balloon ugly hack
add balloon:  parameter to config file

and set balloon at vm start.

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-16 06:40:12 +02:00
Dietmar Maurer
6b64503eb2 fix coding style 2011-09-15 09:11:27 +02:00
Dietmar Maurer
e6c3b671bf fix online migration 2011-09-15 08:31:17 +02:00
Derumier Alexandre
72a063e494 add print_pci_addr
contain devices pci addr and bus mapping
return formated string with bus=pci.x,addr=x

also in this commit, use it for virtio disk

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-15 08:08:47 +02:00
Dietmar Maurer
3ea94c60d2 move code from qmigrate into PVE/QemuMigrate.pm
and make migrate a subcommand of qm
2011-09-14 13:33:34 +02:00
Dietmar Maurer
694fcad480 use new PVE::ProcFSTools::read_proc_pid_stat() 2011-09-14 07:55:34 +02:00
Dietmar Maurer
19672434df delete trailing whitespaces 2011-09-12 12:26:00 +02:00
Dietmar Maurer
7f0b5bebc6 check hvm support before starting VM 2011-09-12 11:03:14 +02:00
Dietmar Maurer
34978be308 fix serial/parallel option - check if device really exists 2011-09-12 08:59:05 +02:00
Dietmar Maurer
e0ab7331aa remove support for old hostusb syntax 2011-09-12 08:41:28 +02:00
Dietmar Maurer
ca0cef2624 Simplify serial/parallel option parser
Remove verify()/parse() methods, because the json schema does
that job already (pattern option)
2011-09-12 07:44:02 +02:00
Dietmar Maurer
2fe1a152f4 Simplify schema for serial/parallel options (use pattern) 2011-09-12 07:08:01 +02:00
Derumier Alexandre
1989a89c95 parallel : new qemu syntax V2
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-12 06:52:34 +02:00
Derumier Alexandre
bae179aa1c serial : new qemu syntax V2
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-12 06:51:47 +02:00
Derumier Alexandre
040b06b73e Hostpci rework v4
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-12 06:50:01 +02:00
Dietmar Maurer
0d29ab3bd2 fix build error 2011-09-09 14:18:11 +02:00
Derumier Alexandre
941e0c42a5 Add scsi controllers V2
only if scsi disk exists

Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-09 12:20:19 +02:00
Dietmar Maurer
64e1340181 New method to check if VM uses local resources 2011-09-09 12:13:21 +02:00
Dietmar Maurer
a78ccf26fc Add node parameter to config_file()
That way we can get the filename for VMs on remove nodes.
2011-09-09 09:47:54 +02:00
Dietmar Maurer
0ea9541da0 Add watchdog support 2011-09-08 11:39:56 +02:00
Derumier Alexandre
abb39b66d7 convert old monitor syntax to chardev
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-08 08:27:34 +02:00
Derumier Alexandre
ca916eccfb add print_drivedevice_full sub for disk -device syntax
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-08 08:09:25 +02:00
Derumier Alexandre
3ebfcc8613 change print_drive sub to new device syntax
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-08 08:03:46 +02:00
Derumier Alexandre
f62db2a438 Set max nics=6, max virtio disk=6 and scsi disk to 14 (because we cannot set more than 7 disk by scsi controller)
Signed-off-by: Derumier Alexandre <aderumier@odiso.com>
2011-09-08 07:43:49 +02:00
Dietmar Maurer
554ac7e7b7 Add digest to prevent concurrent changes 2011-09-07 11:41:34 +02:00
Dietmar Maurer
1e3baf05f2 imported from svn 'qemu-server/pve2' 2011-08-23 07:47:04 +02:00