searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

轻量级虚拟化平台技术选型

2023-02-15 10:09:15
608
0

一、Proxmox VE

简介

Proxmox VE是⼀款套开源的虚拟化管理软件,⽤户可通过⽹⻚的⽅式来管理服务器上使⽤ kvm 以及 lxc 技术运⾏的虚拟机。同时提供集群管理、HA等⽀持。由⼀个商业公司在运营、更新以及维护。https://www.proxmox.com

架构

部署⽅式

使⽤iso制作启动盘或者pxe⽅式安装

特征

  • 所有节点⻆⾊对等,⽆中⼼架构

  • 以 all-in-one ⽅式提供完备的虚拟化管理能⼒,并同时作为宿主机节点使⽤

  • 基本环境部署和配置能在界⾯上完成

  • 基于 debian 定制的系统,绕过libvirt,直接调⽤kvm接⼝实现虚机管理

  • ⽀持 lxc ,并提供多种预置镜像模板 (隔离性较差,在私有环境使用)

优势

  • 部署、运维过程极为简捷

  • 稳定

  • 定制系统中管理程序本身占⽤资源⼩

劣势

  • 如需超融合模式 (即同时当宿主机和开源分布式系统的存储节点) 需要付费⽀持(可破解,也可接

    如外部 ceph、glusterfs 存储)

  • 技术相对封闭,不是使⽤市⾯上常⽤的 libvirt ⽅式管理虚拟机,缺少可选择的开源组件⽀持

  • ⽹络编排功能相对薄弱,能管理的数据中⼼规模相对较⼩

二、oVirt

简介

oVirt(open Virtualization)是红帽公司商业的云管理平台RHEV(Red Hat Enterprisevirtualization)的社区版本,主要的使⽤场景是私有云管理,在架构设计上使⽤了节点/引擎(Node/Engine)架构,特点是专注KVM、基于WEB界⾯、易于搭建。⼀些KVM上的新技术会⾸先在oVirt上得到⽀持。https://www.ovirt.org/

架构

部署⽅式

在架构设计上它使⽤了 Node/Engine分离结构,以⽅便功能的划分与管理。

  • 节点端 ovirt-node,通过订制的镜像部署。也可以在 Linux 系统上安装 vdsm 服务从

    ⽽得到⼀个 Node。

  • 管理端 ovirt-engine 类似于 vmwarevcenter,基于 web ⻚⾯进⾏集中管理。

特征

  • 中⼼化管理

  • 红帽旗下开源⽣态⽀持较完善

  • 基于 libvirt 专注 kvm,可使⽤最新的功能

劣势

  • 中⼼化管理,engine 缺少⾼可⽤⽅案的⽀持

  • 存储域配置规则限制较多,对本地存储的⽀持不友好

三、kubevirt

简介

kubevirt 是 Redhat 开源的以容器方式运行虚拟机的项目,利用 k8s CRD 为增加资源类型VirtualMachineInstance(VMI), 使用容器的image registry去创建虚拟机并提供VM生命周期管理。

https://kubevirt.io/

参考文章:https://remimin.github.io/2018/09/14/kubevirt/

架构

部署方式

k8s CRD

特征

  • 基于 k8s CRD 扩展,支持标准 API 管理

  • 计算、网络、存储资源通过 k8s 统一管理

  • libvirtd per VM

优势

  • 容器和虚机天然使用统一平台进行管理

  • 资源管理、虚机生命周期管理已集成到 CRD 和 controller 中,部署运维相对简单

  • 底层基础设施资源可统一运维

劣势

  • 重度依赖 k8s,不能独立运行

  • libvirtd per VM 需要耗费部分计算资源

 

四、Virtlet

cri,vm 即 pod

架构

参考文章:https://www.infoq.cn/article/uU7yE7S9J-ZM7RQmBDA8

https://www.mirantis.com/blog/kubevirt-vs-virtlet-comparison-better/

 

Virtlet VS Kubevirt

