0

0

详解:虚拟化与容器化,你分清了吗?

絕刀狂花

絕刀狂花

发布时间:2025-09-13 08:01:33

|

682人浏览过

|

来源于php中文网

原创

虚拟机和容器是现代计算中常见的两种抽象形式,但它们之间存在显著的区别。我们来详细探讨一下。

详解:虚拟化与容器化,你分清了吗?服务器虚拟化

如今,许多企业倾向于将每台服务器专用于特定的任务或应用程序,因为不同的应用或程序可能不适合在同一系统中运行。然而,大多数服务器在运行计算任务时仅使用其整体处理能力的一小部分,无法充分利用服务器的处理能力。

虚拟化技术解决了这一问题,通过将多台服务器整合到一台服务器中,运行多个虚拟环境。每台虚拟机(VM)都有自己的操作系统(可以是不同的操作系统),可以在其上安装应用程序。

虚拟机的设计原理是彼此隔离,并且与虚拟主机隔离,这意味着一个应用程序中的安全问题不会影响在另一个虚拟机中运行的应用程序。同样,如果一个应用程序崩溃并需要重新启动服务器,可以只重新启动其所在的VM,而不影响其他VM的运行。不过,这种隔离偶尔也会被打破,这种现象称为VM逃逸。

虚拟化还增强了可扩展性,因为VM是可移植的。例如,如果两个应用程序在一个虚拟主机上的VM中运行,但其中一个需要更多资源,以至于两个VM不能再在同一主机上共存。

如果没有虚拟化,将一个应用程序移动到新服务器将是一项艰巨的任务。但由于VM是以计算机文件形式存在的,因此可以通过网络(甚至通过存储介质)轻松复制或移动到新的虚拟主机上。事实上,VMware的vMotion和微软的Live Migration等特性甚至允许在运行时将虚拟机移动到新的主机,以确保服务不中断。

此外,这对于灾难恢复也具有重要意义。如果发生灾难,虚拟机可以转移到辅助站点,且无需镜像主站点。基本上只需在辅助站点上准备足够数量的虚拟主机即可。

Hypervisor是一种运行在基础物理服务器和操作系统之间的中间软件层,允许多个操作系统和应用共享硬件(有时也称为虚拟机监视器)。这可以是“裸机”hypervisor(也称为Type 1 hypervisor),例如包含自己的OS内核并直接在物理服务器上运行的VMware ESXi,也可以是内置于操作系统中的hypervisor(也称为Type 2 hypervisor),例如在Windows Server和Windows 10上运行的Microsoft的Hyper-V。

IBM在20世纪60年代开发了第一个hypervisor,如今流行的hypervisor包括Hyper-V、ESXi、KVM和Nutanix AHV。

容器

与虚拟化不同,容器主机需要运行自己的操作系统以及容器系统。

容器由单个应用程序(或微服务)以及运行所需的其他重要文件组成,利用容器主机的操作系统内核、二进制文件和库来运行。这些共享文件以只读方式提供给容器。在容器主机上运行的其他容器也共享主机的内核、二进制文件和库。

拍客piikee竞拍系统
拍客piikee竞拍系统

拍客竞拍系统是一款免费竞拍网站建设软件,任何个人可以下载使用,但未经商业授权不能进行商业活动,程序源代码开源,任何个人和企业可以进行二次开发,但不能以出售和盈利为目的。安装方法,将www文件夹里面的所有文件上传至虚拟主机,在浏览器执行http://你的域名/install.php或者直接导入数据库文件执行。本次升级优化了一下内容1,程序和模板完美分离。2,优化了安装文件。3,后台增加模板切换功能。

下载

由于容器比虚拟机“轻”得多,并且启动速度也快得多,这使得它们成为运行微服务的理想工具。当对微服务的需求扩大时,可以启用容器,当需求减少时可以删除。它们也可以在公有云和私有云以及传统数据中心之间轻松移动。

