安装
为了让项目人员充分利用容器平台内的虚拟化功能,平台管理员必须执行以下操作以准备虚拟化环境。
目录
前提条件
-
下载与您的平台架构对应的ACP Virtualization with KubeVirt安装包。
-
通过上架软件包机制上传该ACP Virtualization with KubeVirt安装包。
-
使用虚拟化功能时,需要提前规划和准备网络及存储环境。
注意:
-
如果需要通过 IP 直接连接虚拟机,集群必须使用 Kube-OVN Underlay 网络模式。您可以参考最佳实践准备 Kube-OVN Underlay 物理网络。
-
建议结合使用 TopoLVM 和 Kubevirt,因为它能提供接近硬件级别的性能。如果性能要求不高,也可以使用 Ceph 分布式存储。
-
如果使用 TopoLVM 并配置了多块磁盘,请确保启用虚拟化的节点剩余存储容量能满足多块磁盘的总容量,否则虚拟机创建会失败。
-
如果使用 Ceph 分布式存储,请确保存储所在网络与虚拟机所在网络能够互通。
-
-
操作步骤
启用节点虚拟化
当自建集群的节点为物理机时,可以通过启用或禁用节点虚拟化开关来控制是否允许 Kubernetes 在该节点上调度虚拟机实例(VMI)。
-
开启开关时,允许在物理机节点上调度新的虚拟机;Windows 物理节点不支持启用虚拟化。
-
关闭开关时,阻止在物理机节点上调度新的虚拟机,但不影响该节点上已运行的虚拟机。
操作步骤
-
进入管理员。
-
在左侧导航栏点击集群管理 > 集群。
-
点击自建集群名称。
-
在节点标签页,点击目标节点右侧的 ⋮ > 启用虚拟化。
-
点击确认。
部署 Operator
-
登录,进入管理员页面。
-
点击Marketplace > OperatorHub进入OperatorHub页面。
-
找到ACP Virtualization with KubeVirt,点击安装,进入安装 ACP Virtualization with KubeVirt页面。
配置参数:
创建 HyperConverged 实例
-
进入管理员。
-
点击Marketplace > OperatorHub。
-
找到ACP Virtualization with KubeVirt,点击进入ACP Virtualization with KubeVirt详情页。
-
点击所有实例
-
在HyperConverged实例卡片上点击创建实例。
注意:每个集群只需创建一个HyperConverged实例。
-
切换到 YAML 视图,仅将示例中
spec.storageImport.insecureRegistries字段内的 placeholder 替换为正确的虚拟机镜像仓库地址,例如:192.168.16.214:60080,其他参数保持默认值。替换结果:
-
点击创建,等待资源列表中自动创建 CDI 和 KubeVirt 类型实例,同时确保 YAML 中显示的 status.phase 为
deployed,表示 HyperConverged 实例创建成功。
配置虚拟机超售比(可选)
- 在集群管理 > 集群中配置虚拟机所在集群的超售比。
- 或在项目管理 > 命名空间中配置虚拟机所在命名空间的超售比。
重要说明
-
虚拟机仅支持 CPU 超售比,推荐配置值为 2 到 4 之间。
-
一旦为虚拟机启用超售比,创建虚拟机时容器的请求值(requests)固定为指定限制值(limits)/ 虚拟机超售比,用户通过 YAML 设置的请求值将无效。
例如:假设虚拟机 CPU 资源超售比设置为 4,用户创建虚拟机时指定 CPU 限制值为 4c,则 CPU 请求值为 4c/4 = 1c。
资源配额说明
虚拟机的内存资源配额受其所在命名空间的内存资源配额限制。由于承载虚拟机的 Pod 内存通常大于虚拟机实际可用内存,建议预留 20% 的资源。当命名空间剩余可用资源低于 20% 时,请及时扩容资源。