【云计算基础知识1】虚拟化与容器

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

B站视频


一、虚拟化

定义:一种计算机资源管理技术,将各种IT实体资源抽象、转换成另一种形式的技术。

作用:将一台计算机虚拟为多台逻辑计算机,在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可以运行不同操作系统,提高计算机工作效率。

云计算以虚拟化为核心技术。

  1. 虚拟化中的几个概念

【云计算基础知识1】虚拟化与容器,云计算,云计算

  • Guest OS:运行在虚拟机上的OS
  • Guest Machine:虚拟出来的虚拟机
  • VMM(Virtual Machine Monitor):虚拟机监视器,即虚拟化层。相当于一个软件,安装就行。
    提供转换抽象这个核心功能,调配物理机资源
  • Host OS:运行在物理机上的OS
  • Host Machine:物理机
  1. 虚拟化特点

1、 分区:指可在一台服务器上运行多台虚拟机。
2、 隔离:分区完后的所有虚拟机之间相互隔离,每个虚拟机就像一台单独的物理机。
优点:当前虚拟机中毒崩溃并不会影响该物理机上的其他虚拟机。
3、 封装:整个虚拟机运行条件封装在独立文件夹中,可通过移动文件夹方式迁移虚拟机。
4、 相对于硬件独立:软硬件解耦。不必考虑硬件设施,解决了硬件的不兼容性。

summary:操作系统与物理服务器分离;易迁扩展,资源易于整合,易于保护;物理硬件标准化;

二、虚拟化类型

  1. 寄居虚拟化

在宿主机操作系统上安装和运行虚拟化程序(虚拟化层安装在主机操作系统上面)。eg.在windows上装一个Ubuntu虚拟机。

【云计算基础知识1】虚拟化与容器,云计算,云计算

  • 特点

① 简单、易于实现。
① 安装和运行应用程序依赖于主机OS对设备的支持;
② 两层OS,管理开销、性能损耗大;
③ 虚拟机对各种物理设备(CPU、内存、硬盘等)的调用,通过虚拟化层和宿主机OS一起协调才能完成。

  • 典型

Vmware Workstation、VirtualBox

  1. 裸金属虚拟化

直接将VMM安装在硬件设备上,VMM在这种模式下又叫Hypervisor,虚拟机有指令要执行时,Hypervisor会接管该指令,模拟相应操作。

【云计算基础知识1】虚拟化与容器,云计算,云计算

  • 特点

① 不依赖于主操作系统
② 支持多种操作系统多种应用(屏蔽了底部硬件的不兼容性)
① 依赖于虚拟层内核和服务器控制台进行管理
④ 需要对虚拟层内核进行开发(难度大)

  • 典型

Vmware ESX、Xen、华为FusionSphere

  1. 混合虚拟化

在现有的正常的操作系统下安装插入一个内核模块,内核拥有虚拟化能力。(相当于寄居和裸金属的混合)

【云计算基础知识1】虚拟化与容器,云计算,云计算

  • 特点

① 相较于寄居虚拟化架构,性能高
② 相较于裸金属虚拟化架构,不需要开发内核
③ 可支持多种操作系统
① 需要底层硬件支持虚拟化扩展功能

  • 典型

Redhat KVM

三、虚拟化层架构

虚拟层架构有:全虚拟化、半虚拟化、硬件辅助虚拟化。

  1. 全虚拟化

所抽象的VM具有完全的物理特性,虚拟化层负责捕获CPU指令,为指令访问硬件充当媒介。(<=>混合虚拟化)

【云计算基础知识1】虚拟化与容器,云计算,云计算
eg. VMware、VirtualBox、Virtual PC、KVM-x86

  • 特点

① Guest OS不需要修改(只需在Host OS中插入一个KVM模块)
② 功能和速度好,使用简单
③ 移植性好(只需移动内核)
① 效率不高

  • 典型代表——KVM

基于Linux内核的虚拟化技术,可以直接将Linux内核转换为Hypervisor,从而使得Linux内核能够直接管理虚拟机,直接调用Linux内核中的内存管理、进程管理子系统来管理虚拟机。

组成:内核态KVM + 用户态QEMU
【云计算基础知识1】虚拟化与容器,云计算,云计算
将内核模块(KVM+QEMU)插入宿主机,使得宿主机具有虚拟化功能。
KVM:提供CPU和内存虚拟化功能,以及一些核心安全的功能,并向这些功能提供一些接口。
QEMU:使用接口完成设备的模拟(eg. IO虚拟化模拟、网络虚拟化模拟等等)。

