7.14. 高级虚拟机管理
7.14.1. 为虚拟机使用资源配额 复制链接链接已复制到粘贴板!
为虚拟机创建和管理资源配额。
7.14.1.1. 为虚拟机启用自动资源配额限制 复制链接链接已复制到粘贴板!
启用 AutoResourceLimits 功能门时,OpenShift Virtualization 会自动管理虚拟机的 CPU 和内存限值。
默认情况下,OpenShift Virtualization 为虚拟机计算资源请求。当您启用 AutoResourceLimits 功能门时,OpenShift Virtualization 还会计算资源限值来满足命名空间配额要求。
如果命名空间强制实施 CPU 和内存配额,且需要设置限制,则建议启用 AutoResourceLimits 功能门。当启用此功能时,内存限制会自动设置为使基本内存分配加倍,并且 CPU 限制设置为每个 vCPU 一个。
您可以通过添加 alpha.kubevirt.io/auto-memory-limits-ratio 标签来自定义特定命名空间的内存限值比率。
例如,以下命令将 my-virtualization-project 命名空间的比率设置为 1.2 :
$ oc label ns/my-virtualization-project alpha.kubevirt.io/auto-memory-limits-ratio=1.2
流程
要为虚拟机启用自动资源配额限制,请执行以下步骤:
运行以下命令来编辑
HyperConverged自定义资源(CR):$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv在
spec.featureGates部分中,添加或将autoResourceLimits参数设置为true:spec: featureGates: autoResourceLimits: true- 保存更改并退出编辑器。
7.14.1.1.1. 为虚拟机手动设置资源配额限制 复制链接链接已复制到粘贴板!
只有使用请求自动用于虚拟机 (VM) 的资源配额。如果您的资源配额使用限制,则必须为虚拟机手动设置资源限值。资源限值必须至少大于资源请求的 100 MiB。
不建议手动管理资源配额限制。建议启用自动资源配额限制计算,如上一节中所述。手动限制设置可能会导致配额错误配置或调度问题。
流程
通过编辑
VirtualMachine清单来为虚拟机设置限值。例如:apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: name: with-limits spec: running: false template: spec: domain: # ... resources: requests: memory: 128Mi limits: memory: 256Mi1 -
保存
VirtualMachine清单。