当前位置: 首页 > 软件库 > 服务器软件 > 虚拟机 >

ZeroVM

轻量级虚拟化平台
授权协议 Apache
开发语言 C/C++
所属分类 服务器软件、 虚拟机
软件类型 开源软件
地区 不详
投 递 者 陆敏学
操作系统 Linux
开源组织
适用人群 未知
 软件概览

ZeroVM 是第一个专门为云设计的虚拟机管理程序。当前架构的云是支离破碎的,因为它依赖于一个已经逐步消失的世界(客户端/服务器模型世界)里的虚拟机管理程序来进行设计。因此,我们构建了ZeroVM。

ZeroVM 是一个开源轻量级虚拟化平台,基于 Google Native Client 项目,提供如下优势:

  • 速度: 现在最快的虚拟机服务器至少需要2分钟来创建,而 ZeroVM 只需不超过 5 毫秒
  • 隔离: ZeroVM 是首个隔离每个用户每个应用的虚拟机管理系统,而老的平台需要在多个用户间分享一个虚拟机,让应用开发更加复杂
  • 高效: ZeroVM 只虚拟化做实际工作的部分

ZeroVM 与传统虚拟机平台的差别:

  • C & UNIX 进程抽象: 与硬件抽象不同,ZeroVM 使用 UNIX 风格的进程,进程间通讯使用管道 (与 KVM / XEN / VMWare 不同).
  • 每次请求创建一个一次性虚拟机: 在 ZeroVM 中,每个实例不会在请求间重用,每个进来的请求都会创建一个全新的虚拟机
  • 轻松的嵌入式: ZeroVM 是一个虚拟机,可执行文件只有 ~75KB.  可轻松嵌入到已有的存储系统
  • 高性能: ZeroVM 只需微不足道的 CPU、内存和 IO 消耗
  • 充分利用底层硬件: 向量化和内部循环的手动优化(与JVM不同)。
  • 真正安全的隔离: ZeroVM不需要其他内部沙箱(与LXC / OpenVZ不同)或外部沙箱(与JVM不同)。 ZeroVM的安全性来自久经考验的Chrome NaCl。
  • 确定性:与其他虚拟机管理程序不同,ZeroVM具有唯一的确定性,因此可提供真正的可移植性,高效的开发,自动故障转移和透明的VM迁移。
  • 事务性:VM级别的ACID事务性,这是ZeroVM独有的。
  • 网络中立:可以通过任何传输方式透明地支持管道:inproc,IPC,RDMA,InfiniBand,TCP / IP等。这是ZeroVM特有的。
  • 易于集群: 无需网络虚拟化。集群路由也是确定性的,可以自动恢复并且可以透明地移动。 在KVM,XEN或VMWare等其他平台上不可用。
  • Host-OS 中立:ZeroVM将VM抽象与主机OS抽象分离,因此它可以在普通应用程序模式下的许多未修改OS上运行。 ZeroVM不会公开主机系统调用,而是将它们重新实现为ZeroVM的不受信任组件的一部分。 这与Chroot / LXC / OpenVZ不同。
  • 语言中立:C/C++/Assembly,因此也支持其他任何功能。 例如,Python,Ruby,PHP,Perl都可以在ZeroVM中执行,并将其本机解释器编译为ZeroVM ISA。
  • 便携:正在开发便携式版本,其中LLVM位代码将在VM内动态编译为ARM或Intel。 同时,开发人员需要重新编译(就像使用任何其他C / C ++应用程序一样)(不同于JVM以外的所有东西)。 请注意,动态语言在使用其本地解释器时会按原样工作。
  • 弹性:ZeroVM使得产生虚拟集群的时间很长很实用。 例如,在整个集群中,每个虚拟机仅需10秒即可配置1000个ZeroVM。
  • 一致性:每次实例化时,所有VM都具有完全相同的执行环境:相同的指令集,相同的内存量,相同的IO等。因此,任何ZeroVM可执行二进制文件始终在任何ZeroVM主机上运行,并且由于确定性而各采用完全相同的路径 。
  • 可嵌套:ZeroVM可以嵌套不累加的开销,并且可以可靠地对分层信任域建模,例如 IaaS<PaaS<SaaS<Extentions。
  • 可聚合:ZeroVM可以聚合许多物理服务器并将它们表示为单个虚拟系统。 而且,ZeroVM可以代表由任意数量的物理服务器支持的任意数量的虚拟系统。 这与ScaleMP和Ravello之外的所有内容都不相同。
  • ZeroVM是LiteStack推出的轻量hypervisor,LiteStack的创始人是Camuel Gilyadov。 当时OpenDremel项目需要一个轻量的虚拟化框架,所以基于Google Chrome的NaCL创造了ZeroVM,同时具备了Chrome一样的安全隔离性。 ZeroVM是开源的,体积只有75KB,采用C/C++和一些脚本语言(包括Python, Ruby, PHP, P

 相关资料
  • 虚拟化 [PV_OPS] noreplace-paravirt 禁止使用内核通用的半虚拟化接口paravirt_ops,主要用于解决某些在Virtual PC上安装或运行Linux的故障。 [VMMIO] virtio_mmio.device=size@baseaddr:irq[:id] 实例化virtio-mmio设备(CONFIG_VIRTIO_MMIO)。可以多次使用以实例化多个设备。 si

  • 解决两个我认为的痛点: 痛点一:.申请记录没有沉淀,无法追查。机器出问题不好找到负责人,节点维护时必须要抄送全公司。 平台对应的解决方法:        采用用户自主注册的方式来开通账户,用户自行申请虚拟机,在后台审核。用户可以时时看到订单进度及状态。维护时可以只抄送负责人即可,也可以在页面中挂上公告。 痛点二:虚拟机开通过程重复毫无技术含量,初始化麻烦,大批量开通时导致工作量过大,问题率过高。

  • 本文向大家介绍Xen虚拟化进阶篇 Xen平台下虚拟机的实时迁移,包括了Xen虚拟化进阶篇 Xen平台下虚拟机的实时迁移的使用技巧和注意事项,需要的朋友参考一下 Xen的虚拟机的实时迁移简介 Xen为我们提供了一种强大的功能,它就是动态迁移法。它能让Domain在运行期间,以最小的服务中断为代价,将Domain迁移到另外的Xen 服务器上。 使用Xen动态迁移的主要优点列举如下: 1.Xen的动态迁

  • 问题内容: 我正在寻找一种轻巧的方法来使我的程序(用C语言编写)能够在Windows或Linux上播放音频文件。我目前正在使用Windows本机调用,这实际上只是传递文件名的单个调用。我想要在Linux上也可以使用的类似软​​件。 音频文件是Microsoft PCM,单通道,22Khz 有什么建议么? 问题答案: 由于我也在寻找问题的答案,因此我做了一些研究,但没有找到播放音频文件的任何简单(类

  • 本文向大家介绍KVM虚拟化技术之virt-manager使用及KVM虚拟化平台网络模型介绍,包括了KVM虚拟化技术之virt-manager使用及KVM虚拟化平台网络模型介绍的使用技巧和注意事项,需要的朋友参考一下 一.使用virt-manager创建和管理虚拟机 1.使用VNC Viewer连接进入虚拟化平台主机   2.打开终端输入virt-manager命令启动virt-manager虚拟机

  • Docker 常用命令 docker pull redis #拉取镜像,默认 latest 版本 docker pull mysql:8.0 #拉取指定版本镜像 docker images #查看镜像 docker image ls #查看镜像 docker image ls -f dangling=true #查看虚悬镜像 docker image prune #删除虚悬镜像 doc