Virtlet和KubeVirt都提供了类似的功能,Virtlet是mirantis的一个项目,与KubeVirt相比,它的社区更小,Virtlet在易用性方面有一定的优势,学习曲线更小,但是它的特性受限于kubelet 和 CRI。

如果需要在Kubernetes配置的基础上运行传统vm的能力,那么KubeVirt可以完成这项工作。但有一定的学习成本。

如果希望将vm与非vm pod等同对待,则需要使用Virtlet。

 

四、各虚拟化管理软件与ECF集成可行性对比

对比总表:

  PVE oVirt Kubevirt Virtlet
hypervisor支持 kvm / lxc kvm kvm kvm
虚机管理方式 裸用 qemu-kvm VDSM + libvirt + qemu-kvm k8s CRD + libvirt CRI + libvirt
场景规模 小规模私有云 中大规模私有云 基于k8s 基于k8s
网络编排 5分 桥接、提供vlan隔离和防火墙 5分 桥接、vlan隔离 5分 CNI / 桥接等,网络编排支持非常灵活 4分 CNI
存储/磁盘管理 5分 LVM / iSCSI/ ceph / rbd / 遵循POSIX标准的文件系统 4分 iSCSI / FCP / 遵循POSIX标准的文件系统 5分 PVC / RBD / 遵循POSIX标准的文件系统 / Datavolume 3分 PVC
CPU绑定 yes yes yes no
virtio yes yes yes yes
GPU 支持 passthrough passthrough / vgpu passthrough / vgpu 不支持
热迁移 yes yes yes no
监控 自带资源监控,可通过 prometheus 收集 metric 自带资源监控,可通过 prometheus 收集 metric 依赖k8s,提供 metric exporter 依赖k8s

 

稳定性:PVE > oVirt > (Virtlet or Kubevirt)

灵活度:oVirt > Kubevirt > PVE > Virtlet

复杂度:oVirt > Kubevirt > PVE > Virtlet

社区活跃度:Kubevirt > oVirt > PVE > Virtlet

0条评论
0 / 1000
我们都有光明的未来
4文章数
0粉丝数
我们都有光明的未来
4 文章 | 0 粉丝
原创

轻量级虚拟化平台技术选型

2023-02-15 10:09:15
608
0

一、Proxmox VE

简介

Proxmox VE是⼀款套开源的虚拟化管理软件,⽤户可通过⽹⻚的⽅式来管理服务器上使⽤ kvm 以及 lxc 技术运⾏的虚拟机。同时提供集群管理、HA等⽀持。由⼀个商业公司在运营、更新以及维护。https://www.proxmox.com

架构

部署⽅式

使⽤iso制作启动盘或者pxe⽅式安装

特征

  • 所有节点⻆⾊对等,⽆中⼼架构

  • 以 all-in-one ⽅式提供完备的虚拟化管理能⼒,并同时作为宿主机节点使⽤

  • 基本环境部署和配置能在界⾯上完成

  • 基于 debian 定制的系统,绕过libvirt,直接调⽤kvm接⼝实现虚机管理

  • ⽀持 lxc ,并提供多种预置镜像模板 (隔离性较差,在私有环境使用)

优势

  • 部署、运维过程极为简捷

  • 稳定

  • 定制系统中管理程序本身占⽤资源⼩

劣势

  • 如需超融合模式 (即同时当宿主机和开源分布式系统的存储节点) 需要付费⽀持(可破解,也可接

    如外部 ceph、glusterfs 存储)

  • 技术相对封闭,不是使⽤市⾯上常⽤的 libvirt ⽅式管理虚拟机,缺少可选择的开源组件⽀持

  • ⽹络编排功能相对薄弱,能管理的数据中⼼规模相对较⼩

二、oVirt

简介

oVirt(open Virtualization)是红帽公司商业的云管理平台RHEV(Red Hat Enterprisevirtualization)的社区版本,主要的使⽤场景是私有云管理,在架构设计上使⽤了节点/引擎(Node/Engine)架构,特点是专注KVM、基于WEB界⾯、易于搭建。⼀些KVM上的新技术会⾸先在oVirt上得到⽀持。https://www.ovirt.org/

