您阅读本文如果觉得符合大人您的口味,请关注一下本君,点个关注和评论,说一下您的观点。创作不易,还请多多支持!
7.1 虚拟机和虚拟化
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离**中的完整计算机系统。
虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样的功能,进入虚拟系统后,所有操作都是在这个全新的独立的虚拟系统里面进行,可以独立安装运行软件,保存数据,拥有自己的独立桌面,不会对真正的系统产生任何影响 ,而且具有能够在现有系统与虚拟镜像之间灵活切换的一类操作系统。
虚拟机技术是虚拟化技术的一种,所谓虚拟化技术就是将事物从一种形式转变成另一种形式,最常用的虚拟化技术有操作系统中内存的虚拟化,实际运行时用户需要的内存空间可能远远大于物理机器的内存大小,利用内存的虚拟化技术,用户可以将一部分硬盘虚拟化为内存,而这对用户是透明的。
这里说白了,虚拟机是完整模拟整个硬件平台的。
虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。
虚拟化是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的**,使用户可以比原本的组态更好的**来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设**,地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和资料存储。
在实际的生产**中,虚拟化技术主要用来解决高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最,大化的利用物理硬件。虚拟化使用软件的方法重新定义划分资源,可以实现资源的动态分配、灵活调度、跨域共享,提高资源利用率,使资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求。
虚拟机出现的比较早,其实虚拟机可以理解为现在虚拟化技术的一个细分。如果说虚拟机是虚拟一个完整的硬件平台来用,那么虚拟化可以虚拟出我们需要的任意硬件。甚至在某些情况,用多台计算机提供的虚拟化组件来组成一个完整的硬件平台也是有可能的。
流行的虚拟机软件有VMware、Virtual Box、Virtual PC和开放源代码的Bochs,当然还有很多虚拟化产品,都虚拟或仿真了Intel x86硬件**,可以让我们在运行这些软件的系统平台上运行多种其它的“客户”操作系统。
这里有几个概念要说明:
[x] VM(Virtual Machine):虚拟机,指由Vmware模拟出来的一台虚拟的计算机,也即逻辑上的一台计算机。[x] HOST:指物理存在的计算机,Host′s OS指HOST上运行的操作系统。[x] Guest OS:指运行在VM上的操作系统。
例如在一台安装了Win 10的计算机上安装了Vmware,那么,HOST指的是安装Win 10的这台计算机,其Host′s OS为Win 10。VM上运行的是Linux,那么Linux即为Guest OS。
除了这些以外,还有其他硬件的模拟**,比如WinKawaks就很好的模拟了街机硬件、epsxe可以模拟索尼的PlayStation游戏主机、还有安卓手机app在****中所使用的安卓模拟器,也都属于虚拟机的性质。
当然我们上边所说的都是单纯的桌面级虚拟机。还有大型的虚拟化解决方案类的产品,比如说剑桥大学**的Xen、Linux下的全功能虚拟化架构的KVM、微软的Hyper-V、VMware提供应用、云计算和业务的基础的VMware vSphere等等。当然有兴趣自己百度。不过在以上这么多种类和级别的虚拟化方案中。默认就提供安装Mac OS的貌似真没有,无论用什么,都得修改或者破解以下才能安装Mac OS。
当然除了虚拟计算机硬件(虚拟机)以外,虚拟化技术还提供了虚拟网络,目前最典型的应用就是VXLAN,即Virtual Extensible LAN。虽然看起来很向之前说到的VLAN,但是两者有很大的不同。
VLAN技术的弊端逐渐显现出来,具体表现为如下3个方面:
虚拟化技术的****大数据、云计算技术**采用单个物理设备虚拟多台虚拟机的**来进行组网,随着应用模块的**,对于支持VLAN数目的要求也在提升,802.1Q**中的最多支持4094个VLAN的能力已经无法**当下需求。
公有云提供商的业务要求将实体网络租借给多个不同的用户,这些用户对于网络的要求有所不同,而不同用户租借的网络有很大的可能会出现IP地址、MAC地址的重叠,**的VLAN仅仅解决了同一链路层网络广播域隔离的问题,而并没有涉及到网络地址重叠的问题,因此需要一种新的技术来保证在多个租户网络中存在地址重叠的情况下依旧能有效通信的技术。
两台以上主机的通信连接才足以**应用需求,而虚拟化技术使得单台主机可以虚拟化出多台虚拟机同时运行,而每台虚拟机都会有其唯,一的MAC地址。这样,为了保证集群中所有虚机可以正常通信,交换机必须保存每台虚机的MAC地址,这样就导致了交换机中的MAC表异常庞大,从而影响交换机的转发性能。
相比VLAN技术,VXLAN技术具有以下的优势:
24位长度的VNI字段值可以支持更多数量的虚拟网络,解决了VLAN数目上限为4094的局限性的问题。
VXLAN技术通过**技术在物理的三层网络中虚拟二层网络,处于VXLAN网络的终端无法察觉到VXLAN的通信**,这样也就使得逻辑网络拓扑和物理网络拓扑实现了一定程度的解耦,网络拓扑的配置对于物理设备的配置的依赖程度有所**,配置更灵活更方便。
VLAN技术仅仅解决了二层网络广播域分割的问题,而VXLAN技术还具有多租户支持的特性,通过VXLAN分割,各个租户可以独立组网、通信,地址分配方面和多个租户之间地址冲突的问题也**了解决。
为了保证VXLAN机制通信**的正确性,RFC7348**中规定,涉及到VXLAN通信的IP报文一律不允许分片,这就要求物理网络的链路层实现中必须提供足够大的MTU值,保证VXLAN报文的顺利传输,这一点可以理解为当前VXLAN技术的局限性。
现在我们可以简单给虚拟化分个类了:
[x] 硬件虚拟化[x] 虚拟机:可以像真实机器一样运行程序的计算机的软件实现[x] 虚拟内存:将不相邻的内存区,甚至硬盘空间虚拟成统一连续的内存地址[x] 存储虚拟化:将实体存储空间分隔成不同的逻辑存储空间[x] 网络虚拟化:将不同网络的硬件和软件资源结合成一个虚拟的整体
当然,虚拟化技术还提供了其他的一些,比如数据库虚拟化、服务虚拟化、存储虚拟化等等。
安卓epsxe设置(啥都玫说之网络篇71虚拟机和虚拟化)