云计算学习笔记——第二章 虚拟化与容器

这篇具有很好参考价值的文章主要介绍了云计算学习笔记——第二章 虚拟化与容器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、虚拟化

1.什么是虚拟化

  一种计算机资源管理技术,将各种IT资源抽象、转换成平一种形式的技术都是虚拟化技术。

2.作用

  通过该技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率

3.云计算与虚拟化的关系

  从行业数据相互关联的角度看,云计算是非常依赖虚拟化的。但云计算并非虚拟化,虚拟化也并非云计算虚拟化只是云计算的核心技术,但并非云计算的核心关注点。云计算可以说是一种服务,虚拟化则是一种技术基础。一个服务有了技术支持才能进行服务。

4.虚拟化中的几个概念

(1)Guest OS:运行在虚拟机上的操作系统。
(2)Guest Machine:虚拟出来的虚拟机。
(3)VMM:虚拟监视器,即虚拟化层。
(4)Host OS:运行在物理机上的操作系统。
(5)Host Machine:物理机。

5.虚拟化特点

(1)分区:分区可以在一台服务器上运行多台虚拟机,使一台服务器运行多个应用程序。
(2)隔离:隔离指的是将分区完成后的所有虚拟机之间相互隔离,每个虚拟机像单独的物理主机。
(3)封装:整个虚拟机运行条件封装在独立文件夹中,以文件形式进行虚拟机的封装,可以通过移动文件的方式来迁移虚拟机。
(4)软硬件解耦:即相对于硬件硬件独立,虚拟机运行在虚拟化层之上,不必考虑物理服务器即可在任何服务器上运行。

二、虚拟化类型

1.寄居虚拟化

(1)什么是寄居虚拟化:在主机(宿主)操作系统上安装和运行虚拟化程序。
(2)特点
  ①操作简单、易于实现。
  ②安装和运行应用程序依赖于主机操作系统对设备的支持。
  ③有两层操作系统,管理开销较大,性能损耗大。
  ④虚拟机对各种物理设备(CPU、内存、硬盘等)的调用,都是通过虚拟化层和宿主机的操作系统一起协调才能完成的。
(3)VMware Workstation和VirtualBox都是基于这种方式实现的。

2.裸金属虚拟化

(1)什么是裸金属虚拟化:直接将虚拟化层VMM直接安装在硬件设备上,虚拟化层VMM在这种模式下又叫做Hypervisor,虚拟机有指令要执行时,Hypervisor会接管该指令,模拟相应的操作。
(2)特点
  ①不依赖于操作系统。
  ②支持多种操作系统,多重应用。
  ③依赖虚拟层内核和服务器控制台进行管理。
  ④需要对虚拟层的内核进行开发。
(3)应用:VMware EXS、Xen、华为FusionSphere。

3.混合虚拟化

(1)什么是混合虚拟化:在一个现有的正常操作系统下安装一个内核模块,内核拥有虚拟化能力。(相当于寄居虚拟化与裸金属虚拟化的混合)
(2)特点
  ①相对于寄居虚拟化架构,性能高。
  ②相对于裸金属虚拟化架构,不需要开发内核。
  ③可支持多种操作系统。
  ④需要底层硬件支持虚拟化扩展功能。
(3)应用:Redhat KVM

三、虚拟化层架构

  全虚拟化(如KVM)、半虚拟化(如Xen)、硬件辅助虚拟化(如Intel-VTX)。
(1)全虚拟化
  即所抽象的VM具有完全的物理特性,虚拟化层负责捕获CPU指令,为指令访问硬件充当媒介。如,VMware、Virtualbox、Virtualbox、Virtual PC、KVM-x86等。其特点是:Guest OS(操作系统内核)无需修改;速度和功能都非常不错;使用简单;移植性好;效率不高。KVM是一个基于Linux内核的虚拟化技术,可以直接将Linux内核转换成Hypervisor。从而使得Linux内核能够直接管理虚拟机,直接调用Linux内核中的内存管理、进程管理子系统来管理虚拟机。KVM由处于内核态的KVM和用户态的QEMU两部分组成。虚拟机中的进程只是进程中的一个线程。KVM访问路径短,无性能损耗。
