前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >已有Qemu了,为什么还要StratoVirt?

已有Qemu了,为什么还要StratoVirt?

作者头像
虚拟化云计算
发布2020-12-15 15:22:13
4.7K0
发布2020-12-15 15:22:13
举报
文章被收录于专栏:虚拟化云计算虚拟化云计算

一. StratoVirt是什么?

StratoVirt是华为openEuler系统中引入的虚拟化技术,

作用与Qemu大体相同,

用Rust语言编写实现,

一套架构统一支持虚拟机、容器、Serverless三种场景,

号称在轻量低噪、软硬协同、Rust语言级安全等方面有优势。

另外StratoVirt也是开源的

show me the code:

https://gitee.com/openeuler/stratovirt

二. 为什么会有StratoVirt?

已经有Qemu了,为什么要重复造轮子?大抵有如下原因:

1.目前 qemu已经有157万代码,而且其中又有很大一部分代码是用来支持legacy特性或者设备的,功能和设备严重耦合在一起,导致无法轻装上阵。

2.QEMU的CVE问题,其中有将近一半是因为内存问题导致的,StratoVirt社区系统通过Rust,来避免CVE。

3.容器轻量,但不够安全;虚拟机安全,但不够轻量;StratoVirt系统能够即构建出轻量虚拟机又能构建出标准虚拟机。

StratoVirt 功能主要支持轻量虚拟机和标准虚拟机两种模式:

轻量虚拟机模式下,单虚机内存底噪能够小于 4MB,启动时间小于 50ms,且支持毫秒级时延的设备极速伸缩能力;

标准虚拟机模式下可支持完整的机器模型,启动标准内核,可以取代 Qemu 的作用,同时在代码规模和安全性上却有较大提升。

三. StratoVirt和qemu有什么区别?

在整体架构上来说,StratoVirt和qemu区别不大,向下基于KVM提供的硬件辅助虚拟化来保证性能。向上可以对接Libvirt来提供虚拟机管理,也可以对接iSula和Docker来提供容器管理。

StratoVirt内部架构上来讲,组件化是其最大的特点,例如在StratoVirt中引入了device model的概念,基于此实现了CPU、扁平内存、堆叠内存、virtio设备PCI设备等多种公共组件。

针对轻量化场景,可以选用轻量机型主板并在此基础上增加CPU、扁平内存、Virtio设备等必要组件。

针对标准化场景,可以选用标准机型主板并增加CPU、堆叠内存模型、PCI系统、Virtio设备等组件,这样便可以灵活应对各种场景的需求。

最后总结:

docker太重了?因此有了isula。qemu也太重了?因此有了stratovirt。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-11-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 虚拟化云计算 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档