feat: nested virtualization support per guest on the same kvm host
- 主要语言
- Java
- 星标
- 3.1k
- 派生
- 1.4k
- 平均合并
- 6 天 19 小时
- 30 天内合并 PR
- 32
描述
##### ISSUE TYPE
* Feature Idea
##### DESCRIPTION
As a CS user, I would like to be able to create a Guest / VM with `guest.cpu.mode=host-passtrough` and also a second VM without `guest.cpu.mode passtrough` on the same KVM host, that's not possible, because `guest.cpu.mode` is applied to the KVM host globally.
##### PROPOSAL
Custom compute offering `large.metal` ( similar to flavors in AWS with nested virtualization capability ) when one can set `allow.additional.vm.configuration.list.kvm` ( https://www.shapeblue.com/cloudstack-feature-first-look-enable-sending-of-arbitrary-configuration-data-to-vms/ ), probably doable with `` XML snippet ( see for more info https://libvirt.org/formatdomain.html#cpu-model-and-topology ) or with simple tick-checkbox for enabling nested virtualization.
It's important to have this ability directly on the offering to support for example CloudStack CAPI implementation, here https://github.com/kubernetes-sigs/cluster-api-provider-cloudstack/blob/main/templates/cluster-template.yaml#L72
贡献指南
调研方向
先从 issue 的 custom compute offering proposal 和其中引用的 cluster-template.yaml 开始,然后查看链接的 libvirt CPU model 和 topology 文档。当可以按 offering 或 guest 选择 nested virtualization,同时同一 KVM host 上的另一台 VM 可以在不使用 host-passthrough 模式的情况下运行时,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java, kubernetes
- 领域
- cloud, infrastructure
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100