Commit Graph
44 Commits
Author SHA1 Message Date
wanyaoqi ba4437434b fix(host): detect blk dev numqueues and nics(no id) pci addresses 2023-10-31 19:20:17 +08:00
wanyaoqi 7ebff96fe0 fix(region,host): cancel migrate sync guest status 2023-09-20 00:13:31 +08:00
wanyaoqi 3db004d5a8 fix(region,host): virtio dirver local disk live migrate
Guest using the virtio-blk driver for local disks, iothread is used to
handle IO operations, Qemu will segfault when copying disks during live
migration. To address this issue, use nbd server and drive_mirror
approach to copy the disks.
2023-06-13 16:32:24 +08:00
wanyaoqi 0e9d206867 fix(region,host): block jobs progress refactor
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2023-03-19 21:21:30 +08:00
wanyaoqi 904e7b31a5 Automated cherry pick of #15664: Automated cherry pick of #15618: fix(host): use drive backup sync backup disks (#15681)
* fix(host): use drive backup sync backup disks

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>

* fix(region,host): guest backup backend use fetcherfs

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2023-01-02 11:58:14 +08:00
wanyaoqi e1d3635b0a fix(region,host): migrate use source desc file. (#15623) 2022-12-27 16:50:47 +08:00
wanyaoqi 659c455818 fix(region,host): backup guest refactor 2022-12-14 23:58:00 +08:00
wanyaoqi f5415697b9 fix(host): convert migrate set downtime value to float64 (#15475)
* fix(host): convert migrate set downtime value to float64

* fix(host): live migration optimize

Qemu will send `STOP` event on start last time migration, but this
moment migration not completed. So we need wait magration complete.
Configurable Auto converge max cpu throttle.
2022-12-08 14:45:37 +08:00
wanyaoqi e83b167e43 feat(host): qemu kvm cpu caps 2022-10-11 18:34:38 +08:00
wanyaoqi 79dfa27ca5 fix(host): live migrate optimize (#14996)
- support set live migrate bandwidth
- support cancel migrate
- live migrate enable multifd
- cancel set live migrate max downtime in init live migrate
- save and sync guest desc and start script on sync config
- init machine pci addresses on load guest desc
- load memory devices for guests not init pci addresses
- attach network set upscript and downscript
- add a guest launcher for redirect qemu stdout/stderr
- start monitor on guest script start
- fix guest hotplug cpu and mem not update desc
2022-09-23 14:09:33 +08:00
wanyaoqi 9459ad7e61 fix(host): generate pci address for guests created
Generate pci addresses for guests create before structure desc.
Read guest pci info from qmp query-pci command and fill guest
description.
Guest desc add field AnonymousPCIDevs to save unidentified pci devices
address.
2022-09-08 20:36:42 +08:00
wanyaoqi 48ce4b31cd feat(host): describe pci controller and devices in guest desc (#14826)
- describe pci controller and devices in guest desc.
- extend pcie bus and pcie-to-pci bridge and root ports, disks and
nics default attach to pci-bridge for support hotplug.
- generate pci address on guest starts
- live guest desc for running guest, and save source desc

Signed-off-by: wanyaoqi <wanyaoqi@yunion.cn>

Signed-off-by: wanyaoqi <wanyaoqi@yunion.cn>
2022-08-24 16:33:42 +08:00
wanyaoqi e26ea2ebb3 feat(region,host): server-monitor support qmp
server-montior add qmp option, default is hmp.

usage:
    climc server-monitor --qmp <ID> <COMMAND>

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2022-07-14 16:17:53 +08:00
wanyaoqi d51d7599d2 feat(region,host): refector guests cgroups (#14558)
* feat(region,host): refector guests cgroups

hostagent will create a root group cloudpods.hostagent at init.
guests group under cloudpods.hostagent. Qemu start params add '-S'
option freeze guest at first, after guest set cgroup or other initialize
hostagent will resume guest.

host support reserve cpus. if has reserved cpus, hostagent will create a
group cloudpods.hostagent.reserved, one thing to note is set host
reserved cpus must ensure host no guests running.

climc usage:
  climc host-reserve-cpus --cpus '2-3,32-33' --mems '0-1' \
    --disable-sched-load-balance <IDS>

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>

* hostman: disable cpuset balancer

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2022-07-02 18:00:48 +08:00
wanyaoqi f163690191 feat(host,region): suport live change disk storage (#14342)
Guest start drive mirror job to copy full disk to target, after drive
mirror job ready, guest reopen target disk to replace source disk.
Qemu must support block reopen image feature.

Supported storage: local, ceph

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2022-06-03 01:47:48 +08:00
Qiu Jian 2cd805ead6 fix: migrate set down time 2022-04-12 20:17:08 +08:00
Qiu Jian df5bb58318 fix: migrate set downtime 2022-04-05 15:16:46 +08:00
Zexi Li c0a0121d2b feat(host): server instance snapshot with memory 2022-03-03 13:53:11 +08:00
Zexi Li 6a71444b27 feat(region,host): tls live migrating 2022-01-27 10:32:54 +08:00
ioito 2bfdc5fe75 fix(host): migrate progress 2022-01-04 15:58:36 +08:00
ioito 244d643680 fix(host): qemu block device 2021-12-31 17:36:40 +08:00
ioito db981a146b fix(host): add vm clonse progress and mbps 2021-12-24 20:03:31 +08:00
ioito d62d6abf7a fix(host): add speed info for block-job 2021-12-20 15:52:45 +08:00
Qiu Jian c67f1bde5b fix: server migration halted by an unexpected STOP event 2021-12-18 22:00:06 +08:00
Zexi Li 70edbdcb3c fix(host): adjust kvm block_stream query frequency and speed limit 2021-12-08 10:17:28 +08:00
wanyaoqi 980396f151 dirve mirror check block replication is support 2020-10-28 10:51:33 +08:00
wanyaoqi c74d8ca0c7 hotplug network device 2020-01-18 15:01:08 +08:00
wanyaoqi 2d0dfc95ff misc bugfix 2019-09-10 22:28:21 +08:00
wanyaoqi 8376d14d42 io throttle 2019-08-22 20:50:32 +08:00
wanyaoqi 34bce15cb4 import running libvirt guests 2019-06-24 16:52:20 +08:00
Zexi db0e303798 make 'go test ./...' pass 2019-04-15 19:54:46 +08:00
Qiu Jian 004d9b6f95 update copyright headers of all source 2019-03-29 14:47:48 +08:00
wanyaoqi 46e85d5249 kvm guest support hotplug cpu mem, fix hmp monitor 2019-03-05 14:29:12 +08:00
wanyaoqi 50a28caab4 fix create bakcup server and some bugs 2019-02-19 20:01:32 +08:00
Qiu Jian 459a358ed1 Feature:add kvm online resize disk handlers 2019-01-30 00:40:54 +08:00
wanyaoqi cdf2d485d5 complete remaining code exculde rbd, nfs, snapshot recyle, rootfs 2019-01-23 14:22:12 +08:00
wanyaoqi a230bfa997 temp commit 2019-01-22 11:23:17 +08:00
wanyaoqi 0865d53297 temp 2019-01-18 18:02:00 +08:00
wanyaoqi be7f8f1e95 host complie success 2019-01-16 12:09:06 +08:00
wanyaoqi 71856e430e guest migrate snapshot 2019-01-14 16:44:01 +08:00
wanyaoqi 86f13d3d77 guest sync config tasks, add monitor command 2019-01-07 17:09:57 +08:00
wanyaoqi 69e0d1d31c temp 2019-01-07 17:07:04 +08:00
wanyaoqi 1fc534e7bd 20181221 temp commit 2019-01-07 17:07:03 +08:00
wanyaoqi e25730acce 2018-12-04: init commit 2019-01-07 17:03:31 +08:00