(2)半虚拟化
  起初是为了解决全虚拟化效率不高的困难,它需要修改操作系统OS,工作系统相对于全虚拟化要高很多。Hypervisor直接安装在物理机上,多个虚拟机在Hypervisor上运行。Hypervisor实现方式一般是一个特殊定制的Linux 系统。典型的有:Xen、VMWare ESXi、微软Hyper-V。其特点是:架构更精简;在整体速度上具有一定优势;需要对OS进行修改,在用户体验方面比较麻烦。Xen直接把操作系统内核改了,把操作系统改成了一个轻量级Hpervisor在里面运行了一个管理所有资源作资源调度的Domain0。Xen由Xen Hypervisor(虚拟化层)、Domin0(管理主机)、Domin U(用户虚拟机)组成,支持全虚拟化和半虚拟化,安全性高。
(3)硬件辅助虚拟化
  随着虚拟化技术的应用越来越广泛,Intel、AMD等硬件厂商通过对硬件的改造来支持虚拟化技术,这就是硬件辅助虚拟化。常用于优化全虚拟化和半虚拟化产品,像VMware Workstation,它虽然属于全虚拟化,但在6.0版本中引入了硬件辅助虚拟化技术,比如Intel的VT-x和AMD的AMD-V。主流全虚拟化和半虚拟化产品都支持硬件辅助虚拟化。

四、容器

1.什么是容器

  包装或者装载物品的贮存器,利用一个开源的应用容器引擎,让开发者可以将他们的应用以及依赖包打包到一个可移植的景象中,然后发布到任何一个Linux或Windows机器上,也可以实现虚拟化。实现APP和操作系统的解耦

2.什么是镜像

  镜像是可执行的独立软件包,包含软件运行的内容(代码、运行时的环境、系统工具、系统库和设置)。容器就是将操作系统上层的应用进行了隔离。

3.主流容器技术——Docker

(1)定义
  Docker属于Linux容器的一种封装,提供简单易用的容器使用接口,它是目前最流行的Linux容器解决方案。
(2)作用
  将应用程序与该程序的依赖,打包在一个文件里。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了Docker,就不用担心环境问题了。
(3)核心
  实现应用与运行环境整体打包以及打包格式统一。

4.容器的组成(以Docker为例)

(1)客户端:使用容器的用户用来进行交流管理的图形化界面。
(2)守护进程:用来接收客户端的消息,Docker的客户端给用户提供一些可执行的命令,这些命令通过守护进程进行交互实现。
(3)镜像:用来创建Docker的容器,一个镜像可以创建多个容器,开发者可以将这些应用程序和配置的依赖包打包进行交互,进行运行,这些运行环境打包的文件就是一个镜像。
(4)容器:容器是镜像运行的实例,也就是说镜像在外的体现就是容器。
(5)仓库:用来存放镜像文件。

5.容器的特点

(1)用户需要高效运行环境,而非整个机器。
(2)一次构建、到处运行。
(3)部署方便(创建的速度快)。
(4)隔离性好。
(5)成本低。
  容器本质上是一款轻量级虚拟化技术。

6.容器和虚拟化的区别

虚拟化 容器
隔离性强,有独立的客户操作系统 (Guest OS) 共享内核和操作系统,隔离性弱
虚拟化性能差(>15%) 计算/存储无损耗,无客户操作系统内存开销(~200M)
虚拟机镜像庞大(十几G~几十G),且实例化时不能共享 Docker容器镜像200M~300M,且公共基础镜像实例化时可以共享
虚拟机镜像缺乏统一标准 Docker提供了容器应用镜像的事实标准,OCI推动进一步标准化
虚拟机创建慢(>2min) 秒级创建(<10s)相当于建立索引
虚拟机启动慢(>30s)读文件逐个加载 秒级(<1s,不含应用本身启动)
资源虚拟化粒度低,单机10~100虚拟机 单机支持1000+容器,密度很高,适合大规模的部署

7.Docker容器的主要用途

(1)提供一次性的环境。比如,本地测试他人的软件、持续集成的时候提供单元测试和构建的环境。
(2)提供弹性的云服务。因为Docker容器可以随开随关,很适合动态扩容和缩容。
(3)组建微服务架构。通过多个容器,一台机器可以跑多个服务,因此在本机就可以模拟出微服务架构。文章来源地址https://www.toymoban.com/news/detail-813314.html