目前最受欢迎的容器环境是Docker,其他还有rkt,Apache Mesos,lxc,containerd, Hyper-V Containers, and Windows Server Containers。

诸如Red Hat的Fedora CoreOS之类的专用操作系统是专门为安全、大规模地运行容器化工作负载而构建的。

虚拟机与容器

由于多个容器之间使用的还是同一个宿主机的操作系统内核,因此导致了容器与虚拟机之间存在一些重要区别:

容器比虚拟机小得多或“轻”得多,通常由几兆字节组成,并且所需的硬件资源也少得多。这意味着一台物理服务器可以承载的容器比虚拟机要多得多。容器可以在几秒甚至几毫秒内启动。相比之下,虚拟机的启动时间较长。由于容器都共享其主机的操作系统,因此所有应用程序都必须在同一操作系统上运行。相比之下,运行在虚拟主机上的虚拟机可以运行不同的操作系统(例如Linux,Unix和Windows)。使用容器时,只需要对容器主机的操作系统进行补丁和更新。而虚拟机则需对每个操作系统都进行补丁和更新。如果一个容器导致容器主机的操作系统崩溃,则在该主机上运行的所有容器都将失败。容器主机的操作系统内核中的安全漏洞将影响其所托管的所有容器。

虚拟机和容器的使用场景

虚拟机非常适合传统的资源密集型单片应用程序,尤其是准备将这些应用程序移至云中时。

容器更适合承载Web服务中使用的微服务,特别是在对可扩展性要求很高的情况下。当以这种方式使用容器时,通常由容器编排系统对其进行管理,以自动执行计算机应用程序的部署、扩展和管理。这些通常基于Kubernetes,Kubernetes是最初由Google设计但现在由云原生计算基金会维护的开源系统。

不仅如此,容器和虚拟机也可以共存,容器可以在虚拟机中运行,企业可以利用现有的虚拟化基础设施(例如虚拟机管理系统)来管理其容器。

相关专题

更多
windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

523

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1059

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

753

2023.08.01

windows查看端口被占用的情况
windows查看端口被占用的情况

windows查看端口被占用的情况的方法:1、使用Windows自带的资源监视器;2、使用命令提示符查看端口信息;3、使用任务管理器查看占用端口的进程。本专题为大家提供windows查看端口被占用的情况的相关的文章、下载、课程内容,供大家免费下载体验。

427

2023.08.02

windows无法访问共享电脑
windows无法访问共享电脑

在现代社会中,共享电脑是办公室和家庭的重要组成部分。然而,有时我们可能会遇到Windows无法访问共享电脑的问题。这个问题可能会导致数据无法共享,影响工作和生活的正常进行。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2343

2023.08.08

windows自动更新
windows自动更新

Windows操作系统的自动更新功能可以确保系统及时获取最新的补丁和安全更新,以提高系统的稳定性和安全性。然而,有时候我们可能希望暂时或永久地关闭Windows的自动更新功能。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

769

2023.08.10

windows boot manager
windows boot manager

windows boot manager无法开机的解决方法:1、系统文件损坏,使用Windows安装光盘或USB启动盘进入恢复环境,选择修复计算机,然后选择自动修复;2、引导顺序错误,进入恢复环境,选择命令提示符,输入命令"bootrec /fixboot"和"bootrec /fixmbr",然后重新启动计算机;3、硬件问题,使用硬盘检测工具进行扫描和修复;4、重装操作系统。本专题还提供其他解决

1481

2023.08.28

windows锁屏快捷键
windows锁屏快捷键

windows锁屏快捷键是Windows键+L、Ctrl+Alt+Del、Windows键+D、Windows键+P和Windows键+R。本专题为大家提供windows相关的文章、下载、课程内容,供大家免费下载体验。

1603

2023.08.30

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

74

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Node.js 教程
Node.js 教程

共57课时 | 7.8万人学习

CSS3 教程
CSS3 教程

共18课时 | 4.2万人学习

Sass 教程
Sass 教程

共14课时 | 0.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号