当前位置:首页 > 虚拟机 > 正文

虚拟机虚拟化和容器虚拟化的不同(虚拟机虚拟化引擎设置)


一、“Docker容器技术”与“虚拟化技术”的区别是什么?Docker容器是一个开源应用程序引擎,允许开发人员打包应用程序并将其发布到流行的Linux系统,在这些系统中可以使用便携式容器包对其进行虚拟化。

容器是完全沙盒机制,没有接口(例如iPhone应用程序)。它几乎没有性能开销,并且可以轻松地跨系统和数据中心运行。最重要的是,它不依赖于任何语言、框架或系统。

虚拟化最初被称为资源抽象,是单个物理资源的多种逻辑表示,或者多个物理资源的多种逻辑表示。服务器虚拟化特有的是多个物理资源的单一逻辑表示。

虚拟化技术可以扩展硬件的容量并简化重新配置软件的过程。CPU虚拟化技术可以多CPU并行单CPU模拟,允许平台同时运行多个操作系统,并且应用程序可以在不同的空间运行并相互交互,提高计算机运行效率。


二、Docker这样的容器技术与虚拟化技术的区别是什么?Docker是一个开源应用程序容器引擎,允许开发人员将其应用程序和依赖项打包在可移植容器中,然后将其发布到任何流行的Linux机器上,这些机器也可以虚拟化。容器完全使用沙箱机制,它们之间不会有任何接口(类似于iPhone应用程序)。它几乎没有性能开销,可以轻松地在机器和数据中心上运行。最重要的是,它们不依赖于任何语言、框架或系统。
docker网站上提到了典型的docker场景:
自动化应用程序打包和部署
创建轻量级私有PAAS环境
自动化测试和集成/部署续
部署和部署Web应用程序、数据库和后端服务的扩展
由于它基于LXC轻量级虚拟化的特点与KVM等相比,docker最显着的特点是快速启动和减少资源使用。因此,你需要构建一个隔离的、标准化的运行环境,轻量级的PaaS(如dokku),创建自动化测试和持续集成环境,以及所有可以水平扩展的应用程序(尤其是需要快速启动和停止的Web应用程序)峰和谷)。
为了构建标准化的操作环境,大多数现有解决方案包括在基本操作系统上运行一组puppets/chef或图像文件。缺点是前者需要许多基本操作系统先决条件,而后者几乎无法修改(因为copyonwrite的文件格式在rootfs运行时是只读的)。此外,后者文件大小较大,管理环境和版本控制本身也是一个问题。
PaaS环境从设计之初就很明显,以dotcloud为例,它被用作PaaS产品的环境基础
得益于其标准化的创建方法(buildfile)和良好的REST。API、自动测试能够与持续集成/部署很好的结合由于LXC的轻量级特性,启动快,docker只能加载各个容器变化的部分,占用资源少,可以站着使用-独处环境。KVM等虚拟化解决方案速度更快,占用的资源更少。
虚拟化是计算机中的一个广义术语,通常指在虚拟而非真实基础上运行的计算元素。
虚拟化原本是指对资源的抽象,即单个物理资源的多个逻辑表示或者多个物理资源的单个逻辑表示。具体到服务器虚拟化,它是多个物理资源的单一逻辑表示。
虚拟化技术可以扩展硬件的容量并简化软件的重新配置过程。CPU虚拟化技术可以用单个CPU模拟多个CPU并行,允许一个平台同时运行多个操作系统,应用程序可以在独立的空间运行而不互相影响,从而显着提高计算机的工作效率。
在当今的制造环境中,虚拟化技术主要用于解决高性能物理硬件的产能过剩以及低容量旧硬件的重组和复用问题,并使物理硬件底层透明化,从而最大限度地提高设备的利用率。物理硬件。
三、容器和虚拟机的区别容器和虚拟机的区别:
容器:在操作系统上以编程方式创建的容器安装在操作系统上,共享同一个操作系统,直接使用内核。程序。虚拟机:创建在操作系统之上,具有操作系统级别、特定操作系统和安装,并且基于管理程序。容器:支持持续开发、集成和部署,可靠且可重复的容器镜像构建/部署,支持快速轻松的恢复
虚拟机:支持持续开发、集成和部署,但是实现过程非常复杂,自动化程度较低,支持复杂的快照恢复。虚拟机:自定义镜像以保持本地一致性
容器:云平台或其他操作系统,例如Ubuntu、RHEL、CoreOS、on-prem、GoogleContainerEngine或任何其他都可以用于工作环境。
虚拟机:可以运行在几乎所有操作系统上。
容器:监控水平较低,缺乏完整的监控平台。虚拟机:监控水平较高,很多监控系统也比较完善。