【分布式计算】三、虚拟化 Virtualization

news2025/1/18 21:02:21

1.什么是虚拟化

非虚拟化vs虚拟化

1.1.非虚拟化

我们首先来认识什么是非虚拟化
  1.一台机器、一个操作系统、几个应用程序
  2.应用程序可能会相互影响。
  3.机器利用率较低,正常情况下低于25%。

关于X86平台:
1.服务器基础设施利用率低(10-18%)
2.增加物理基础设施成本(设施、电力、冷却等)。
3.增加IT 管理成本(配置、部署、更新等)
4.一次只运行一个操作系统,效率低


1.2. 虚拟化

所以提出了虚拟化的解决方案

1.虚拟化使多个操作系统和应用程序能够在一个物理服务器上运行。
2.每个自包含的“虚拟机”都与其他虚拟机隔离利用率高,并尽可能多地使用主机的计算资源

1.2.1.虚拟化定义

虚拟化是一个广义的术语,是指计算机资源的抽象
虚拟化是一种隐藏计算资源的物理特性以避免其他系统、应用程序或最终用户与这些计算资源交互的技术。

1.2.2.使用场景

1.性能要求不高:中小型应用程序,而不是用于高性能应用程序。
2.非实时响应:不适用于实时响应需求
3.低IO:不适用于高输入/输出需求

问题:将所有关键服务器放到一个物理服务器中真的明智吗?◦
不,我们可以使用冗余。当单个物理服务器发生故障时,另一个物理服务器上的其他虚拟服务器将自动占用空闲服务器。


2.虚拟化种类

2.1.服务器虚拟化(Server Virtualization)

总体思想:在一台主机上运行多个guest OS,这些guest OS运行在自己的硬件上
在这里插入图片描述

优点
1.客户虚拟机的可移植性
2.降低了操作、管理成本
3.服务器整合(server consolidation)
4.灾难恢复

物理到虚拟服务器迁移工具 (Physical to virtual):

1.将获取现有的物理服务器,并通过必要的修改生成该服务器的虚拟硬盘驱动器映像
2.服务器将启动并作为虚拟服务器运行,无需重建、手动重新配置和许可证获取成本
3.bouns:可以获得灾难恢复方案,因为虚拟化映像可以用于立即恢复所有服务器

2.1.1.不同程度level:

  1.1st Generation- full virtualization :guest OS is unmodified and believes it is running on the same hardware as the host OS(VMware和微软)
  2.2nd Generation-Paravirtualization: guest OS is modified(VMware、Xen)
  3.3rd Generation-Hardware-assisted virtualization :unmodified OS on virtualization-aware hardware platforms

完全虚拟化

第一代提供x86/x64服务器虚拟化
动态二进制翻译
  1.仿真层与操作系统对话,操作系统与计算机硬件对话
  2.客户操作系统看不到它是在一个模拟环境
所有的硬件仿真包括CPU。
在这里插入图片描述
仿真层:
  1.将虚拟机与主机操作系统隔离
  2.控制单个VM对系统资源的访问,防止不稳定的VM影响系统性能。
VM可移植性:;VM能够在具有不同硬件的主机之间透明地移动,而不会出现任何问题。

部分虚拟化

guest OS完全了解如何处理特权指令
  VMM(virtual Machine Manager)不支持特权指令(privileged instructions)转换。guest OS使用专门的API与VMM通信以执行特权指令
在这里插入图片描述

硬件辅助虚拟化

VMM使用处理器扩展(如Intel®-VT或AMD-V)截获并模拟来宾中的特权操作
在这里插入图片描述
优点:它允许运行未经修改的操作系统(因此旧操作系统可以毫无问题地运行)
缺点:1.灵活性
   2.未修改的操作系统不知道自己正在虚拟化环境中运行,因此无法利用任何虚拟化功能
   3.可以使用半虚拟化部分解决此问题


2.2.桌面虚拟化(Desktop Virtualization)

在物理桌面上运行的虚拟机管理程序或系统管理程序。
在另一个操作系统上模拟一个操作系统,案例:虚拟机内测试代码,windows运行linux

2.2.1.服务器端工作区虚拟化(或桌面整合)Server-side workspace virtualization (or Desktop consolidation)

在服务器上托管的虚拟机内运行的工作区(具有自定义配置的桌面操作系统),服务器上存在一个虚拟工作区池(pool of virtual workspaces)
案例:远程用户通过微软的远程桌面协议(RDP)从任何联网的设备登录到他们中
优点:可以打破虚拟工作区和最终用户之间的1:1的比例,从而优化资源的使用。
问题:性能受到**网络性能(带宽)**的限制
在这里插入图片描述