架构

部署⽅式

在架构设计上它使⽤了 Node/Engine分离结构,以⽅便功能的划分与管理。

  • 节点端 ovirt-node,通过订制的镜像部署。也可以在 Linux 系统上安装 vdsm 服务从

    ⽽得到⼀个 Node。

  • 管理端 ovirt-engine 类似于 vmwarevcenter,基于 web ⻚⾯进⾏集中管理。

特征

  • 中⼼化管理

  • 红帽旗下开源⽣态⽀持较完善

  • 基于 libvirt 专注 kvm,可使⽤最新的功能

劣势

  • 中⼼化管理,engine 缺少⾼可⽤⽅案的⽀持

  • 存储域配置规则限制较多,对本地存储的⽀持不友好

三、kubevirt

简介

kubevirt 是 Redhat 开源的以容器方式运行虚拟机的项目,利用 k8s CRD 为增加资源类型VirtualMachineInstance(VMI), 使用容器的image registry去创建虚拟机并提供VM生命周期管理。

https://kubevirt.io/

参考文章:https://remimin.github.io/2018/09/14/kubevirt/

架构

部署方式

k8s CRD

特征

  • 基于 k8s CRD 扩展,支持标准 API 管理

  • 计算、网络、存储资源通过 k8s 统一管理

  • libvirtd per VM

优势

  • 容器和虚机天然使用统一平台进行管理

  • 资源管理、虚机生命周期管理已集成到 CRD 和 controller 中,部署运维相对简单

  • 底层基础设施资源可统一运维

劣势

  • 重度依赖 k8s,不能独立运行

  • libvirtd per VM 需要耗费部分计算资源

 

四、Virtlet

cri,vm 即 pod

架构

参考文章:https://www.infoq.cn/article/uU7yE7S9J-ZM7RQmBDA8

https://www.mirantis.com/blog/kubevirt-vs-virtlet-comparison-better/

 

Virtlet VS Kubevirt

Virtlet和KubeVirt都提供了类似的功能,Virtlet是mirantis的一个项目,与KubeVirt相比,它的社区更小,Virtlet在易用性方面有一定的优势,学习曲线更小,但是它的特性受限于kubelet 和 CRI。

如果需要在Kubernetes配置的基础上运行传统vm的能力,那么KubeVirt可以完成这项工作。但有一定的学习成本。

如果希望将vm与非vm pod等同对待,则需要使用Virtlet。

 

四、各虚拟化管理软件与ECF集成可行性对比

对比总表:

  PVE oVirt Kubevirt Virtlet
hypervisor支持 kvm / lxc kvm kvm kvm
虚机管理方式 裸用 qemu-kvm VDSM + libvirt + qemu-kvm k8s CRD + libvirt CRI + libvirt
场景规模 小规模私有云 中大规模私有云 基于k8s 基于k8s
网络编排 5分 桥接、提供vlan隔离和防火墙 5分 桥接、vlan隔离 5分 CNI / 桥接等,网络编排支持非常灵活 4分 CNI
存储/磁盘管理 5分 LVM / iSCSI/ ceph / rbd / 遵循POSIX标准的文件系统 4分 iSCSI / FCP / 遵循POSIX标准的文件系统 5分 PVC / RBD / 遵循POSIX标准的文件系统 / Datavolume 3分 PVC
CPU绑定 yes yes yes no
virtio yes yes yes yes
GPU 支持 passthrough passthrough / vgpu passthrough / vgpu 不支持
热迁移 yes yes yes no
监控 自带资源监控,可通过 prometheus 收集 metric 自带资源监控,可通过 prometheus 收集 metric 依赖k8s,提供 metric exporter 依赖k8s

 

稳定性:PVE > oVirt > (Virtlet or Kubevirt)

灵活度:oVirt > Kubevirt > PVE > Virtlet

复杂度:oVirt > Kubevirt > PVE > Virtlet

社区活跃度:Kubevirt > oVirt > PVE > Virtlet

文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
0
0