网站首页 > 教程文章 正文
虚拟化是云计算技术的核心,Hypervisor通过硬件虚拟化模拟出可以运行操作系统的各种硬件,比如CPU、内存、I/O设备等。然后在这些虚拟的硬件上安装一个新的操作系统GuestOS,这样用户的应用就可以运行在这台虚拟机中,该应用只能看到GuestOS的文件和目录,以及这台虚拟机里的虚拟设备,从而实现了将不同的应用进程相互隔离。因为在虚拟机中必须运行一个完整的GuestOS,才能执行用户的应用进程,所以就不可避免地带来了额外的资源和时间的消耗。
容器被称为轻量级的虚拟化技术,它并没有一个真正的容器层运行在宿主机上,而是帮助应用进程在创建过程中加上各种各样的namespace参数。这时容器进程就会觉得自己是各自 PID namespace 里的第1号进程,只能看到各自 mount namespace 里挂载的目录和文件,只能访问各自network namespace 里的网络设备,就像运行在一个个隔离的「容器」里面,但其实这只是一个被逻辑构建出来的「虚拟沙箱」。相比虚拟机,容器化的应用只是宿主机上的普通进程,这就意味着不存在虚拟化带来的性能损耗。使用 namespace作为隔离手段的容器并不需要单独的 GuestOS,这就使得容器额外的资源占用几乎可以忽略不计。
如上图,容器和虚拟机的相比较,我们可以看到,容器对操作系统进行抽象,虚拟机对底层硬件进行虚拟化抽象处理,容器有自己的CPU、内存、文件系统,能够像虚拟机一样独立运行却占用更少的资源。长期来看,容器技术将以其轻量化、快速化的优势取代虚拟化技术,为应用运行提供最好的支持,但是诸如安全隔离、底层资源供给等问题仍需要通过虚拟化来解决。
- 上一篇: 重学容器10: 容器仅仅是一种特殊的进程
- 下一篇: 容器与 Pod的区别和联系
猜你喜欢
- 2025-01-06 什么是容器编排及容器编排是怎么工作的?
- 2025-01-06 人的心灵就像一个容器,懂得时长清理沉淀,只留清明
- 2025-01-06 深入理解Spring4框架(二)--容器
- 2025-01-06 特种设备—压力容器的定义
- 2025-01-06 云服务器与容器的区别和联系
- 2025-01-06 精选文章-人生就是一个容器
- 2025-01-06 食量大小与容器有关
- 2025-01-06 家是生活的容器
- 2025-01-06 经常说的容器板是什么东西?09MnNiDR又是什么?
- 2025-01-06 压力容器与气瓶基本知识与安全培训
- 最近发表
- 标签列表
-
- location.href (44)
- document.ready (36)
- git checkout -b (34)
- 跃点数 (35)
- 阿里云镜像地址 (33)
- qt qmessagebox (36)
- md5 sha1 (32)
- mybatis plus page (35)
- semaphore 使用详解 (32)
- update from 语句 (32)
- vue @scroll (38)
- 堆栈区别 (33)
- 在线子域名爆破 (32)
- 什么是容器 (33)
- sha1 md5 (33)
- navicat导出数据 (34)
- 阿里云acp考试 (33)
- 阿里云 nacos (34)
- redhat官网下载镜像 (36)
- srs服务器 (33)
- pico开发者 (33)
- https的端口号 (34)
- vscode更改主题 (35)
- 阿里云资源池 (34)
- os.path.join (33)