到了这里,关于云计算学习笔记——第二章 虚拟化与容器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机网络-笔记-第二章-物理层

    一、第一章——计算机网络概述 二、第二章——物理层 三、第三章——数据链路层 四、第四章——网络层 五、第五章——运输层 六、第六章——应用层 目录 二、第二章——物理层 1、物理层的基本概念 2、物理层下面的传输媒体 (1)光纤、同轴电缆、双绞线、电力线【导

    2024年02月11日
    浏览(31)
  • 【计算机网络笔记】第二章物理层

    ①机械特性:接口是怎样的(接口所用接线器的形状和尺寸,引脚数目和排列,固定和锁定装置等)。 ②电气特性:用多少的电 ③功能特性:线路上电平电压的特性 ④过程特性:实现不同功能所发射信号的顺序 (P42) ①模拟信号:代表消息的参数的取值是连续的,特定频

    2024年02月14日
    浏览(26)
  • 云计算学习,第二章,私有企业网络构建运维

    ( 1 )通过组网设计,掌握小型交换网络的组建,对小型网络系统进行分析,提出建网 解决方案。 ( 2 )掌握 Trunk 接口和 VLAN 相关技术概念。 ( 3 )综合运用 VLAN 创建、 Access 和 Trunk 接口配置、 VLAN 划分,实现网络的互连 互通。 1. 架构分析 ( 1 )需求分析 本实验的目的

    2024年02月03日
    浏览(45)
  • 【计算机网络 谢希仁 第八版笔记】第二章 物理层

    同栏目的其他内容: 物理层的作用正是尽可能地屏蔽掉这些传输媒体和通信手段地差异,使物理层上面地数据链路层感觉不到这些差异,这样数据链路层只需要考虑如何完成本层地协议和服务,而不必考虑网络具体地传输媒体和通信手段。 可以将物理层地主要任务描述为确

    2024年01月16日
    浏览(35)
  • JS深入学习笔记 - 第二章.类和对象

    3.1面向对象 这里顺带提一句学习JAVA时,老师说的面向对象和面向过程的区别: 面向过程:强调做什么事情,具体什么步骤。举个把大象放进冰箱的例子: 打开冰箱门 把大象放进冰箱 关上冰箱门 面向对象: 强调的是做动作的主体(称之为对象) 冰箱 :打开操作 冰箱 :放

    2024年02月08日
    浏览(37)
  • dx12 龙书第二章学习笔记 -- 矩阵代数

    1.矩阵及其运算 矩阵的运算 :①加②减③标量乘法 ④矩阵乘法: 矩阵乘法要有意义的条件是矩阵A的列数和矩阵B的行数必须相同,所以一般不满足交换律 ⑤转置矩阵: ⑥矩阵行列式:det A 学习行列式的主要目的是:利用它推导出求逆矩阵的公式 方阵A是可逆的,当且仅当det

    2024年02月11日
    浏览(38)
  • 【UnityShader入门精要学习笔记】第二章(3)章节答疑

    本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 + 个人批注 项目源码 一堆新手会犯的错误 潜在的太监断更,有始无终 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 (PS:章节答疑不是我答,是原作者对一些比较容易产生困惑的地

    2024年02月03日
    浏览(45)
  • 计算机网络——自顶向下方法(第二章学习记录)

    本章学习应用层 网络应用是计算机网络存在的理由。 现代网络应用程序有两种主流体系结构:客户—服务器体系结构和对等(P2P)体系结构 客户—服务器体系结构 (client-server ),在这个结构中,有一个总是打开的主机称为服务器,它服务于来自许多其他称为客户的主机的请求

    2024年02月09日
    浏览(30)
  • 【计算机组成原理】24王道考研笔记——第二章 数据的表示和运算

    1.1 进制转换 任意进制-十进制: 二进制-八进制、十六进制: 各种进制的常见书写方式: 十进制-任意进制:(用拼凑法最快) 真值:符合人类习惯的数字(带±号的数) 机器数:正负号被“数字化” 1.2 定点数 常规计数:定点数;科学计数法:浮点数 无符号数: 有符号定

    2024年02月16日
    浏览(33)
  • Rx.NET in Action 第二章学习笔记

    本章节涵盖的内容: 不使用Rx的工作方式 向项目中添加Rx 创建你的第一个Rx应用程序 Rx 的目标是协调和统筹来自社交网络、传感器、用户界面事件等不同来源的基于事件的异步计算。例如,建筑物周围的监控摄像头和移动传感器会在有人靠近建筑物时触发,并从最近的摄像头

    2024年02月12日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包