当前位置:首页 > 实用技巧 >

开启cpu虚拟机有什么坏处(虚拟机多开用什么cpu)

来源:原点资讯(www.yd166.com)时间:2023-06-05 20:19:42作者:YD166手机阅读>>

开启cpu虚拟机有什么坏处,虚拟机多开用什么cpu(1)

如今,网络上对容器和虚拟机的比较很常见。理论上,正如大多数人所言,容器比虚拟机更好,甚至虚拟机会被彻底淘汰。但是,容器和虚拟机并不一定要站在对立面互相开撕,毕竟容器目前存在的很多问题并没有彻底解决,虚拟机的启动速度和内存开销也未必落后于容器。

因此,如果处于初级入门阶段,有必要认真了解容器和虚拟机的区别,以便做出更优选择。

开始之前,我们先想想应用程序在真实计算机环境中的运行情况。假设,我们需要运行 MySQL 数据库、Nodejs 应用程序和 MongoDB 数据库三个应用程序。真实的计算机环境需要配备服务器,这是运行操作系统的物理设备;主机操作系统,在服务器上运行的操作系统,比如可以选择 Linux Ubuntu。

如果希望应用彼此隔离,每个程序都有自己的操作系统,可以在 Linux Fedora 上运行 MySQL、在 Linux Ubuntu 上运行 Nodejs 并在 Windows 上运行 MongoDB。如果不依靠虚拟机和容器,这个过程需要用三台计算机实现,彼此之间还需要互相通信。

虚拟机

这种方式既不友好也不科学,虚拟机和容器的出现解决了这些问题。相较而言,虚拟机历史更久远,用户也更加熟悉。简单来说,虚拟机通过虚拟化来模拟真实计算环境,以执行在真实计算机上运行的应用程序。

优缺点

虚拟机的优点是可创建完全隔离的环境并实现完全虚拟化,每个虚拟机都有对应的 CPU 虚拟化。其缺点也很明显,重,虚拟机通常在繁重的隔离进程中执行,因为需要 Guest OS;性能一般,当虚拟机无法直接访问硬件(托管的虚拟机管理程序)时,需要在拥有一个层,这会明显降低性能。

研究进展

在理论层面, neclab 的研究学者已经把虚拟机的启动速度做到比 Docker 还快,并且内存开销比 Docker 更低,这些成果以 paper 形式发表在 SOSP’17 上。长期以来,由于虚拟机需要完整的操作系统,所以体积比较大,如果想优化速度必须精简操作系统。

论文作者提供了两种方法:一是 Unikernels,这种方法相对极端,简单来说是为应用专门定制操作系统内核,该内核只提供运行此服务最基本的功能;二是精简 Linux 内核只保留必要功能和模块,作者专门开发了 Tinyx 工具,根据应用 objdump 信息自动寻找依赖,并根据启发性测试不断寻找可关闭 Linux 模块。这种方式不仅可以缩小镜像体积(与启动速度最相关的因素),还可以降低占用内存。

容器

简单来说,容器是与主机共享资源的独立进程。与虚拟机不同,容器不会虚拟化硬件,也不需要客户操作系统。在容器中,运行应用程序所需的必要组件都打包为单个映像,可重复使用。执行映像时,它在隔离环境中运行,不共享内存、CPU 或主机操作系统磁盘。这可以保证容器内的进程无法监视容器外的任何进程。

优缺点

容器的优点是由隔离进程执行但可与同一主机上的其他容器共享资源环境;允许将容器内部的文件和资源安装到外部;容器不在客户操作系统中运行,因此其过程是轻量级的,具有更好的性能,并可在几秒钟内启动。

容器的缺点有相同的 Host OS,当应用程序需要特定的操作系统并且使用虚拟机更容易实现时,我们可能会遇到这种情况;安全问题,容器相当于彼此隔离的进程,可以直接访问重要的命名空间,比如主机名、网络和共享内存。当然,这一点可以通过控制 root 用户有所缓解,但始终是个问题。

容器 VS 虚拟机

从舆论层面来看,我们似乎应该放弃虚拟机,毕竟不少媒体已经开始使用“虚拟机已死”的言论。但就可维护性而言,虚拟机的动态迁移等技术相对成熟,实现原理从根上就很简单,不需要操心少个依赖进程的内存没过去。所以,我们无法孤立分析二者的好坏,需要结合应用特点、解决问题和场景等因素选择。