物理机进程:宿主机上运行的进程
虚拟机进程:虚拟出来的虚拟机中运行的进程
虚拟机进程只是物理机进程的一个线程。 eg. 上述windows虚拟机其实是一个物理机进程,其中的虚拟机进程是其的一个线程。
进程是由CPU产生的,因此才可以虚拟出来多台虚拟机。eg. 一个CPU最多可生成16个进程,则最多可虚拟出来16台虚拟机。

  1. 半虚拟化

起初为解决全虚拟化效率不高的问题。Hypervisor直接安装在物理机上,多个虚拟机在Hypervisor上运行。(全虚拟化不修改OS,直接插入;半虚拟化修改OS,将底层直接变成虚拟化层,因此效率高) <=> 裸金属虚拟化

【云计算基础知识1】虚拟化与容器,云计算,云计算
eg. Xen、VMware ESXi、微软Hype-V

  • 特点

① 架构精简,整体速度上有一定优势
① 修改开发OS,用户体验麻烦,难度大(每次升级都要修改开发一次,升级麻烦;全虚拟化升级简单)

  • 典型代表——Xen

直接修改OS内核成一个轻量级Hypervisor,在里面运行了一个管理所有资源、做资源调度的Domain0。

组成:Xen Hypervisor(虚拟化层) + Domain0(管理主机) + DomainU(用户虚拟机)
【云计算基础知识1】虚拟化与容器,云计算,云计算
用户态运行调用过程(通过Domain0进行控制和转发):
【云计算基础知识1】虚拟化与容器,云计算,云计算
资源分配过程正好相反。

  1. 硬件辅助虚拟化

直接修改CPU使其支持虚拟化技术。只是辅助全虚拟化和半虚拟化。

  1. 全/半虚拟化架构的对比

【云计算基础知识1】虚拟化与容器,云计算,云计算
summary:
1、 Xen平台架构侧重安全性:为保证安全性,各Domain之间对共享区域的访问和映射必须通过Hypervisor授权。
2、 KVM平台架构侧重性能:VM之间以及与Host Kernel之间对共享区域的访问和映射无需Hypervisor进行授权。使用Linux 裸金属内核,故整个访问路径较短,无性能损耗。

四、容器

利用1个开源应用容器引擎,让开发者可以打包他们的应用和依赖包到一个可移植镜像中,发布到任意Linux or Windows机器上实现虚拟化。实现app与OS解耦。

镜像是可执行的独立软件包,包含软件运行的内容(代码、运行环境、系统工具…)。容器就是将OS上层的应用进行隔离。

  • 主流容器技术——Docker

Docker属于Linux容器的一种封装,提供简单易用的容器使用接口。有了Docker就不用担心环境问题了。

将应用程序与该程序的依赖打包在一个文件里,运行这个文件就会生成一个虚拟容器,程序在这个虚拟容器中运行,就好像在真实物理机上运行一样。

核心:实现应用与运行环境整体打包以及打包格式的统一。

  • 容器的组成

客户端(Docker Client):图形化界面,与客户交流;
守护进程(Docker Daemon):接收客户端消息,与底层交流;
镜像(Docker Image):创建Docker容器;
容器(Docker Container):镜像运行的示例;
仓库(Docker Registry):存放镜像文件。

  • 容器的特点

本质上是一款轻量级的虚拟化技术。
① 用户需要高效运行环境,而非整个机器;
② 一次构建(build),到处运行;
③ 部署方便(创建速度秒级);
④ 隔离性好(相对于应用程序而非OS);
⑤ 成本低。

  • 容器和虚拟化的区别

主要:容器不用打包OS,虚拟化需要

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

1、提供一次性环境;
2、提供弹性云服务。随开随关、动态扩容缩容;
3、组建微服务架构。一台机器通过多个容器跑多个服务。

summary:虚拟化实现底层硬件和OS解耦,容器实现app和OS解耦。文章来源地址https://www.toymoban.com/news/detail-753318.html

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

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

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

