云计算——虚拟化层架构

  • 作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 

  •  座右铭:低头赶路,敬事如仪

  • 个人主页:网络豆的主页​​​​​

 前言

本章将会讲解云计算的虚拟化层架构,了解云计算虚拟化层都有哪些架构模式。


一.虚拟化层架构

  • 虚拟化层架构:全虚拟化,半虚拟化,硬件辅助虚拟化

  • KVM--------》全虚拟化
  • Xen----------》半虚拟化
  • CPU(AMD,Intel)-------------》硬件辅助虚拟化

架构一:全虚拟化

全虚拟化:即所抽象的vm具有完全的物理特性,虚拟化层负责捕获CPU指令,为指令访问硬件充当媒介。

它使用虚拟机协调客户操作系统和原始硬件。全虚拟化是通过客户机和宿主机之间一个虚拟化逻辑层Hypervisor来完全模拟底层硬件细节。全虚拟化表示的是整个虚拟化都是用软件实现的。

 典型的有:VMware,Virtyalbox,virtual PC, KVM-x86

 VirtualBox是一款开源的虚拟机软件,使用者可以在VirtualBox上安装并且执行SolarisWindows、DOS、Linux、OS/2Warp、BSD等系统作为客户端操作系统。

 KVM-x86是基于内核的虚拟机(Kernel-based Virtual Machine),它是Linux的一个内核模块,该内核模块使得Linux变成了一个Hypervisor。它支持x86 (32 and 64 位), s390, Powerpc等CPU。

特点:

  • OS无需修改。
  • 速度和功能都非常不错,使用非常简单。
  • 移植性好。

全虚拟化:KVM

KVM(Kernel-Based Virtual Machines)是一个基于Linux内核的虚拟化技术,可以直接将Linux内核转化为Hypervisor。从而使得Linux内核能够直接管理虚拟机,直接调用Linux内核中的内存管理,进程管理子系统来管理虚拟机。

组成:由处于内核态的KVM模块(CPU虚拟化,内存虚拟化,接口)和用户态的QEMU两部分组成。

QWMU由KVM.ko所提供的接口完成其他的虚拟化(IO虚拟化,网络虚拟化)都是由QWMU组成。

  • 第一部分:内存,CPU,接口,虚拟化
  • 第二部分:其他虚拟化(IO等)

架构二:半虚拟化

半虚拟化:期初是为了解决全虚拟化效率不高的困难,它需要修改OS,工作效率相对于全虚拟化要高很多。Hypervisor直接安装在物理机上,多个虚拟机在Hypervisor上运行。Hypervisor实现方式一般是一个特殊定制的Linux系统。

典型的有xen,VMware ESXi,微软Hyper-V

Hyper-V 是 Microsoft 对虚拟机监控程序的实现。 Hyper-V 应用单个主计算机的资源,在同一物理硬件上运行的多个虚拟机 (VM ) 中分发该资源。 Hyper-V 为每个 VM 提供独立的空间来运行它自己的操作系统 (OS),它独立于主机 OS 和其他 VM。

特点:

  • 架构更精简
  • 在整体速度上有一点的优势
  • 需要对OS进行修改,在用户体验方面比较麻烦。

半虚拟化:Xen

Xen :直接把操作系统内核改了,把OS改成一个轻量级Hypervisor在里面运行了一个管理所有资源作资源调度的Domain0.

组成:由Xen Hypervisor(虚拟化层),Domin0(管理主机),Domin U(用户虚拟机)。

 


 架构三:硬件辅助虚拟化

  • 硬件辅助虚拟化:硬件辅助虚拟化是随着虚拟化技术的应用越来越广泛intel,AMD等硬件厂商通过对硬件的改造来支持虚拟化技术。