实际上,容器诞生之初更多的目的是解决裸进程的隔离和部署问题,并不是冲着取代虚拟机。目前还有不少人选择应用虚拟机,如果场景和需求合适,也不妨将虚拟机和容器一起使用,比如,生产环境使用 Windows,但有一个仅在 Linux 上运行的应用程序,此时可以使用虚拟机运行 Linux 发行版,然后在此虚拟机中运行容器。当然,这件事情现在似乎也由云厂商代做了。

前不久,AWS 开源 Firecracker,这其实可以算是是容器和虚拟化优势结合的产物,专门用于创建和管理多租户容器以及基于函数的服务,利用传统虚拟机提供的安全性和工作负载隔离,同时兼具容器的资源效率。不少人认为这可能是未来虚拟机和容器的发展方向,今年可能会看到更多云计算厂商推出此类服务。

参考链接:https://dzone.com/articles/part-4-docker-images-in-more-details

https://dl.acm.org/citation.cfm?id=3132763

(文章版权归极客邦科技 InfoQ 所有,未经许可不得转载。)

栏目热文

cpu不支持虚拟化能装虚拟机吗(cpu不支持虚拟化性能计数器)

cpu不支持虚拟化能装虚拟机吗(cpu不支持虚拟化性能计数器)

一、虚拟化分类 1、虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每...

2023-06-05 19:56:30查看全文 >>

虚拟机与cpu不兼容如何解决

虚拟机与cpu不兼容如何解决

运行虚拟机是使用操作系统的好方法,因为无需在电脑上安装它,例如,你可以毫无风险地试用最新的Windows 10试用版或新...

2023-06-05 19:55:58查看全文 >>

虚拟机安装cpu不支持怎么解决(虚拟机怎么设置cpu虚拟化)

虚拟机安装cpu不支持怎么解决(虚拟机怎么设置cpu虚拟化)

IT之家 12 月 14 日消息,VMware 发布了 Workstation Pro(收费)和 Workstation...

2023-06-05 20:22:11查看全文 >>

战争艺术开局怎么获得橙色英雄(战争艺术怎样合成三星英雄)

战争艺术开局怎么获得橙色英雄(战争艺术怎样合成三星英雄)

各位指挥官们,大家好,我是黑白圈圈。今天给大家介绍一款游戏,没错,就是标题中所提到的《战争艺术:无限进化》,各位喜欢玩游...

2023-06-05 20:04:31查看全文 >>

战争艺术最强战士阵容(战争公约最强阵容)

战争艺术最强战士阵容(战争公约最强阵容)

之前有小伙伴私聊我说,有的阵容看起来很美,说起来很厉害,但实战的时候就是不好凑,需求装备也不一定拿得到;所以有没有什么阵...

2023-06-05 20:06:04查看全文 >>

vm虚拟机为什么不支持cpu(vm虚拟机不支持dx11)

vm虚拟机为什么不支持cpu(vm虚拟机不支持dx11)

VMware WorkStation虚拟机软件是一款桌面计算机虚拟技术,让用户能够在单一主机上同时运行多个不同的操作系统...

2023-06-05 20:35:11查看全文 >>

虚拟机cpu被禁怎么办(装完虚拟机后显示cpu禁用怎么回事)

虚拟机cpu被禁怎么办(装完虚拟机后显示cpu禁用怎么回事)

出现客户操作系统已禁用CPU。请关闭或重置虚拟机。出现这种情况,该怎么处理了,接下来小编就告诉大家!解决办法一第一步,关...

2023-06-05 20:16:35查看全文 >>

虚拟机cpu有问题怎么处理(cpu虚拟机怎么开)

虚拟机cpu有问题怎么处理(cpu虚拟机怎么开)

由于 Intel 从 12、13 代 CPU 开始,处理器核心分为性能核和能效核,在 Windows 11 平台下通过 ...

2023-06-05 20:10:28查看全文 >>

虚拟机为何会禁用cpu(虚拟机显示禁用cpu是什么意思)

虚拟机为何会禁用cpu(虚拟机显示禁用cpu是什么意思)

如果你的windows电脑处理器是AMD芯片的话,要想通过VMware虚拟机来安装苹果mac系统,还是比较麻烦的,很多人...

2023-06-05 19:47:25查看全文 >>

cpu虚拟化不支持怎么办(cpu不支持虚拟化可以安装虚拟机吗)

cpu虚拟化不支持怎么办(cpu不支持虚拟化可以安装虚拟机吗)

VirtualBox 是一款开源虚拟机软件。VirtualBox 是由德国 Innotek 公司开发,由Sun Mic...

2023-06-05 20:10:02查看全文 >>

文档排行