2.2.2.客户端工作区虚拟化(Client-side workspace virtualization)

在桌面上托管的虚拟机内运行的一个工作区(具有自定义配置的桌面操作系统),提供一个虚拟工作区以在客户端设备上执行。
优点:对客户端上的数据和逻辑的安全性和隔离性( security and isolation)
在这里插入图片描述

2.3.应用程序隔离(Application Isolation ( or encapsulation封装) )

打包封装:一个应用程序打包了它自己的操作系统资源的虚拟副本,否则它可能需要更改(注册表、文件系统、库),每个应用程序都有自己独特的注册表和文件系统,但不是一个完整的操作系统。

(隔离)这些额外的工具使应用程序免受对底层桌面操作系统的更改和不兼容的影响。
在这里插入图片描述

案例:在Thinstall中,应用程序使用与应用程序一起嵌入到包中的虚拟注册表和文件系统。

2.4.应用程序流(Application Streaming)

将服务器托管的应用程序及时交付到桌面,以便在从服务器下载整个文件之前执行桌面应用程序
在这里插入图片描述
 应用程序隔离的超级集合,包括传递方法和执行模式。
◦ 您可以将应用程序代码流式传输到桌面,在那里它可以独立运行。
 没有完整的PC环境,只有应用程序,所以你必须提供一个工作空间。
◦ 需要维护客户端操作系统并确保兼容性

优点:流式传输将应用程序隔离的安全性和许可证管理优势与实时交付相结合。
问题:按正确的顺序流

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

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

相关文章

【网络协议】IP

当连接多个异构的局域网形成强烈需求时,用户不满足于仅在一个局域网内进行通信,他们希望通过更高一层协议最终实现异构网络之间的连接。既然需要通过更高一层的协议将多个局域网进行互联,那么这个协议就必须为不同的局域网环境定义统一的寻址…

《C和指针》读书笔记(第十四章 预处理器)

目录 0 简介1 预定义符号2 #define2.1 宏2.2 #define替换2.3 宏与函数2.4 带副作用的宏参数2.5 命名约定2.6 #undef2.7 命令行定义 3 条件编译3.1 是否被定义3.2 嵌套指令 4 文件包含4.1 函数库文件包含4.2 本地文件包含4.3 嵌套文件包含 5 其他指令6 总结 0 简介 编译一个C程…

Leetcode 662. 二叉树最大宽度

文章目录 题目代码&#xff08;9.30 首刷看解析&#xff09; 题目 Leetcode 662. 二叉树最大宽度 代码&#xff08;9.30 首刷看解析&#xff09; class Solution { public:int widthOfBinaryTree(TreeNode* root) {unsigned long long res 1;using pr pair<TreeNode*, u…

数据集笔记:芝加哥共享单车OD数据

2013年到2022年3月&#xff0c;芝加哥共享单车OD数据 数据地址&#xff1a;Divvy Data (divvybikes.com)

使用python脚本的时间盲注完整步骤

文章目录 一、获取数据库名称长度二、获取数据库名称三、获取表名总长度四、获取表名五、获取指定表列名总长度六、获取指定表列名七、获取指定表指定列的表内数据总长度八、获取指定表指定列的表内数据 一、获取数据库名称长度 测试环境是bwapp靶场 SQL Injection - Blind - …

【考研数学】高等数学第七模块 —— 曲线积分与曲面积分 | 2. 对坐标的曲线积分(第二类积分)

文章目录 一、曲线积分1.2 对坐标的曲线积分&#xff08;第二类曲线积分&#xff09;1.2.1 问题产生 —— 做功问题1.2.2 对坐标的曲线积分的定义&#xff08;了解&#xff09;1.2.3 对坐标的曲线积分的性质1.2.4 二维空间对坐标的曲线积分计算法1. 定积分法2. 二重积分法&…

YOLOv7改进:结合CotNet Transformer结构

1.简介 京东AI研究院提出的一种新的注意力结构。将CoT Block代替了ResNet结构中的3x3卷积&#xff0c;在分类检测分割等任务效果都出类拔萃 论文&#xff1a;Contextual Transformer Networks for Visual Recognition 论文地址&#xff1a;https://arxiv.org/abs/2107.12292 有…

C进阶--数据的存储

⚙ 1. 数据类型介绍 1.1基本内置类型 ⭕ 整形&#xff1a; char(char又叫短整型)unsigned charsigned charshortunsigned short[int]signed short [int]intunsigned intsigned intlongunsigned long [int]signed long [int] ⭕ 浮点数&#xff1a; float&#xff08;单精度浮…