常用于优化全虚拟化和半虚拟化产品,像VMware Workstation,它虽然属于全虚拟化,但它在6.0版本中引入了硬件辅助虚拟化技术,比如Intel的VT-x和AMD的AMD-V。主流全虚拟化和半虚拟化产品都支持硬件辅助虚拟化。(VirtualBox,KVM,Xen等)


二.KVM架构与Xen架构对比

KVM(常用)

  • 支持全虚拟化
  • 内置在内核中
  • 便于版本安装,升级,维护
  • 性能高
  • 总结:KVM平台架构侧重性能

Xen

  • 支持全虚拟化,半虚拟化
  • 需要对内核修改
  • 跟新版本,Xen需要重新编译整个内核
  • 隔离性好
  • 总结:Xen平台架构侧重安全性


 创作不易,求关注,点赞,收藏,谢谢~ 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/2241.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF嵌入外部exe应用程序-实现基本的嵌入

WPF嵌入外部exe应用程序 使用场景功能实现嵌入基本功能实现1.导入windows API2.运行外部程序3. 获取窗体句柄4. 嵌入窗体5.设置子窗体位置整个代码 嵌入存在的问题: 使用场景 在WPF桌面应用程序开发过程中,有时候需要将其他程序结合到一起,让…

mssql 以xml类型为存储过程传递不确定数量的参数

mssql 以xml类型传递不确定数量的参数 存储过程xml 处理在存储过程中参数在存储过程中使用 xml 作为参数存储过程 相信各位小伙伴在使用数据库的过程中,或多或少的建立了一些存储过程,并且带有一些参数,用来增加存储过程的适用性。 类似老顾的截图这样的,通常,我们需要将…

