]>
git.proxmox.com Git - qemu-server.git/log
Dietmar Maurer [Wed, 31 May 2017 07:21:50 +0000 (09:21 +0200)]
bump version to 5.0-6
Wolfgang Bumiller [Tue, 30 May 2017 13:30:15 +0000 (15:30 +0200)]
fix burst length parameter names and pass them to qemu
bps_max_length & friends were wrongly named and were only
passed to qemu when hot-applying changes. They can only
be passed via the command line with their new names. For
consistency let's rename them all, that way they're all in
one place.
Fixes #1195 (for real this time).
Wolfgang Bumiller [Tue, 30 May 2017 13:30:14 +0000 (15:30 +0200)]
fix #1229: more explicit spice port allocation
We cannot look for ports on "any" wildcard address while
letting qemu bind to "localhost", this may lead to a qemu
process occupying ::1 while the next search successfully
finds the same port available for IPv4's '*' address.
Instead, we now lookup the IP of the desired family for
'localhost'. Note that while we could simply be hardcoding
::1 or 127.0.0.1, with this code we are protocol agnostic.
Dietmar Maurer [Wed, 24 May 2017 07:20:06 +0000 (09:20 +0200)]
migrate: aquire guest_migration_lock during migration
To block replication jobs.
Dietmar Maurer [Tue, 23 May 2017 16:01:13 +0000 (18:01 +0200)]
do not allow destroy if there are replication jobs
Dietmar Maurer [Tue, 9 May 2017 14:45:52 +0000 (16:45 +0200)]
remove 'replicate' configuration - we will store that in another file
Thomas Lamprecht [Tue, 23 May 2017 08:39:45 +0000 (10:39 +0200)]
improve error on '{full, linked} clone not available' error
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Fabian Grünbichler [Tue, 23 May 2017 12:23:52 +0000 (14:23 +0200)]
print_cpu_device: remove unused variable
Tobias Böhm [Mon, 15 May 2017 14:16:12 +0000 (16:16 +0200)]
Fix #1384: add missing decrement to calculation of socket-id
For calculation of "current_core" the input variable id is decremented.
For calculation of "current_socket" this decrement was missing resulting
in a wrong value when "cores" is set to 1.
Signed-off-by: Tobias Böhm <tb@robhost.de>
Wolfgang Bumiller [Tue, 23 May 2017 07:04:46 +0000 (09:04 +0200)]
migrate: pass ssh_info to storage_migrate
Fabian Grünbichler [Wed, 17 May 2017 10:40:58 +0000 (12:40 +0200)]
build: run tests on build
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 17 May 2017 10:40:57 +0000 (12:40 +0200)]
tests: fix broken snapshot create tests
by mocking de/activate vmstate volumes. these were broken by
3a8deb551f2c7648865437961b3593d11bf0591b , which introduced
activating/deactivating vmstate volumes for KRBD
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 17 May 2017 10:40:56 +0000 (12:40 +0200)]
tests: fix broken snapshot delete tests
these broke when the additional "snapshot-delete" lock was
introduced
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 17 May 2017 10:40:55 +0000 (12:40 +0200)]
tests: exit with -1 in case of failures
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dominik Csapak [Tue, 16 May 2017 14:21:01 +0000 (16:21 +0200)]
use ReuseAddr for vncproxy
to avoid "Socket already in use" errors, when quickly opening/closing
console sessions on the webinterface
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Wolfgang Bumiller [Mon, 24 Apr 2017 09:12:29 +0000 (11:12 +0200)]
Fix #1361: create disk: stricter parsing of storage:size
This fixes paths such as
/dev/disk/by-id/some-ID:0.5
being interpreted as a request to create a 0.5G-sized disk
in the storage named '/dev/disk/by-id/some-ID'.
Dietmar Maurer [Sat, 6 May 2017 15:13:31 +0000 (17:13 +0200)]
move get_replicatable_volumes from QemuServer.pm to QemuConfig.pm
Dietmar Maurer [Sat, 6 May 2017 15:00:20 +0000 (17:00 +0200)]
PVE::QemuServer::create_disks - run code inside eval
So that we can free allocated volumes ins something fails.
Thi bug was introduced with commit
ae57f6b352242fed69da851f15f976095d290833
Dietmar Maurer [Sat, 6 May 2017 13:11:46 +0000 (15:11 +0200)]
get_replicatable_volumes: replacemnet for PVE::ReplicationTools::get_syncable_guestdisks()
correctly scan for volumes inside snapshots.
This will also solve the cyclic package dependency propblem.
Dietmar Maurer [Sat, 6 May 2017 08:46:21 +0000 (10:46 +0200)]
rename drive 'replica' property to 'replicate'
Dietmar Maurer [Sat, 6 May 2017 08:39:43 +0000 (10:39 +0200)]
Revert "Integrate replica in the qemu migration."
This reverts commit
63d02c707429efcd509ddb14d3fd560cfcf4979e .
The commit changes the configuration before the VM is actually
migrated, so it is possible to have a wrong configuration when
migration fails for some reason. Also, I am quite unsure if
this automatic target change is really wanted. The patch also
contains wrong refereces to $self->{opts}->{node}.
Dietmar Maurer [Sat, 6 May 2017 08:38:06 +0000 (10:38 +0200)]
Revert "migrate: cleanup replica volume skip condition"
This reverts commit
6e8044dcea4187d076f637b9e5d3e153d080087f .
Dietmar Maurer [Sat, 6 May 2017 08:35:08 +0000 (10:35 +0200)]
use a single replicate property (format pve-replicate)
Emmanuel Kasper [Tue, 2 May 2017 09:26:53 +0000 (11:26 +0200)]
add description of read/writes statistics in vzdump output
since this statistics are note really described, sometimes users
miss that their slow backups are caused by slow reads
Dominik Csapak [Mon, 23 Jan 2017 12:51:21 +0000 (13:51 +0100)]
start vncproxy worker in the background
this allows it to use the vncproxy api call to use from pvesh,
because before we waited until the task finished to get the vncticket
which was too late
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Wolfgang Bumiller [Fri, 28 Apr 2017 12:02:38 +0000 (14:02 +0200)]
bump version to 5.0-5
Wolfgang Bumiller [Fri, 28 Apr 2017 08:40:22 +0000 (10:40 +0200)]
api: replica: safer config update
Configuration updates should only happen if and after their
change has successfully taken effect.
Wolfgang Bumiller [Fri, 28 Apr 2017 08:34:46 +0000 (10:34 +0200)]
migrate: cleanup replica volume skip condition
Wolfgang Bumiller [Fri, 28 Apr 2017 08:14:26 +0000 (10:14 +0200)]
whitespace fixup
Wolfgang Link [Mon, 24 Apr 2017 15:15:42 +0000 (17:15 +0200)]
Destroy all remote and local replication datasets when a VM will destroyed.
Wolfgang Link [Mon, 24 Apr 2017 15:15:41 +0000 (17:15 +0200)]
Integrate replica in the qemu migration.
Now it is possible to migrate a VM offline when replica is enabled.
It will reduce replication to an minimal amount.
Wolfgang Link [Mon, 24 Apr 2017 15:15:40 +0000 (17:15 +0200)]
Insert new properties in the Qemu config for the PVE Replica.
This patch will include all necessary properties for the replication.
Also will it enable and disable a replication job
when appointed flags are set or deleted.
Alexandre Derumier [Fri, 28 Apr 2017 07:30:55 +0000 (09:30 +0200)]
add rerror for all drives
it was missing for scsi, and it's supported for all kind of drive
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Wolfgang Bumiller [Fri, 21 Apr 2017 10:06:34 +0000 (12:06 +0200)]
bump version to 5.0-4
Alexandre Derumier [Fri, 21 Apr 2017 01:39:34 +0000 (03:39 +0200)]
live storage migration : fix check of target storage availability
if we define a different target storeid for remote node,
and that storage is not available on source node
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Wolfgang Bumiller [Fri, 21 Apr 2017 09:49:32 +0000 (11:49 +0200)]
bump version to 5.0-3
Fabian Grünbichler [Wed, 19 Apr 2017 13:19:50 +0000 (15:19 +0200)]
migrate: clarify comment
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 19 Apr 2017 13:19:49 +0000 (15:19 +0200)]
migrate: cleanup nbd source disks earlier
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 19 Apr 2017 13:19:48 +0000 (15:19 +0200)]
fix #1338: migrate: stop nbd before resuming
since Qemu 2.9, block device write access is limited to one
writer unless shared_rw is set to true. there is an
exception for live-migrating local disks via NBD as long as
the VM is suspended.
stop the NBD server before resuming the VM accordingly to
unbreak local disk live-migration.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 19 Apr 2017 13:19:47 +0000 (15:19 +0200)]
start: keep VM paused when migrating via unix socket
this (correctly!) errored out with Qemu 2.9 when live-migrating
local disks, because the NBD server blocks the VM from being
resumed. was probably missed when migrating via unix domains
was originally introduced..
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dominik Csapak [Tue, 18 Apr 2017 07:24:40 +0000 (09:24 +0200)]
turn off alarm timer after accepting a vnc connection
else we always get a failed task when the vnc connection is
running longer than $timeout
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Fabian Grünbichler [Mon, 10 Apr 2017 14:28:46 +0000 (16:28 +0200)]
bump version to 5.0-2
Wolfgang Bumiller [Mon, 3 Apr 2017 12:08:19 +0000 (14:08 +0200)]
don't compare booleans
a) because perl isn't THAT bad of a language that you'd need
to do this and b) because JSON::XS version 2.90 "dropped"
this "feature"
Fabian Grünbichler [Fri, 17 Mar 2017 10:01:32 +0000 (11:01 +0100)]
update_vm: check whether opt is set before deleting
otherwise we get lots uninitialized warnings:
update VM 600: -delete unused7
Use of uninitialized value $data in split at /usr/share/perl5/PVE/JSONSchema.pm line 533.
Use of uninitialized value in concatenation (.) or string at /usr/share/perl5/PVE/API2/Qemu.pm line 1012.
Use of uninitialized value $volid in pattern match (m//) at /usr/share/perl5/PVE/QemuServer.pm line 1824.
Use of uninitialized value $volid in pattern match (m//) at /usr/share/perl5/PVE/Storage/Plugin.pm line 201.
Use of uninitialized value $volid in concatenation (.) or string at /usr/share/perl5/PVE/Storage/Plugin.pm line 205.
vs:
update VM 600: -delete unused7
cannot delete 'unused7' - not set in current configuration!
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Wolfgang Bumiller [Mon, 13 Mar 2017 11:00:25 +0000 (12:00 +0100)]
bump version to 5.0-1
Wolfgang Bumiller [Mon, 13 Mar 2017 10:57:13 +0000 (11:57 +0100)]
bump version to 4.0-110
Emmanuel Kasper [Wed, 1 Mar 2017 09:31:54 +0000 (10:31 +0100)]
Use backticks instead of single quotes in qm resize description
Single quoted text in asciidoc is rendered in man pages
with underlines, which makes the '+' symbol very similar to '+/-'
Backticks are rendered with monospace text in HTML, normal text
in man pages, and still readable in raw format.
Fabian Grünbichler [Tue, 28 Feb 2017 11:46:45 +0000 (12:46 +0100)]
defined() style cleanup
Wolfgang Link [Thu, 23 Feb 2017 13:44:54 +0000 (14:44 +0100)]
Check array existed before use.
This triggers if a qemu guest has a local unused disk.
The disk will migrate by offline disk migration, so it is not in the target_drives.
Wolfgang Bumiller [Tue, 7 Feb 2017 11:18:34 +0000 (12:18 +0100)]
remove netcat6 dependency
By simply using a socket.
Dominik Csapak [Fri, 17 Feb 2017 14:54:06 +0000 (15:54 +0100)]
add Skylake to CPU Models
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Emmanuel Kasper [Thu, 16 Feb 2017 09:39:35 +0000 (10:39 +0100)]
Improve error message when trying to shrink a volume, fix typo
Wolfgang Bumiller [Mon, 13 Feb 2017 11:00:26 +0000 (12:00 +0100)]
fix bad scsihw default value check
This was checking for scsihw being set in both branches
whereas lsi is also the default. Added the missing 'not'.
Fixes a bug where a VM with a disk with a scsi index >= 7
refused to start due to an invalid scsi id.
Reported-by: Friedrich Ramberger <f.ramberger@proxmox.com>
Wolfgang Bumiller [Thu, 9 Feb 2017 10:48:03 +0000 (11:48 +0100)]
fix dependency
Wolfgang Bumiller [Thu, 9 Feb 2017 10:41:01 +0000 (11:41 +0100)]
bump version to 4.0-109
Wolfgang Bumiller [Tue, 7 Feb 2017 13:55:48 +0000 (14:55 +0100)]
skiplock standard option was moved to pve-common
this now need libpve-common-perl >= 4.0-92
Wolfgang Bumiller [Mon, 6 Feb 2017 15:13:30 +0000 (16:13 +0100)]
don't pull HA modules for doc-generation
Wolfgang Bumiller [Mon, 6 Feb 2017 15:13:08 +0000 (16:13 +0100)]
buildsys: use fakeroot for dpkg-deb
Wolfgang Bumiller [Mon, 6 Feb 2017 15:12:48 +0000 (16:12 +0100)]
buildsys: use gzip -n to disable timestamps
Wolfgang Bumiller [Mon, 6 Feb 2017 15:12:18 +0000 (16:12 +0100)]
buildsys: set PVE_GENERATING_DOCS for completions
Wolfgang Bumiller [Tue, 31 Jan 2017 12:54:56 +0000 (13:54 +0100)]
bump version to 4.0-108
Wolfgang Bumiller [Tue, 31 Jan 2017 12:39:17 +0000 (13:39 +0100)]
buildsys: job-safe deb target
Fabian Grünbichler [Wed, 11 Jan 2017 14:51:42 +0000 (15:51 +0100)]
change TLS cipher suite to HIGH
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 25 Jan 2017 13:58:14 +0000 (14:58 +0100)]
fix #1260: convert moved template disk to base
this was already possible manually via "qm template", but
doing it automatically when moving a disk of a template
makes more sense.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 25 Jan 2017 08:48:55 +0000 (09:48 +0100)]
bump version to 4.0-107
Fabian Grünbichler [Wed, 25 Jan 2017 08:46:27 +0000 (09:46 +0100)]
add dependencies for common packages
libpve-guest-common-perl
libpve-common-perl
Dietmar Maurer [Wed, 25 Jan 2017 08:19:33 +0000 (09:19 +0100)]
bump version to 4.0-106
Fabian Grünbichler [Tue, 24 Jan 2017 10:25:52 +0000 (11:25 +0100)]
only use scsi-block with explicit opt-in
since it can cause I/O errors and data corruption in low
memory or highly fragmented memory situations since Qemu 2.7
use scsi-hd by default instead
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dietmar Maurer [Thu, 19 Jan 2017 08:20:30 +0000 (09:20 +0100)]
bump version to 4.0-105
Dietmar Maurer [Wed, 18 Jan 2017 16:22:34 +0000 (17:22 +0100)]
use new PVE::Storage::check_volume_access()
Dmitry Petuhov [Mon, 16 Jan 2017 07:45:10 +0000 (10:45 +0300)]
Set zero $size and continue if volume_resize() returns false
Needed for some storages with backing block devices to do oonlinr resize.
Signed-off-by: Dmitry Petuhov <mityapetuhov@gmail.com>
Dietmar Maurer [Thu, 12 Jan 2017 13:15:27 +0000 (14:15 +0100)]
bump version to 4.0-104
Dietmar Maurer [Thu, 12 Jan 2017 13:10:24 +0000 (14:10 +0100)]
add setup_environment hook to CLIHandler classes
Wolfgang Bumiller [Mon, 9 Jan 2017 14:33:10 +0000 (15:33 +0100)]
cleanup: drop superfluous condition in assignment
Its use later on already uses itself as condition.
Alexandre Derumier [Mon, 9 Jan 2017 13:36:24 +0000 (14:36 +0100)]
add romfile option to hostpci
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Alexandre Derumier [Fri, 6 Jan 2017 09:15:07 +0000 (10:15 +0100)]
add with-local-disks option for live storage migration
As Fabian as required,
add an extra flag "with-local-disks" to enable live storage migration with localdisk.
default target storage is same sid than source, this can be overrided with
"targetstorage" option.
I will try improve this later, with optionnal mapping, disk by disk.
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Wolfgang Bumiller [Thu, 5 Jan 2017 08:54:07 +0000 (09:54 +0100)]
cleanup: error messages
Wolfgang Bumiller [Thu, 5 Jan 2017 08:40:44 +0000 (09:40 +0100)]
drive-mirror: bump timeout to 5s, add 30s inactivity timeout
Wolfgang Bumiller [Thu, 5 Jan 2017 08:39:13 +0000 (09:39 +0100)]
drive-mirror: warn use POSIX::_exit on exec failure
Wolfgang Bumiller [Thu, 5 Jan 2017 08:16:28 +0000 (09:16 +0100)]
cleanup: whitespaces & style
Alexandre Derumier [Tue, 3 Jan 2017 14:03:19 +0000 (15:03 +0100)]
live clone_vm : suspend or freezefs before block-job-cancel
if qga is enabled, we try to freeze the fs before cancelling block job.
if not , we pause the vm.
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Alexandre Derumier [Tue, 3 Jan 2017 14:03:18 +0000 (15:03 +0100)]
add socat and unix socket for storage migration
This is a workaround for nbd infinite timeout connect
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Alexandre Derumier [Tue, 3 Jan 2017 14:03:17 +0000 (15:03 +0100)]
add live storage migration with vm migration
This allow to migrate disks on local storage to a remote node storage.
When the target node start, a new volumes are created and exposed through qemu embedded nbd server.
qemu drive-mirror is launch on source vm for each disk with nbd server as target.
when drive-mirror reach 100% of 1 disk, we don't complete the block jobs and begin mirror of next disk.
(mirroring are parralel, but we try to mirroring them 1 by 1 to avoid storage && network overload)
Then we live migrate the vm to destination node. (drive-mirror still occur at the same time).
We the vm is livemigrate (source vm paused, target vm pause), we complete the block jobs mirror.
When is done we stop the source vm and resume the target vm
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Alexandre Derumier [Tue, 3 Jan 2017 14:03:16 +0000 (15:03 +0100)]
add qm nbdstop
we use it to stop remote nbd server
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Alexandre Derumier [Tue, 3 Jan 2017 14:03:15 +0000 (15:03 +0100)]
add targetstorage to vm_start
This will create a new drive for each local drive found,
and start the vm with this new drives.
if targetstorage == 1, we use same sid than original vm disk
a nbd server is started in qemu and expose local volumes to network port
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Alexandre Derumier [Tue, 3 Jan 2017 14:03:14 +0000 (15:03 +0100)]
clone live vm : add support for multiple jobs
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Alexandre Derumier [Tue, 3 Jan 2017 14:03:13 +0000 (15:03 +0100)]
qemu_drive_mirror : handle multiple jobs
we can use multiple drive_mirror in parralel.
block-job-complete can be skipped, if we want to add more mirror job later.
also add support for nbd uri to qemu_drive_mirror
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Alexandre Derumier [Tue, 3 Jan 2017 14:03:12 +0000 (15:03 +0100)]
qmpclient : block-job-(complete|cancel) : set timeout to 10min
like query-block-jobs.
qmp socket can be busy when block job are running
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
Dietmar Maurer [Thu, 22 Dec 2016 11:41:13 +0000 (12:41 +0100)]
bump version to 4.0-103
Fabian Grünbichler [Tue, 20 Dec 2016 11:30:57 +0000 (12:30 +0100)]
destroy_vm: allow vdisk_free to fail
otherwise we end up with undeletable VM configs in case
vdisk_free fails (which could happen because of cluster-wide
lock contention, storage problems, ..).
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Emmanuel Kasper [Tue, 20 Dec 2016 10:33:01 +0000 (11:33 +0100)]
Display volume size in log when doing a volume backup
Output before this patch
INFO: include disk 'scsi0' 'file=pve4tank:vm-402-disk-1'
Output after this patch:
INFO: include disk 'scsi0' 'file=pve4tank:vm-402-disk-1' 64G
we're mainly intersted by the volume size here, it was requested in #351
Dietmar Maurer [Tue, 20 Dec 2016 09:13:36 +0000 (10:13 +0100)]
bump version to 4.0-102
and remove useless RELEASE
Dietmar Maurer [Tue, 20 Dec 2016 09:11:56 +0000 (10:11 +0100)]
avoid "No balloon device has been activated" warnings in vmstatus
Fabian Grünbichler [Mon, 5 Dec 2016 11:39:24 +0000 (12:39 +0100)]
bump version to 4.0-101
Dominik Csapak [Mon, 5 Dec 2016 10:21:15 +0000 (11:21 +0100)]
allow migration of local qcow2 snapshots
we can migrate local snapshots when on zfs or dir storage with qcow2,
but the check was incorrect
we checked for if (zfs && !qcow2) instead of if (zfs || qcow2)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Fri, 2 Dec 2016 17:51:23 +0000 (18:51 +0100)]
bump version to 4.0-100
Thomas Lamprecht [Fri, 2 Dec 2016 16:55:29 +0000 (17:55 +0100)]
allow insecure migrations from older qemu-servers
When trying to migrate a VM from a node with qemu server <= 4.0-92 to
a node with qemu server >= 4.0-93 we failed as the remote qemu-server
got no explicit migration_type' from the older qemu server on the
source.
Check if migration_type is defined on a incoming migration start, if
not set it.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Thu, 1 Dec 2016 06:59:24 +0000 (07:59 +0100)]
bump version to 4.0-99
Dietmar Maurer [Thu, 1 Dec 2016 06:55:51 +0000 (07:55 +0100)]
qm agent: remove 'guest-' prefix from commands
Dietmar Maurer [Thu, 1 Dec 2016 06:49:30 +0000 (07:49 +0100)]
qm agent: pass command as second required argument
usage: qm agent <vmid> <command>