Linux下C语言操作网卡的几个代码实例?特别实用

前面写了一篇关于网络相关的文章&#xff1a;如何获取当前可用网口。 《简简单单教你如何用C语言列举当前所有网口&#xff01;》 那么如何使用C语言直接操作网口&#xff1f; 比如读写IP地址、读写MAC地址等。 一、原理 主要通过系统用socket()、ioctl()、实现 int sock…

基于arduino的土壤湿度检测

1.总体设计框图 本浇花系统总体上分为硬件和软件两大组成部分。硬件部分包括Arduino UNO开发板、温湿度传感器、通信模块、浇水执行系统和液晶显示等。软件部分包括Android客户端。系统结构如图1所示 本浇花系统总体上分为硬件和软件两大组成部分。硬件部分包括Arduino UN…

LeetCode算法题---第2天

注:大佬解答来自LetCode官方题解 80.删除有序数组的重复项Ⅱ 1.题目 2.个人解答 var removeDuplicates function (nums) {let res [];for (let index 0; index < nums.length; index) {let num 0;if (res.includes(nums[index])) {for (let i 0; i < res.length; …

Python2020年06月Python二级 -- 编程题解析

题目一 数字转汉字 用户输入一个1~9&#xff08;包含1和9&#xff09;之间的任一数字&#xff0c;程序输出对应的汉字。 如输入2&#xff0c;程序输出“二”。可重复查询。 答案: 方法一 list1[一,二,三,四,五,六,七,八,九] while True:n int(input(请输入1~9之间任意一个数字…

Windows 安装CMake

CMake 简介 CMake是一个开源的、跨平台的自动化构建系統&#xff0c;用來管理软件构建的过程。 其用途主要包括&#xff1a; 1. 跨平台编译&#xff1a;CMake支援Windows&#xff0c;Mac OS&#xff0c;Linux等多种操作系統&#xff0c;且支援多数主流编译器如GCC&#xff0…

如何在 Elasticsearch 中使用 Openai Embedding 进行语义搜索

随着强大的 GPT 模型的出现&#xff0c;文本的语义提取得到了改进。 在本文中&#xff0c;我们将使用嵌入向量在文档中进行搜索&#xff0c;而不是使用关键字进行老式搜索。 什么是嵌入 - embedding&#xff1f; 在深度学习术语中&#xff0c;嵌入是文本或图像等内容的数字表示…

centos 7.9同时安装JDK1.8和openjdk11两个版本

1.使用的原因 在服务器上&#xff0c;有些情况因为有一些系统比较老&#xff0c;所以需要使用JDK8版本&#xff0c;但随着时间的发展&#xff0c;新的软件出来&#xff0c;一般都会使用比较新的JDK版本。所以就出现了我们标题的需求&#xff0c;一个系统内同时安装两个不同的版…

Bartende:Mac菜单栏图标管理软件

Bartender 是一款可以帮助用户更好地管理和组织菜单栏图标的 macOS 软件。它允许用户隐藏和重新排列菜单栏图标&#xff0c;从而减少混乱和杂乱。 以下是 Bartender 的主要特点&#xff1a; 菜单栏图标隐藏&#xff1a;Bartender 允许用户隐藏菜单栏图标&#xff0c;只在需要时…

【Vue】数据监视输入绑定

hello&#xff0c;我是小索奇&#xff0c;精心制作的Vue系列持续发放&#xff0c;涵盖大量的经验和示例&#xff0c;如有需要&#xff0c;可以收藏哈 本章给大家讲解的是数据监视&#xff0c;前面的章节已经更新完毕&#xff0c;后面的章节持续输出&#xff0c;有任何问题都可以…

孤举者难起,众行者易趋,openGauss 5.1.0版本正式发布!

&#x1f4e2;&#x1f4e2;&#x1f4e2;&#x1f4e3;&#x1f4e3;&#x1f4e3; 哈喽&#xff01;大家好&#xff0c;我是【IT邦德】&#xff0c;江湖人称jeames007&#xff0c;10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】&#xff01;&#x1f61c;&am…

基于SSM的教师办公管理的设计与实现(有报告)。Javaee项目。

演示视频&#xff1a; 基于SSM的教师办公管理的设计与实现&#xff08;有报告&#xff09;。Javaee项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过Spring S…

Selenium Webdriver自动化测试框架

最近正在编写selenium webdriver自动化框架&#xff0c;经过几天的努力&#xff0c;目前基本已经实现了一套即能满足数据驱动、又能满足Web关键字驱动的自动化框架&#xff08;主要基于 antjenkinstestngselenium webdriverjxl实现&#xff09;。通过这次的自动化框架开发&…