Flutter开发实战:妙用策略模式(Strategy Pa

拓维信息-品牌营销专员(24届) 岗位名:品牌营销专员(24届) 岗位类型:品牌专员 岗位职责: 1、参与公司品牌系统建设、负责展厅建设、媒体公关、自媒体运营、网络营销等工作,协同公司各…

Ocean Base-Oracle 查询表、表注释、字段、字段注释

Ocean Base-Oracle 查询所有表或视图、注释 SELECT * from user_tab_comments;Ocean Base-Oracle 查询一个表所有的字段、注释 SELECT u.column_name,c.comments,u.data_type FROM user_tab_columns uINNER JOIN user_col_comments c ON u.table_namec.table_name AND u.colu…

Redis基本全局命令(含key过期策略)

Redis基本全局命令 KEYEXISTSDELEXPIRETTLRedis的key过期策略TYPE KEY 返回所有满⾜样式(pattern)的key。⽀持如下统配样式。 h?llo 匹配 hello , hallo 和 hxlloh*llo 匹配 hllo 和 heeeelloh[ae]llo 匹配 hello 和 hallo 但不匹配 hilloh[^e]llo 匹配…

每日一题(set集合)-874. 模拟行走机器人

题目 874. 模拟行走机器人 题解思路 初始方向朝y轴正方向,遇到指令command -1 则向右转, 若为 -2 则向左转 定义方向[-1,0]、[0,1]、[1,0]、[0,-1] 分别为朝x轴负方向, y轴正方向, x轴正方向,y轴负方向初始方向为[…

Debian 系统安装中文输入法-iTOP3588开发板

Debian 系统烧写完成之后,并没有中文输入功能。本文档将介绍如何安装 ibus pinyin 输入法。 首先安装 fcitx 对应的工具,如下图所示: apt-get install fcitx fcitx-tools fcitx-config* fcitx-frontend* fcitx-module* fcitx-ui-* presage …

2023-7-13-第十八式观察者模式

🍿*★,*:.☆( ̄▽ ̄)/$:*.★* 🍿 💥💥💥欢迎来到🤞汤姆🤞的csdn博文💥💥💥 💟💟喜欢的朋友可以关注一下&#xf…

【LeetCode 算法】Walking Robot Simulation 模拟行走机器人 - 哈希

文章目录 Walking Robot Simulation 模拟行走机器人问题描述:分析代码哈希 Tag Walking Robot Simulation 模拟行走机器人 问题描述: 机器人在一个无限大小的 XY 网格平面上行走,从点 (0, 0) 处开始出发,面向北方。该机器人可以…

opencv-06 使用numpy.array 操作图片像素值

opencv-06 使用numpy.array 操作图片像素值 **1.二值图像及灰度图像****利用item 读取某一个像素值****利用itemset 修改像素值****彩色图像numpy.arry 像素值操作** numpy.array 提供了 item()和 itemset()函数来访问和修改像素值,而且这两个函数都是经…

基于MATLAB的无人机遥感数据预处理与农林植被性状估算

查看原文>>>基于MATLAB的无人机遥感数据预处理与农林植被性状估算 在新一轮互联网信息技术大发展的现今,无人机、大数据、人工智能、物联网等新兴技术在各行各业都处于大爆发的前夜。为了将人工智能方法引入农业生产领域。首先在种植、养护等生产作业环节…

Offset Explorer2 监视kafka的利器

kafka作为一个生产者和消费者集为一体的框架,消费者必须一直保持打开的状态,并且每隔一段时间接收一次数据,才能够保持生产者放入的数据及时被处理掉,而生产者则可以每隔一段时间发送一波数据,这样消费者就能够接收到了…

layui入门增删改查

layui入门增删改查 创建Lauiyi对象1.后台准备1.dao方法2.子实现类 2.R工具类的使用3.查询前端代码实现前端页面 4.增删改实现2.浮层3分离的js代码1.userManage.js2.userEdit.js3.index.js 5.运行效果 作为一名开发人员,我们经常需要对数据库中的数据进行增删改查&am…

前端node.js入门

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 Node.js 入门 什么是 Node.js? 什么是前端工程化? Node.js 为何能执行 JS&…

kafka无消息丢失配置

目录 前言: 消息丢失的场景 生产者消息丢失 Broker消息丢失 消费者消息丢失 消息丢失问题排查 无消息丢失配置: 参考资料: 前言: 使用消息中间件时,我们遇到最头疼的事就消息丢失,小则影响程序错误&…

【数据结构】二叉树详解(2)

⭐️ 前言 ✨ 往期文章链接:二叉树的概念性质 上一篇我们讲了二叉树的结构定义,以及前序/中序/后序的递归遍历,还有一些二叉树的接口实现,本篇我们补充一个二叉树的接口 BinaryTreeDepth。✨上一篇文章链接:二叉树详…

【C++】命名空间、缺省参数和函数重载

文章目录 一、命名空间1.命名空间定义2.命名空间使用 二、缺省参数1.分类2.其他注意事项 三、函数重载总结 一、命名空间 在一个大型的项目中,不同成员写的程序中会不可避免的带来命名冲突的问题,这种情况下命名空间可以很好的解决这种命名冲突大的问题…

java面试真题【上册】

tips:下面简述题为java面试真题,阅读本文且感兴趣的,还有将要面试的小伙伴有条件的准备一下笔和纸,将之转述出来成为自己的知识,希望接下来的面试好运连连 目录 1.Java中的四种访问权限分别是什么?它们分…

结合ChatGPT制作PPT

今天看到圈友的一个AI分享,然后自己本身需要做一个分享的PPT。刚好那着帖子实战一下。先说下整体感受。 优点:制作成本确实会比较低,很熟练的话大概就是1分钟一个都有可能。整体流程是先找个第三方PPT制作网站,看下支不支持文本转…

UE5【C++】 UPROPERTY和UFUNCTION介绍

文章目录 UPROPERTY介绍常见属性说明符使用示例 UFUNCTION介绍常见属性说明符使用示例 虚幻四种基本继承关系和组件的概念Actor和组件的关系RootComponent的作用组件的分类组件的使用UActorComponent的作用TickingUSceneComponentUPrimitiveComponent UPROPERTY介绍 属性使用标…