相关文章

  • 虚拟化的基础知识

    虚拟化的基础知识

    目录 虚拟化基础 虚拟化的概念 虚拟化的特征(本质) 虚拟机的两大派别 VMM讲解 虚拟化中的一些重要概念 VMM的功能以及分类 虚拟化的架构 寄居虚拟化 裸金属虚拟化 操作系统虚拟化 混合虚拟化 虚拟化的三个方向 什么是虚拟化 虚拟化的本质是一种资源管理技术,将计算机

    2024年02月06日
    浏览(28)
  • 云计算:从基础架构原理到最佳实践之:虚拟化技术与容器化

    作者:禅与计算机程序设计艺术 作为一名资深软件工程师、架构师、CTO或者云计算相关技术人员,如果想要提升自己对于云计算的理解和掌握能力,那么文章将会非常有帮助。文章将从云计算的最底层——基础架构开始介绍,向高级用户展示如何利用云服务提供商提供的基础

    2024年02月08日
    浏览(11)
  • 【云计算学习教程】云计算虚拟化技术和容器技术详解_云计算虚拟化技术与容器技术

    【云计算学习教程】云计算虚拟化技术和容器技术详解_云计算虚拟化技术与容器技术

    这跟交通网络很相似,连接两个城市的交通网络具备的第一个功能就是汽车从一个城市到达另一个城市;第二个功能是控制到底走哪条线路最好。前者就是由公路组成的交通网络,后者就是交通控制系统。 下面我们再来看看传统的网络设备(比如一台路由器)的逻辑分层结构

    2024年04月22日
    浏览(15)
  • 云计算实验-虚拟化和容器技术综合实验

    云计算实验-虚拟化和容器技术综合实验

    一、实验目的 搭建VMware环境,掌握VMware平台的网络配置方法,具备在VMware中创建和管理虚拟机的能力。 掌握在ubuntu系统中安装kvm的方法,具备使用kvm创建和管理虚拟机的能力,同时进一步加深对于虚拟化技术的理解。 实现Docker平台的安装部署及使用,具备管理Docker镜像和容

    2024年01月22日
    浏览(12)
  • 云计算基础-计算虚拟化-内存虚拟化

    云计算基础-计算虚拟化-内存虚拟化

    内存在物理上是由内存卡提供的,也就是我们俗称的内存条,内存条提供了物理内存。 在物理内存之上还有虚拟内存,虚拟内存操作系统给程序分配的一段连续的内存,属于逻辑上的概念。 虚拟内存和物理内存之间会有一个映射关系,这个映射关系我们称之为页表,通过页

    2024年02月20日
    浏览(13)
  • 【Docker】容器化和虚拟化基础

    【Docker】容器化和虚拟化基础

    1979 年 贝尔实验室发明 chroot chroot的设计原理是:把一个进程的文件系统隔离起来。 ​ chroot 系统调用可以将进程及其子进程的根目录更改为文件系统中的新位置。隔离以后,该进程无法访问到外面的文件,因此这个被隔离出来的新环境像监狱一样,被命名为 Chroot Jail (监狱

    2024年02月10日
    浏览(7)
  • 云计算基础-计算虚拟化-CPU虚拟化

    云计算基础-计算虚拟化-CPU虚拟化

    在CPU的工作原理中,CPU有不同的指令集,如下图,CPU有4各指令集:Ring0-3,指令集是在服务器上运行的所有命令,最终都会在CPU上执行,但是CPU并不是说所有的命令都是一视同仁的,它会把命令分为不同的指令集 Ring0指令集称之为内核态指令集,改啊指令集里面啊运行的主要

    2024年02月20日
    浏览(12)
  • 云计算学习笔记——第二章 虚拟化与容器

    1.什么是虚拟化    一种计算机资源管理技术 ,将各种IT资源抽象、转换成平一种形式的技术都是虚拟化技术。 2.作用   通过该技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个计算机可运行不同的操作系统,并且应用程序都可以

    2024年01月22日
    浏览(10)
  • 【云计算】云计算八股与云开发核心技术(虚拟化、分布式、容器化)

    【云计算】云计算八股与云开发核心技术(虚拟化、分布式、容器化)

    【云计算】云计算八股与云开发核心技术(虚拟化、分布式、容器化) 1、云计算的架构(基础设施,平台,软件) 国内做公有云的主要有:腾讯云,阿里云,华为云(对外销售) 做垂直私有云的有:米哈游,字节火山,等等 云计算的三种服务模式(企业卖的东西) IaaS:

    2024年04月23日
    浏览(10)
  • 云计算基础-网络虚拟化

    云计算基础-网络虚拟化

    什么是虚拟交换机 虚拟交换机是一种运行在虚拟化环境中的网络设备,其运行在宿主机的内存中,通过软件方式在宿主机内部实现了部分物理交换机的功能,如 VLAN 划分、流量控制、QoS 支持和安全功能等网络管理特性 比如有两台服务器,他们之间想要通信,需要一台物理交

    2024年02月20日
    浏览(13)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包