内容来源:2018 年 06 月 19 日,VMware大中华区原厂高级技术讲师姚泉在“VMware在线技术专题分享·第二期”进行《VMware vSphere 6.7 新功能介绍》演讲分享。IT 大咖说(微信id:itdakashuo)作为独家视频合作方,经主办方和讲者审阅授权发布。
阅读字数:9098 | 23分钟阅读
摘要
VMware是业内领先的虚拟化和云计算厂商,作为基础的平台vSphere是软件定义数据中心中最核心的组件,本课程重点介绍最新版本vSphere6.7的新功能特性和核心价值。vSphere 6.7是混合云的高效安全平台,通过提供简单高效的管理规模,全面的内置安全性,通用应用程序平台和无缝混合云体验,助力数字化转型。
嘉宾演讲视频及PPT:http://t.cn/RrOy2tw
vSphere 6.7 重要性功能特性
VSphere6.7 主要从四个方面引入新的技术。
第一个是简单高效的规模化管理,包括vSphere快速启动以及VCSA的增强。还有HTML5客户端的改进,也是就我们常说的vSphere Client,但这不是传统的基于Windows版本的vSphere Client,而是vSphere 6.5之后引入的新版本,在6.7版本中还会有一些新的展现。还是就是对LUN和路径的限制翻倍了,现在每个主机可以支持1024个LUN和4096个路径,这比上一个版本增加了一倍。
第二个安全性这块,我们引入了对TPM2.0以及虚拟机下vTPM2.0的支持。还有跨vCenter的vMotion可以进行加密,这个加密其实从之前6.0版本中就引入进来了。最后是对微软的VBS的支持。
第三块是在通用应用平台上的一些新技术,有vSphere持久内存,这是一个基本存储技术。还有关于Nvidia的vGPU支持,这里有一些新的增强。最后一个新技术是即时克隆。
第四块是关于混合云体验,包括链接模式的增强,跨云之间的冷热迁移,以及虚拟机级别的EVC。
快速预览
以上这些是6.7版本中引入的非常亮眼的功能,下面我将带领大家快速的过一遍这些核心功能,最后会讲一些重点的技术。
HTML5客户端
HTML5客户端也就是我们常说的vSphere Client,从官方的数据来看自6.7版本开始已经有90%的功能可以去使用vSphere Client,也就是基于HTML5。当然Web Client还是有的,而且功能是最全的。也就是说还有10%左右的功能暂时没有体现在HTML5的客户端内,但是我想将来肯定会逐渐的丰富。
6.7版本中HTML5客户端增加了一些新的功能。比如分布式交换机、存储和基于策略管理的功能,以及一部分的主机配置文件功能,目前还处于第一阶段后续的功能会逐渐开发。虚拟机的配置这块,包括虚拟机加密、硬件版本14,其他设备的添加,迁移甚至是自定义的客户操作系统。另外一个就是vApp的创建、克隆、编辑。最后还有license管理和用户、组、证书的管理,以及警报的定义等等。以上这些都已经引入到了当前的客户端中,所以说在当前客户端下我们其实可以做很多事情,而且这个客户端相对之前传统的Web Client来讲会更快一些。
vCSA的备份和恢复
关于Linux版本vCSA的备份和恢复,其实从6.5版本该功能就引入进来了,但是只能用在Linux版本的VC,Windows并不支持。从6.7开始我们就可以做一些备份的规划,包括备份的时间、频率、次数以及备份数据的保存时间等,都可以自己去定义。
增强型链接模式
增强型链接模式这块也是一个重大改进,之前的版本中如果是嵌入式的vCenter是没有办法做增强型链接模式的。而现在我们已经可以实现了,而且可以增加到15个vCenter,不需要负载均衡器,也大幅简化了安装和升级的过程。
TPM2.0和vTPM2.0
安全这块主要是对TPM2.0以及虚拟TPM2.0的支持,通过TPM2.0就可以增加主机的安全性。一般主机启动的时候,首先会加载一些硬件,然后加载UEFI固件。UEFI固件会对当前所以主机的硬件进行签名的比对,如果是受信任的签名这个系统就可以加载成功,否则就不允许启动,这也是安全特性里很重要的一点。
从6.7开始已经可以支持TPM2.0了,TMP是做为主机内的一个芯片,专门用来存放秘钥、哈希值等一些用户的敏感信息。通过TMP2.0的支持就能进行远程的主机认证,使得当前安全性得到更大提高。同样虚拟机本身也可以通过增加虚拟设备的方式来添加虚拟的TPM。
跨vCenter的vMotion加密
跨vCenter的vMotion加密功能从6.0开始就已得到支持,但是当时要求两个vCenter必须是同一个版本。到了vSphere6.7开始支持跨不同版本vCenter的vMotion加密。
持久性内存PMem
在存储方面我们已经支持了持久性内存,也就是PMem。通过PMem这种方式可以提高虚拟机的存储性能。PMem的存储速度只比普通内存差一点,但是成本低很多。而闪存虽然成本会更低,速度却相对要慢一些。总结起来就是PMem这种持久性内存在性能上接近普通内存,在成本上接近普通闪存。
vGPU
以前我们也支持vGPU,但是现在这个版本下我们可以针对于启用vGPU的虚拟机进行挂起和恢复。在挂起和恢复之后虚拟机就能方便的做迁移,而如果在线的话可能会受到一些限制,这是在vGPU方面的增强。
虚拟机级别的EVC
另一个比较先进的技术就是虚拟机级别的EVC。EVC就是在整个集群环境中启用EVC之后使得主机之间在进行迁移的时候兼容性可以放宽。因为虚拟机要做vMotion的话两台主机必须满足兼容的CPU要求,也就是说对于不同的CPU家族需要使用EVC技术屏蔽一些高级的指令集,从而达到vMotion迁移的可能性。
EVC之前只是针对整个集群来设置,6.7版本开始就可以针对某个具体的虚拟机去设置EVC。不同的虚拟机可以有不同的EVC基准,之后我们可以针对虚拟机来做一些迁移的考虑,这样的话颗粒度就会更小一点。
4kn硬盘支持
ESXi如果装在本地存储中,之前的版本支持很多不同的硬盘。最传统的是512n硬盘,6.5版本开始支持512e硬盘,就是在逻辑扇区上通过512字节来模拟。从6.7开始终于可以支持真正的4Kn硬盘,不管是物理扇区还是逻辑扇区都是4K级别大小,ESXi就可以安装在这样的硬盘设备中,不过只能是本地硬盘。
加密
之前的加密是必须要通过相应的存储策略完成,相对来说管理上会麻烦一些。现在我们则可以在虚拟机的编辑属性框中完成,通过简单的复选框启用加密。也可以针对不同的磁盘进行加密。
VBS
微软的VBS功能能够为Windows的设备提供更好的安全性,在6.7版本中我们可以在虚拟机的编辑属性中启用这个功能,这样就可以在整个虚拟机的部署过程中启用VBS功能提高虚拟机安全性。但是目前这个功能还有一些限制,只能用于win10、win2016这些新系统。
即时克隆
即时克隆是从Horizon7开始引入的新的功能,当时只是用在View的环境中,现在则可以用在vSphere环境中对虚拟机进行即时克隆。也就是通过内存的快速复制来批量生成新的虚拟机,提高虚拟机的部署速度。
下面我会从础架构、VCSA、存储、安全这四个方向来讲一下这些常见功能的技术细节。
基础架构
基础架构方面大概有4个技术需要给大家分享,分别是即时克隆、基于VM的EVC,ESXi快速启动、vGPU增强。
vSphere6.7中虚拟机的硬件版本由13升级到了14。14版本中支持很多新的硬件,比如VBS、vTPM、vIOMMU、虚拟PMem和vRDMA以及vNVMe,针对虚拟机的EVC也是在当前版本实现。同样在CPU和内存这块也有一些新的改进和增强,虽然虚拟机支持的内存和CPU数量是保存不变,但是磁盘从原先的60块增加到了256块,虚拟机的扩展性得以增强。
上一个版本中虚拟机做FT只支持4个CPU和64G内存,现在的版本中可以支持到8个CPU和128G内存,这样对于用户来说使用的范围会更广一些。同样VMCP的技术也可以去支持FT,虚拟机组件保护是在HA集群中监控存储故障的,常见的两个存储故障PDL、APD就是通过这个组件来识别,然后对虚拟机进行高可用保护。现在对内存的映射可以支持到1G页面大小,虚拟机的性能得以提高。因为上一个版本中引入了VMFS-6,这个版本也对它进行了增强,但是VMFS-3在目前的版本中已不再支持。
即时克隆
即时克隆的具体使用场景除了View之外,还可以用在大数据、hadoop、容器,以及一些开发测试环境,比如DevOps中。这些场景下可能都会有一些批量或者快速部署虚拟机的需求。
6.7版本中即时克隆有两个不同的操作,第一个是从运行的虚拟机中做即时克隆,第二个是从冻结的虚拟机中做即时克隆。运行的虚拟机就是正常的开机的虚拟机,CPU、内存都在工作。冻结的虚拟机CPU是停止发送指令的,可以认为CPU、内存已停止工作,但是客户端显示的仍然是开机状态。
虽然我们从界面上无法判断当前虚拟机的状态,但是本质上来说这两种状态都可以做即时克隆。
他们之间的区别在于,运行的虚拟机做即时克隆,每一个生成的虚拟机都会有不同的内存数据,因为他们所基于的镜像不同。而冻结的虚拟机由于CPU和内存数据没有变化,所以生成的虚拟机所有的内容都是一致的。另外已经做过即时克隆的虚拟机仍然是可以使用常用的虚拟化功能。
下面我们来看一下这两种不同的虚拟机如何去做即时克隆。
比如现在有一个源虚拟机,它有自己的内存数据和磁盘数据,这是通过即时克隆生成的虚拟机会基于当前的增量数据去生成自己的增量数据。但是再生成的虚拟机会基于另外一个增量数据来生成自己的增量数据。所以每一个虚拟机不管是磁盘数据还是内存数据都不一样,因为原始虚拟机是在运行的,会实时变化。
对于冻结状态的虚拟机生成的所有虚拟机都是基于相同的增量数据,也就是说即时克隆的复制点是一样的,这样保证了生成的虚拟机数据在克隆的那一刻是一致的。
目前的版本中还只能通过API的方式执行即时克隆,客户端和图形界面下暂时无法使用。调用的API接口为VirtualMachine.InstatClone,另外用户还必须要有VirtualMachine.Provisioning.Clone权限。即时克隆作为一个全新的技术和Horizon中的链接克隆是不同的,也是不能同时存在。
虚拟机的冻结也需要通过调用API来实现,同时虚拟机必须要安装VMware Tools。Linux上要安装VMware-rectool instatclone.freeze驱动,Windows要安装rpctool.exe instantclone.freeze驱动。
冻结状态的虚拟机要想恢复到正常状态,需要关机或重置,无法直接进行恢复。这和虚拟机常见的挂起和恢复是不一样的,挂起和恢复会将内存数据写在硬盘上,虚拟机相当于关机状态。但是冻结状态的虚拟机看起来其实是开机状态,只是内存数据没有变化而已。
通过查看虚拟机的日志就可以判断虚拟机是否在冻结状态,如果在VMware.log中看到类似“yyyy-mm-ddThh:mm:ss:ssZ|vCPU-0|125:InstantClone_Freeze:Froze for instant Clone”这样的信息就证明虚拟机是冻结状态。
基于VM的EVC
集群启用EVC之后,通过设定EVC baseline可以让主机之间进行虚拟机迁移的时候提高兼容性,使得虚拟机在做vMotion的时候不会再出现兼容性问题。
从功能上来说虚拟机级别的EVC和主机级别的EVC是一个概念,都是屏蔽一些高级指令集,让迁移变得更兼容。同时他们之间并不冲突,也就是说不管主机级别有没有EVC,虚拟机都是可以启用EVC,且可以直接在图形界面下完成操作。
上图中整个集群没有EVC,但是可以针对虚拟机启用EVC,而且每个虚拟机的baseline不同。baseline是作为CPU指令集的基准,所有的主机CPU必须满足这个基准才能让虚拟机在主机之间迁移。
启用虚拟机级别的EVC需要满足几个点要求,vCenter和ESXi必须都是6.7版本,虚拟机的版本则要是14。
集群中没有启用EVC,虚拟机启用EVC的情况下会有一些限制和要求。首先虚拟机的baseline不能高于主机的CPU指令集,虚拟机的baseline如果高的话就会产生一些兼容性问题。
在当前集群中要想做虚拟机的迁移,比如集群中没有启EVC但是要做DRS或手工去做vMotion的时候必须要去参考主机的CPU。也就是说只能迁移到兼容的主机上,或者比它的指令集高的主机上。
如果集群和虚拟机都启用EVC的时候,虚拟机的优先级是要高于主机的,在进行迁移的时候是以虚拟机为准。换句话说就是虚拟机的baseline会覆盖掉主机的baseline。
这里详细讲一下baseline,它其实就是CPU在集群中设置的最低指令集,相当于一个门槛,高于这个门槛的就兼容,低于该门槛的就不兼容。管理员在进行EVC设置的时候可以手动选择baseline。
ESXi快速启动
另一个新的改进是主机的快速启动,指的是ESXi在启动的时候不需要再进行硬件的初始化,直接重启vmkernel就行了。这极大的节省了启动时间,尤其是在做主机升级的时候。
使用update manager对主机进行补丁升级的时候有可能需要重启,这个时候用传统的方式要花费很多时间。
快速启动同样有着一些要求。ESXi必须是6.7版本,硬件要满足兼容性要求,另外快速启动只支持自带驱动,无法支持第三方或者外置驱动,同时ESXi还要启用安全启动的功能。
vGPU增强
vGPU在早期的Horizon中就已引入,在这个版本中虚拟机如果使用了vGPU功能,就可以执行挂起和恢复的操作,这样就增加了移动性。
打开虚拟机的编辑属性对话框,里面就可以选择调用vGPU配置。
VCSA的增强
VCSA的增强上我们也是通过四个方面来介绍,分别是增强型链接模式、备份和恢复、安装和迁移、VAMI。
增强型链接模式
对于增强型链接模式,不管是6.5还是6.7中都支持两种不同的部署方式。上图左边是嵌入式部署,将vCenter和PSC部署在同一个机器内,右边是将vCenter和PSC部署在不同机器内,这叫做外部部署。
6.7版本中引入了新的方式,这种方式把不同的嵌入式vCenter通过增强型链接模式链接在一起,而且最大数量支持到15个。需要注意的是这个改进只支持Linux版本的vCenter。
另外还有两个目前版本不支持的模式。第一种方式是将嵌入式的vc和外部vc链接在一起,第二种方式是一个嵌入式的vc和一个外部vc单独链接。
最后讲下其他方面的改进增强。现在我们可以把vCenter从一个域移到另一个域中,也可以将不同域中vCenter整合在一个域中。
备份和恢复
6.5版本中引入的备份恢复功能,支持vCenter数据库以及事件任务的备份恢复。但是这些都需要手工完成,从6.7开始可以针对vCenter数据库、事件、任务等做有计划的备份。这样的方式可以是基于文件的备份,我们可以自己选择需要备份的数据,无论是数据库的数据还是事件或者任务的数据。如果想对整个vCenter的磁盘镜像做备份,可以使用VADP的技术,但是需要做额外的安装。
关于vCenter的备份可以进入到vCenter的管理界面中进行,恢复则是在vCenter的安装界面中。在备份的时候可以遵循常见的协议,也可对备份的数据进行加密,还能设置一些保留策略,即允许当前备份保留多久。备份失败之后会有一个警告出现在客户端中。
vCenter的安装界面也有一些改进,尤其是安装过程中允许用户自定义端口。定义完成之后在打开VC的时候就可以输入地址和自定义端口访问到vCenter。
VAMI
还有一个改进就是可以在vCenter的管理界面,也就是VAMI中,对当前的VC环境进行全局的健康状态检查。包括CPU、内存、数据库、存储等运行状态的全面查看,如果出现问题就会有相应的报警。
存储
存储方面的增强主要有两块,一块是本地磁盘,另一块是NVDIMM & PMem。
本地磁盘
前面提到过我们从6.5版本开始支持512e硬盘,从6.7版本支持了4kn硬盘。这里先简单解释一下这几个概念。
上图中左边这块是传统的512n硬盘,一块硬盘中会有逻辑和物理两种扇区,这两种扇区如果都是512字节的话,这块硬盘就叫做512n硬盘。
随着技术的发展,又引入了新的高级格式,这种就是512e硬盘,这里的e是模拟的意思。512e硬盘中物理的分区是4096个字节,也就是4k个字节,逻辑扇区则是512个字节,相当于在逻辑层面上模拟一个512字节的扇区。为了满足一些比较老的系统或应用程序我们会采用这种硬盘格式,但是这样的话它的效率和性能并没有完全的发挥出来,毕竟做了一些扇区的模拟。
4kn的硬盘无论是逻辑扇区还物理扇区都是4k字节,效率和性能都得以提升。
要想使用4kn的硬盘,主机只能用UEFI的BIOS,这是由于一些安全性的考虑。启动和部署既可以通过ISO镜像的方式也可以使用auto deploy的方式实现。
NVDIMM 和PMem
另一个存储的技术是NVDIMM 和PMem。NVDIMM是一种存储类型。我们平时使用的内存有很多不同叫法,比如最传统的单片机和嵌入式芯片中用到的内存叫ROM,它可以存放数据,不会随着电源的断开而丢失数据。我们常用的计算机使用的内存是RAM——随机访问内存,电源的断开之后而数据会被清空。RAM中其中有一种就是NVDIMM,NV指的是非失忆性,也就是设备中存储的数据即使电源断开数据也不会丢失,可以简单的将NVDIMN理解为添加了电源设备和flash空间的RAM。
PMem即持久性内存,性能上接近传统内存,成本上和flash ssd差不多。上图展示的就是使用传统存储和PMem的区别。
左边是传统存储,上面是CPU,中间是内存,下面是存储和存储控制器。读数据的时候,数据块先从存储中读到CPU的缓存中,再推送给内存存放,当有数据变化的时候,内存和CPU之间就会有一些交互进行数据更改,最终CPU会将变化的数据提交给硬盘保存。这一套流程相对来说效率会低一些,PMem则可以让CPU和存储之间进行直接的交互,明显提高了效率。
6.7之后我们又引入了虚拟NVDIMM,可以在虚拟机内进行虚拟设备的添加,一个虚拟NVDIMM设备作为虚拟硬件存在,去实现一些特定功能。每个虚拟机可以支持64个虚拟NVDIMM设备。
上图中有两个虚拟机,他们有各自不同的访问方式。右边是一个传统的虚拟机,它如果要想使用PMem设备,必须要通过存储策略来进行设置,然后添加一个PMem虚拟磁盘,基于这样的存储策略完成存储的读取和访问,这种方式被叫做虚拟磁盘模式。
左侧的是一个比较先进的虚拟机,我们叫它PMem-aware,这个虚拟机中的应用程序和OS知道底层是什么样的存储,也就是持久性内存,这样的话虚拟机在进行读写的时候,就可以通过虚拟设备直接访问存储,这种方式叫做直接访问模式。这两种方式功能上是一样的,只不过内部原理实现不同。
基于虚拟磁盘的方式虽然在效率和性能上会低一些,但是使用范围更广。第一它支持所有虚拟机版本硬件,第二对于传统的OS也支持,只不过不支持IO filters。同样也可以使用Storage vMotion将虚拟机迁移到传统存储中。还可以在主机和datastore之间进行迁移。
新的技术在性能上当然会更高一些,但是有很多限制,第一必须是最新版本的虚拟机(14或以上),第二只支持最新的操作系统(Windows server 2016或者RHEL 7.4),支持的应用程序也必须要读到PMem环境,最后的限制是不能将虚拟机迁移到传统存储设备上。
安全
最后是和安全性相关的内容,有TPM & vTPM、VBS、虚拟机加密三个方向。
TPM & vTPM
TMP是硬件中的一个芯片,可以提高整个硬件的安全性,里面存放着秘钥以及一些用户的密码信息,包括秘钥,哈希值等。vTPM指的是虚拟TPM,是在虚拟机的硬件中添加的设备,从而对虚拟机本身的操作系统和应用程序提高安全性,是作为虚拟硬件存在的,它还可以和物理的TPM芯片进行交互。
虚拟TPM的使用也有一些限制和要求,第一必须是最新版本的虚拟机14;第二虚拟机必须启用加密,vCenter也必须能够调用这个加密算法对虚拟机进行加密;第三要有KMS,这是一个环境中做秘钥管理的服务器,需要用户单独搭建,有这个环境才能读取秘钥对虚拟机进行加密,vc加密的时候必须要访问到KMS,最后在虚拟机的设置中必须使用EFI固件。
vTPM可以在虚拟机创建和重新配置的过程中添加,一旦添加完成之后,这个虚拟机的文件夹中的文件都会被自动加密。
添加vTPM只要打开虚拟机编辑属性界面,通过添加新设备的菜单就可以完成,类似于添加网卡和磁盘。
VBS
VBS是Windows中提供的技术,专门针对Windows10和Windows server 2016这样最新版本的系统提供安全保护。VBS其实就是在虚拟机的这层首先去加载一个基于Windows的Hypervisor,然后再去进行虚拟机的创建管理。相当于在主机上有一个Window的嵌入式虚拟环境,使用虚拟机的访问变得更加安全。
要VBS使用有着一些限制,一是只能在vSphere6.7中针对14版本的虚拟机实现,二是Windows版本必须是10 或者Windows server 2016,三是虚拟机必须关机,另外IOMMU也有一些要求和限制,最后是只能在EFI环境中,而且要设置安全启动。
最后一个新功能就是虚拟机的加密,其实该功能从6.5开始就已经引入。它需要vCenter和vSphere都是6.5以上,还需要一个额外部署的KMS环境。以前的加密是需要通过一些存储策略来完成,相对来说操作起来会复杂一些。而现在可以直接在虚拟机的编辑属性中选中就行了,还可以挂起和恢复加密的虚拟机。在之前6.5的环境下可以挂起虚拟机,但无法进行恢复,同样虚拟机内存快照也不能恢复。
以上为今天的全部分享内容,谢谢大家!
推荐文章