Commit Graph

86 Commits

Author SHA1 Message Date
屈轩
2a9be258f9 fix(mcp-server): mcp use climc struct (#25174) 2026-07-20 17:17:20 +08:00
wanyaoqi
75cc892bf7 fix(region,host): kvm guest change disk driver reset uefi vars (#25069) 2026-06-26 10:20:37 +08:00
Jian Qiu
430efcc068 feature: support asymmmetric bandwidth limit (#24680)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2026-04-16 15:16:02 +08:00
屈轩
448bae5037 fix(region): support query public cloud vm modification types (#24653) 2026-04-10 16:53:45 +08:00
Jian Qiu
cc3a44634b feature: support postpaid traffic metering (#24243)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2026-02-08 12:57:34 +08:00
wanyaoqi
f76bc53e90 feat(region,host,vpcagent): allow guest network dedicate secgroups (#24263) 2026-02-07 17:32:12 +08:00
wanyaoqi
86475595af fix(region): server add set network num queues (#24168) 2026-02-01 20:13:11 +08:00
wanyaoqi
7dfe635b62 fix(region,host,host-deployer): add win11 tpm support (#23952) 2025-12-29 11:18:56 +08:00
wanyaoqi
55ab19d1c3 fix(scheduler,host): sort numa node by numa distance check memsize (#23923) 2025-12-22 11:44:01 +08:00
happy-game
0bed60eae7 [OSPP]feature:Automated installation using kickstart (#23094)
* feat(region, climc): Add kickstart parameters and metadata

- Add kickstart parameters and metadata support
- Add kickstart CLI options and management commands
- Set kickstart metadata in PostCreate
- Add related kickstart metadata fields

* feat(host): Implement automated VM installation

- Mounts the installation ISO to a unique temp path, reusing existing mounts.
- Extracts kernel (`vmlinuz`, `initrd`) to configure QEMU boot.
- Injects kernel parameters to trigger the autoinstall.
- Add kickstart configuration validation.

Modified `guestLauncher` script to handle kernel parameters with spaces
that were previously truncated by the Python script.

* feat(host): Implement Kickstart monitoring

- Automatically updates the VM status upon
receiving `KICKSTART_SUCCESS` or `KICKSTART_FAILED` signals.
- On success, cleans up temporary mount points
and restarts the server via the Region API.

* feat(region): add kickstart type metadata

Adds the `VM_METADATA_KICKSTART_TYPE` to distinguish between
kickstart configurations passed by URL or by direct content.

* feat(host): Handle kickstart installing and timeout

- Set status to 'installing' upon successful kickstart boot
- Handle KICKSTART_INSTALLING serial message for status updates
- Add timeout handling for kickstart status monitoring

* feat(host): provide Kickstart config via content

Embed the provided config content as a file in a
labeled ISO (mkisofs), then mount the ISO during
the Kickstart installation to supply the config.

* refactor(host): Enhance the kickstart installation

- Integrates kickstart status directly into the VM status, replacing metadata.
- Unifies locations for kickstart logs and temporary files.
- Uses regex for more robust status matching.
- Moves helper functions to `kickstart_helper.go`.
- Fixes an incorrect kickstart configuration filename.
- Adjusts kickstart logging.

* feat(region, host): add kickstart support for openEuler

* refactor(host): extract kickstart cleanup function

* feat(region, climc): add kickstart-complete cli

Add this command to manually update the kickstart status and
reboot VM if needed. This is mainly used by users to manually
update the kickstart status when kickstart status detection is abnormal.

* refactor(region): reduce code duplication in Kickstart validation

- unify two validateKickstartConfig functions
- extract determineKickstartType function for type determination

* fix(region, host): fix kickstart auto-reboot

- Adjusted the timing of setting the status to
`kickstart_pending` to avoid incorrect reboot checks
- Skip setting kickstart if the status is already
`kickstart_completed` to prevent unnecessary reboots
- Added cleanup of kickstart files upon VM deletion

* fix: kickstart misc fix

* feat(host): download kickstart config from URL

- download content when passing config via URL
- unified boot parameters

* feat(host): copy kickstart kernel files

* feat(host): ensure kickstart completion signal in config

---------

Co-authored-by: wanyaoqi <d3lx.yq@gmail.com>
2025-10-29 14:54:00 +08:00
Jian Qiu
aed979e14e fix: task remote notify (#23630)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2025-10-29 12:17:41 +08:00
wanyaoqi
cdc3814f2f Automated cherry pick of #23377: Automated cherry pick of #23374: fix(region,host): guest add vnc screen dump support (#23378)
* fix(host): update nic confs inside vm on qga delete nics

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

* fix(region,host): guest add vnc screen dump support

---------

Signed-off-by: wanyaoqi <wanyaoqi@yunion.cn>
2025-09-27 12:06:33 +08:00
wanyaoqi
10d881b3f7 fix(region): virtual isolated device balance on guest start (#23046) 2025-09-15 11:58:11 +08:00
wanyaoqi
a6c9fddc2c fix(region,host): add auto merge snapshots options, preallocation options (#22715) 2025-06-13 15:20:28 +08:00
屈轩
73945d37ad fix(region): support change vm billing type (#22092) 2025-02-14 11:33:38 +08:00
Zexi Li
0b50b2134e feat(region,climc): server-set-root-disk-matcher (#21547) 2024-11-06 18:53:39 +08:00
Jian Qiu
268212def1 fix: server update nic sub ips (#20756)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-07-08 17:25:13 +08:00
wanyaoqi
ddde38aa43 feat(region,host): guest sync os info (#19100) 2023-12-26 12:49:29 +08:00
wanyaoqi
b58cd52d30 Automated cherry pick of #18822: Automated cherry pick of #18821: Feat/deploy guest (#18823)
* feat(region): add guest rescue api && download initrd from baremetal tftp server && add baremetal agent ip finder & update pic address & support ip kernel config.

* feat(host-deployer): use qemu-kvm as default deploy dirver

---------

Co-authored-by: boironic@gmail.com <boironic@gmail.com>
2023-11-30 16:50:18 +08:00
Zexi Li
46a1061d7c feat(region,host,climc): aggregate server hardware information 2023-11-21 12:10:17 +08:00
Zexi Li
d0f9fd4e11 feat(region,climc): add set-os-info api (#18678) 2023-11-14 22:59:45 +08:00
Bo
74b6a20387 Merge branch 'master' into feature/implement-vm-rescue 2023-10-27 19:29:02 +08:00
Bo
16377e5ac1 feat(region): add guest rescue api && download initrd from baremetal tftp server && add baremetal agent ip finder & update pic address & support ip kernel config. 2023-10-27 19:19:52 +08:00
Jian Qiu
31511a6a69 fix: climc server-logininfo action (#18295)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-12 20:18:47 +08:00
Jian Qiu
3c650da60e fix: add apis for logininfo (#18180)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-01 23:39:50 +08:00
chentianxiang
4fd11f2900 feat(region,host,host-deployer):use qga set network 2023-09-20 16:25:09 +08:00
Qiu Jian
7b3e2b1531 fix: server nic add subips 2023-09-19 19:15:48 +08:00
Jian Qiu
f802faf411 fix: allow remvoe server extra options of specific value (#17947)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-09-06 17:00:17 +08:00
wanyaoqi
11fe9bf6bc fix(region,host): support limit guest nic traffic (#17852) 2023-08-29 08:40:20 +08:00
wanyaoqi
a36d9767af fix(region,host): qga command timeout (#17465)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2023-07-12 16:14:55 +08:00
wanyaoqi
3f70806941 fix(region): guest change storage
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2023-02-28 21:42:46 +08:00
Jian Qiu
21716cefb5 fix: remove mutual dependency of cloudmux on onecloud (#15621)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2022-12-27 01:21:26 +08:00
wanyaoqi
659c455818 fix(region,host): backup guest refactor 2022-12-14 23:58:00 +08:00
wanyaoqi
15ef8028da feat(region,climc): server set boot index (#15369) 2022-11-16 23:20:54 +08:00
ioito
f1d2bbd18a fix(climc): origin vnc 2022-10-13 16:54:32 +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
10bf6e574f feat(region): set password use same interface
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2022-09-06 15:51:29 +08:00
wanyaoqi
b4a347f237 feat(qga): add server-qga-command
usage:
climc server-qga-command <ID> <QGA_RAW_COMMAND>

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2022-08-28 13:51:21 +08:00
wanyaoqi
63b30cef60 feat(region,host): qga set user password
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2022-08-28 13:51:21 +08:00
wanyaoqi
89a04fc125 feat(region,host): custom usb controller type
support usb controller type: qemu-xhci, usb-ehci.
qemu-xhci is much more virtualization-friendly when compared to EHCI and UHCI.
but guest supports XHCI which should be the case for any operating system
released around 2010 or later.
So sometimes wo need use usb controller type EHCI.

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2022-08-26 11:58:44 +08:00
Jian Qiu
fc1a949c50 feat(region,host): mem clean after guest exited. (#14703)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>

Co-authored-by: wanyaoqi <d3lx.yq@gmail.com>
2022-07-25 09:17:43 +08:00
Zexi Li
8dd5478ce3 Merge pull request #14639 from wanyaoqi/feat/server-batch-convert-to-kvm
feat(climc): server batch convert to kvm
2022-07-15 10:55:27 +08:00
wanyaoqi
7d601ebaa8 feat(climc): server batch convert to kvm
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2022-07-14 16:34:04 +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
Jian Qiu
618e88c51a fix: backup pack missing encrypt_key_id (#14333)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2022-05-29 10:12:47 +08:00
Zexi Li
917bb9a337 feat(region): kvm qemu version and cmdline info 2022-04-11 17:49:37 +08:00
Qiu Jian
e60e1cd60e fix: add more set class metadata commands 2022-03-22 21:52:34 +08:00
Zexi Li
575d7fac7c feat(cloudcommon): db record checksum for consistency (#13679) 2022-03-14 23:30:11 +08:00
Zexi Li
54c5bb8bb2 Merge pull request #13577 from zexi/qemu-mem-snapshot
feat(host): server instance snapshot with memory
2022-03-04 10:17:11 +08:00
rainzm
842851dbaf fix(region,devtool): get ssh port from 'servers/<id>/sshport' api 2022-03-03 16:42:51 +08:00