计算虚拟化
1.什么是 虚拟化
-
什么是虚拟化:虚拟化是一种技术,将物理设备进行逻辑化,转化成文件夹或文件,实现软硬件解耦
-
好处:
1.提高资源利用率
2.软硬件解耦(具备其他高级特性:HA,DRS,DPM)
3.虚拟机可移植性强
2.虚拟化
2.1、虚拟化中的概念
2.2、虚拟化类型
一.裸金属型虚拟化(I型):Hypervisor直接调用底层硬件,不需要通过底层操作系统
1.1Hypervisor负责管理所有的资源和虚拟环境:VMM承担管理资源,同时向上提供vm用于运行guest os
2.优点:不依赖操作系统,支持多种操作系统,多种应用;
3.缺点:虚拟层内核开发难度大
二.宿主型虚拟化(II型):物理资源由主机操作系统管理,实际的虚拟化资源由VMM提供
1.优点:简单,易于实现
2.缺点:安装运行应用程序依赖于主机操作系统对设备的支持,管理开销大,性能消耗较大
2.3、特点
1.分区:虚拟化层为多个虚拟机划分服务器资源,每个虚拟机可以单独运行一个操作系统
2.隔离:通过分区建立的虚拟机之间采用逻辑隔离措施,防止相互影响
3.封装:每个虚拟机的配置都独立存储于物理硬件的 一小组文件中
4.相对硬件独立:封装成文件后,迁移只需迁移配置文件和设备文件复制到另一台主机即可,不需要关心底层硬件是否兼容;
2.4、虚拟机的底层形式文件(磁盘文件、配置文件)
-
磁盘文件 虚拟机啊的磁盘在底层的存放形式,不同的虚拟化的格式
配置文件 虚拟机的配置信息(网卡信息、cpu信息、系统的信息)
3.计算虚拟化
3.1、cpu虚拟化 (二进制翻译)
一.CPU虚拟化需要解决两个问题
1.如何模拟CPU指令 (所有敏感指令)
①敏感指令:可以读写系统关键资源的指令叫做敏感指令。
②特权指令:决大多数的敏感指令是特权指令,特权指令只能在处理器的最高特权级 (内核态)执行。
2.如何让多个VM共享CPU
①利用与Native操作系统类似的机制—通过定时器中断,在中断触发时陷入VMM,从而根据调度机制进行调度。
·CPU虚拟化:硬件–>VMM(虚拟机监视程序)–>Guest os(虚拟机操作系统)–>app
·当Guest OS执行到特殊指令的时候,系统会切换到VMM,让VMM来处理特殊指令
·经典虚拟化:基于Power pc cpu架构 Power pc cpu架构和传统的X86架构不同的是指令集的不同,有部分指令无法被虚拟化层拦截(X86架构的16条指令),没有通过虚拟化层的转译,硬件无法识别指令从而会引发一些错误,因此CPU虚拟化分为:全虚、半虚、硬虚
·全虚:将所有指令都收集到虚拟化层进行处理
·优势:不需要修改Guest os
·劣势:虚拟化层开销大,从而导致CPU虚拟化的效率不高
·半虚:设计理念是将16条指令,由VMM(虚拟化层)移向Guest OS(虚拟机操作系统)自身 通过主动的方式由Guest OS去处理这些指令,而不是被移交给VMM做处理。在这种设计理念下,就需要修改Guest OS内核。 使其在虚拟化进程中捕捉到特殊指令,并直接通过Guest os内核对CPU进行操作,因为中间少了VMM的虚拟化封装解码等等操作,所以对CPU性能的损耗会非常低从而使虚拟机效率高
·优点:虚拟化层的开销小
·优点:需要修改虚拟机操作系统 因为一般Guet os虚拟机操作系统,是不会直接交给虚拟化层,需要修改Guest os内核(目前支持x86、mips、arm这些内核版本)
·硬虚(硬件辅助虚拟化):Guest OS执行到特殊指令可以直接下达到计算机系统硬件去处理,而不需要通过VMM去处理
-
优点:虚拟化效率最高
·缺点:需要CPU支持硬件辅助虚拟化 如:Intel基于x86架构的硬件辅助虚拟化技术Intel VT(Intel Virtualization Technology)和Amd的and-v。
3.3、I/o虚拟化
I/O设备是可对数据进行输入输出的如:磁盘、网卡 I/o虚拟化分为全虚、半虚、I/o透传
·全虚:VMM为虚拟机直接模拟出一个与真实设备相似的io设备
·半虚:建议一个特权级别的虚拟机,Dom0:安装原生驱动和后端驱动;普通虚拟机(DomU):安装前端驱动
·io透传:直接将原生驱动安装给VM使用
网络虚拟化
网络流量:
1.南北流量:流量经过路由
2.东西流量:流量不经过路由
网络的基本概念:
1.IP和MAC:
1.ip互联网协议地址,为计算机网络中主机通信设计的
2.mac,物理地址,硬件地址,用来确定网络设备在网络中的位置
2.广播
3.单播
4.路由
5.默认网关:
6.vlan:虚拟局域网,在逻辑上将一个物理的局域网划分为多个逻辑设备的广播域的技术
1.作用:限制广播域、增加安全性,提高网络的健壮性,灵活
2.vlan:端口
1.Access:仅允许一个vlan id通过本接口,该vlan id与本接口的id相同
2.Trunk:允许多个id通过
3.vlan最多可以支持4096个vlan网络,vlan不能跨网段同行
物理网络
服务器接入网络的两种方式:
1.TOR:柜顶接入
2.EoR:列头接入
链路聚合:将多个物理接口逻辑成
虚拟网络:
1.桥接: 是工作于二层的虚拟网络设备,功能类似于物理的交换机
2.NAT:
3.虚拟交换机:Open vSwitch(OVS)
1.基于软件实现的开源虚拟以太网交换机
2.作用:传递虚拟机之间的流量,以及实现vm与外界网络的通信
3.为什么要用ovs:
1.状态可移植
2.适应动态网络
3.支持逻辑标签的维护
4.支持硬件支撑
4.OVS能够支持多种标准的管理接口和协议,还可以支持跨多个物理服务器的分布式环境。
5.OVS提供了对OpenFlow协议的支持,并且能够与众多开源的虚拟化平台相整合。
分布式虚拟交换机:
1.分布式交换机在所有关联主机之间作为单个虚拟交换机使用。此功能可使虚拟机在跨主机进行迁移时确保其网络配置保持一致。
分布式虚拟交换机在功能上类似于普通的二层交换机。 其中一端与VM的虚拟端口相连,中间是一条虚拟的链路。 另外一端则通过上行链路与主机上的物理网络适配器相连,再与物理交换机相连。 从而连接到各个主机和虚拟机,实现网络互通。
Trunk口:
1.Trunk类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,一般用于交换机之间连接的端口;
2.trunk端口收报文: 收到一个报文,判断是否有VLAN信息,如果没有则打上端口的PVID,并进行交换转发;如果有判断该trunk端口是否允许该 VLAN的数据进入:如果允许则报文携带原有VLAN标记进行转发,否则丢弃该报文。
3.trunk端口发报文: 比较端口的PVID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送,否则报文将携带原有的VLAN标记进行转发。
存储虚拟化
常见的物理磁盘类型:
机械硬盘HDD:
固态硬盘SSD:
各类硬盘对比:
集中式存储和分布式存储:
1.RAID机制(冗余磁盘阵列)
1.RAID技术:(冗余磁盘阵列)
1.高效(多块磁盘并行读写)
2.安全(奇偶校验和热备技术)
2.常用的RAID类型
1.RAID0(条带化):多块硬盘逻辑成一块硬盘用(不具备冗余功能)
1.容量不变
2.读写速度提升(所有RAID中读写速度最快的)
3.安全性和一块硬盘一样
2.RAID1(镜像):多块硬盘逻辑成一块硬盘用
1.容量减半
2.读写速度不变
3.安全性提升(所有RAID中的安全性最高的)、
3.RAID5(独立的数据磁盘与分布式校验块):最少需要三块硬盘
1.每块磁盘只能存储2/3
2.读写速度提升
3.安全性提升
RAID6:最少需要4块硬盘
总结
集中式存储类型
1.块存储:块存储指的是块设备,一切以磁盘形式存在的存储都是块设备,即块存储。块存储强调的是裸磁盘(所有以磁盘形式提供给主机的访问的存储就是块存储)。
2.文件存储:通俗的理解“块存储+文件系统”打包后,对外提供存储服务。
3.对象存储:对象存储通俗的说就是基于对象的存储,对象在一个层结构中不会再有层级结构。而文件存储依旧保持传统的文件目录结构层级,当文件层级太深,就会降低速率
集中式存储按照技术架构分为SAN、NAS
IP-SAN和FC-SAN其它方面的对比如下表:
分布式存储
概念: 分布式存储的资源来自于各个主机(服务器),然后将资源整合和分布式存储池,再为各个主机所用。
副本机制:
1.数据写入:在数据写入时,首先数据先到分布式存储池,然后在下放到物理磁盘的过程中,复制成三份(三副本机制。两份就为两副本机制),每份数据保存在不同的硬盘上。三副本机制下三个物理硬盘才能提供一个物理硬盘的空间。这样就造成了空间浪费的问题。
2.数据读取:不是读三分数据。只会读一份数据,然后把数据返回给客户端。如何优先读的数据坏掉了。才会读剩下的两份数据。
问题: 分布式存储为什么不用RAID机制
1.为了保证数据的高可用性和安全性,集中式存储使用的是RAID技术,RAID可以通过硬件和软件的方式来实现,无论是软RAID或者硬RAID,所有的硬盘都需要在一个服务器内(硬RAID需要统一RAID卡,软RAID需要统一操作系统)。
2.由于分布式存储的硬盘分布在不同的服务器上,所以无法再使用RAID机制。因此,分布式存储是通过副本机制来实现数据的高可靠性的。副本机制是指将数据复制成多份一模一样的内容,并分别保存在不同的服务器上,当某台服务器出现故障后,数据并不会丢失。
标签:存储,RAID,虚拟化,区别,虚拟机,指令,硬盘 From: https://www.cnblogs.com/LJZ-ZSJ/p/17222579.html