Revision e43d4f9f
b/lib/constants.py | ||
---|---|---|
434 | 434 |
HV_DEVICE_MODEL = "device_model" |
435 | 435 |
HV_INIT_SCRIPT = "init_script" |
436 | 436 |
HV_MIGRATION_PORT = "migration_port" |
437 |
HV_MIGRATION_BANDWIDTH = "migration_bandwidth" |
|
438 |
HV_MIGRATION_DOWNTIME = "migration_downtime" |
|
437 | 439 |
HV_USE_LOCALTIME = "use_localtime" |
438 | 440 |
HV_DISK_CACHE = "disk_cache" |
439 | 441 |
HV_SECURITY_MODEL = "security_model" |
... | ... | |
465 | 467 |
HV_DEVICE_MODEL: VTYPE_STRING, |
466 | 468 |
HV_INIT_SCRIPT: VTYPE_STRING, |
467 | 469 |
HV_MIGRATION_PORT: VTYPE_INT, |
470 |
HV_MIGRATION_BANDWIDTH: VTYPE_INT, |
|
471 |
HV_MIGRATION_DOWNTIME: VTYPE_INT, |
|
468 | 472 |
HV_USE_LOCALTIME: VTYPE_BOOL, |
469 | 473 |
HV_DISK_CACHE: VTYPE_STRING, |
470 | 474 |
HV_SECURITY_MODEL: VTYPE_STRING, |
... | ... | |
732 | 736 |
HV_DISK_TYPE: HT_DISK_PARAVIRTUAL, |
733 | 737 |
HV_USB_MOUSE: '', |
734 | 738 |
HV_MIGRATION_PORT: 8102, |
739 |
HV_MIGRATION_BANDWIDTH: 32, # MiB/s |
|
740 |
HV_MIGRATION_DOWNTIME: 30, # ms |
|
735 | 741 |
HV_USE_LOCALTIME: False, |
736 | 742 |
HV_DISK_CACHE: HT_CACHE_DEFAULT, |
737 | 743 |
HV_SECURITY_MODEL: HT_SM_NONE, |
... | ... | |
748 | 754 |
|
749 | 755 |
HVC_GLOBALS = frozenset([ |
750 | 756 |
HV_MIGRATION_PORT, |
757 |
HV_MIGRATION_BANDWIDTH, |
|
751 | 758 |
]) |
752 | 759 |
|
753 | 760 |
BEC_DEFAULTS = { |
b/lib/hypervisor/hv_kvm.py | ||
---|---|---|
78 | 78 |
constants.HV_USB_MOUSE: |
79 | 79 |
hv_base.ParamInSet(False, constants.HT_KVM_VALID_MOUSE_TYPES), |
80 | 80 |
constants.HV_MIGRATION_PORT: hv_base.NET_PORT_CHECK, |
81 |
constants.HV_MIGRATION_BANDWIDTH: hv_base.NO_CHECK, |
|
82 |
constants.HV_MIGRATION_DOWNTIME: hv_base.NO_CHECK, |
|
81 | 83 |
constants.HV_USE_LOCALTIME: hv_base.NO_CHECK, |
82 | 84 |
constants.HV_DISK_CACHE: |
83 | 85 |
hv_base.ParamInSet(True, constants.HT_VALID_CACHE_TYPES), |
... | ... | |
811 | 813 |
if not live: |
812 | 814 |
self._CallMonitorCommand(instance_name, 'stop') |
813 | 815 |
|
816 |
migrate_command = ('migrate_set_speed %dm' % |
|
817 |
instance.hvparams[constants.HV_MIGRATION_BANDWIDTH]) |
|
818 |
self._CallMonitorCommand(instance_name, migrate_command) |
|
819 |
|
|
820 |
migrate_command = ('migrate_set_downtime %dms' % |
|
821 |
instance.hvparams[constants.HV_MIGRATION_DOWNTIME]) |
|
822 |
self._CallMonitorCommand(instance_name, migrate_command) |
|
823 |
|
|
814 | 824 |
migrate_command = 'migrate -d tcp:%s:%s' % (target, port) |
815 | 825 |
self._CallMonitorCommand(instance_name, migrate_command) |
816 | 826 |
|
b/man/gnt-cluster.sgml | ||
---|---|---|
419 | 419 |
</para> |
420 | 420 |
</listitem> |
421 | 421 |
</varlistentry> |
422 |
<varlistentry> |
|
423 |
<term>migration_bandwidth</term> |
|
424 |
<listitem> |
|
425 |
<simpara>Valid for the KVM hypervisor.</simpara> |
|
426 |
|
|
427 |
<para> |
|
428 |
This option specifies the maximum bandwidth that KVM will |
|
429 |
use for instance live migrations. The value is in MiB/s. |
|
430 |
</para> |
|
431 |
|
|
432 |
<simpara>This option is only effective with kvm versions >= 78 |
|
433 |
and qemu-kvm versions >= 0.10.0. |
|
434 |
</simpara> |
|
435 |
</listitem> |
|
436 |
</varlistentry> |
|
422 | 437 |
</variablelist> |
423 | 438 |
|
424 | 439 |
</para> |
b/man/gnt-instance.sgml | ||
---|---|---|
658 | 658 |
</listitem> |
659 | 659 |
</varlistentry> |
660 | 660 |
|
661 |
<varlistentry> |
|
662 |
<term>migration_downtime</term> |
|
663 |
<listitem> |
|
664 |
<simpara>Valid for the KVM hypervisor.</simpara> |
|
665 |
|
|
666 |
<simpara>The maximum amount of time (in ms) a KVM instance is |
|
667 |
allowed to be frozen during a live migration, in order to copy |
|
668 |
dirty memory pages. Default value is 30ms, but you may need to |
|
669 |
increase this value for busy instances. |
|
670 |
</simpara> |
|
671 |
|
|
672 |
<simpara>This option is only effective with kvm versions >= 87 |
|
673 |
and qemu-kvm versions >= 0.11.0. |
|
674 |
</simpara> |
|
675 |
|
|
676 |
</listitem> |
|
677 |
</varlistentry> |
|
678 |
|
|
661 | 679 |
</variablelist> |
662 | 680 |
|
663 | 681 |
</para> |
Also available in: Unified diff