Microsoft Hyper-V Server 2012开启虚拟化-SMB 3.0

 

 

题外话:Microsoft Hyper-V Server 2012开启虚拟化从4月份开始写,因为期间将其整理为书籍,预计在10月份左右出版,因此在5月8号以后就没有更新,因此在这里补全剩下的内容。因为Windows Server 2012 R2,citrix XenDesktop 7 和VMware vsphere 5.5相继发布,因此我会尽可能遇上进度,能力有限,只能全力以赴。shell

——————————————————————————————————————————数据库

1、SMB 3.0简介

        服务器消息块 (SMB) 协议是网络文件共享协议,其让计算机上的应用程序可读取和写入文件,以及从计算机网络的服务器程序中请求服务。SMB 协议可在其 TCP/IP 协议或其余网络协议上使用。使用SMB协议时,应用程序(或应用程序用户)可访问远程服务器上的文件或其余资源。这让应用程序能够读取、建立和更新远程服务器上的文件。它还能够与任何设置为接收SMB客户端请求的服务器的程序通讯。Windows Server 2012 引入了全新3.0版的SMB协议。Windows Server 2012经过更新的SMB协议 (SMB 3.0) 提供了不少新SMB功能,大大提升了文件服务器的可靠性、可用性、可管理性和其它性能。windows

        SMB3.0部分新功能或更新功能后端

特性/功能缓存

新功能或更新功能安全

摘要性能优化

SMB 透明故障转移服务器

新功能网络

让管理员可执行群集文件服务器中节点的硬件或软件维护,且不会中断将数据存储在这些文件共享上的服务器应用程序。此外,若是群集节点出现硬件或软件故障,SMB 客户端将以透明方式从新链接到其余群集节点,且不会中断将数据存储在这些文件共享上的服务器应用程序ide

SMB 横向扩展

新功能

使用群集共享卷 (CSV) 版本 2 时,管理员能够经过文件服务器群集中的全部节点,建立可供同时访问含直接 I/O 的数据文件的文件共享。这可更好地利用文件服务器客户端的网络带宽和负载平衡,以及优化服务器应用程序的性能

SMB 多通道

新功能

若是在 SMB 3.0 客户端和 SMB 3.0 服务器之间提供多条路径,则支持网络带宽和网络容错的聚合。这让服务器应用程序能够充分利用可用网络带宽并在发生网络故障时恢复

SMB 直接

新功能

支持使用具备 RDMA功能且可全速运行的网络适配器,其中延迟很是低且CPU很是少。对于 Hyper-V 或 Microsoft SQL Server 等工做负载,这让远程文件服务器如同本地存储同样

用于服务器应用程序的性能计数器

新功能

全新 SMB 性能计数器提供有关吞吐量、延迟和 I/O/秒 (IOPS) 的、按共享列出的详细信息,从而让管理员能够分析用于存储数据的 SMB 3.0 文件共享的性能。这些计数器专为将文件存储在远程文件共享上的服务器应用程序而设计,如 Hyper-V 和 SQL Server

性能优化

更新功能

SMB 3.0 客户端和 SMB 3.0 服务器均已针对小型随机读/写的I/O 提供了优化,这种 I/O 在 SQL Server OLTP 等服务器应用程序中很常见。此外,默认状况下打开大型最大传输单元 (MTU),这将大幅提升大型连续传输性能,如 SQL Server 数据仓库、数据库备份或还原、部署或复制虚拟硬盘

SMB-专用 Windows PowerShell cmdlet

新功能

借助用于 SMB 的 Windows PowerShell cmdlet,管理员能够从命令行以端对端的方式管理文件服务器上的文件共享

SMB 加密

新功能

提供 SMB 数据的端对端加密并防止数据在未受信任网络中遭受窃听。无需新部署成本,且无需 Internet 协议安全性 (IPsec)、专用硬件或 WAN 加速器。它可按共享配置,也可针对整个文件服务器配置,而且可针对数据遍历未受信任网络的各类方案启用

 

        下面咱们具体介绍SMB的一些重要新功能。

1.SMB连续可用性

        连续可用性是指连续可用软件和硬件平台,指在支持不会形成任何数据损失的透明故障转移。而透明的故障转移是指进行计划内移动或处理计划外故障的能力,它不会出错,也不会丢失数据,并且在任何规模上都能很好地执行。SMB连续可用性主要是提供对SQL Server 数据库或 Hyper-V应用程序的很好的支持。经过SMB连续可用性能够在执行存储的维护时不中止存储的服务,并且能应对计划外的故障,从而使SQL Server 或 Hyper-V 等应用程序能连续运行,而无论存储层是否出现故障。

2. SMB透明故障转移

SMB 透明故障转移可让群集配置中的文件服务器以这样的方式进行故障转移:没有停机,且在故障转移期间只有很小的 I/O 延迟。故障转移对于将群集用做文件存储的应用程序(例如,SQL Server 或 Hyper-V)而言是彻底透明的。

        SMB 透明故障转移支持各类状况,包括计划内移动、负载平衡、操做系统从新启动、计划外故障和用于扩展群集的客户端重定向。SMB 透明故障转移支持文件级别和目录级别的操做。例如,访问 SMB 文件服务器群集的计算机(运行 SQL Server)在正常操做中会打开不少文件,这须要能以透明方式进行故障转移。目录操做也必须能以透明方式进行故障转移。例如,在虚拟机存储为文件服务器群集的Hyper-V环境中,当部署新VM时,Hyper-V将在每一个群集节点上建立文件夹结构。这些文件夹建立操做须要以透明方式进行,以即可以部署VM,即便在计划外故障转移中也应如此。要支持 SMB 透明故障转移,文件服务器群集必须为Windows Server 2012 群集。SQL Server 或 Hyper-V 之类的应用程序也必须运行在 Windows Server 2012 服务器上。SMB 透明故障转移工做原理示意图如图所示。

clip_p_w_picpath002

 

        完成透明故障转移涉及不少组件,用以确保文件句柄和SMB链接在两个服务器之间的实际移动对于应用程序而言彻底透明。这些组件中的一部分是SMB 3.0中新增的组件。

3. 性能优化与DAS等效

        性能对于运行SQL Server或Hyper-V的组织特别重要。当前不少组织在直接链接存储 (DAS)、Internet小型计算机系统接口 (iSCSI) 或光纤通道存储区域网络 (SAN) 上运行 SQL Server或Hyper-V来帮助最大化 I/O 性能。SMB 3.0 的一个性能目标是在以太网上拥有1Gbps的文件访问速度,从而能匹配DAS的性能。Microsoft已展开自上而下的性能分析和调节,包括SMB服务器优化、添加新跟踪设备来帮助识别瓶颈和实质性重构 SMB 2 客户端。Windows Server 2012中的 SMB 3.0在如下条件下能够发挥大约98%的DAS提供的事务性能。SMB 3.0可让管理员利用基于文件的远程存储的灵活性。存储能够轻松移动,由于它对于应用程序服务器来讲属于远程存储,而应用程序服务器能够位于不一样的物理机器上来充分利用其性能优点。性能优化与DAS等效示意如图所示。

clip_p_w_picpath004

 

4. SMB 多通道

        SMB多通道为每一个可用SMB会话使用多个TCP链接。例如,若是服务器配置在运行 SQL Server和后端文件存储的计算机之间具备多个1 G网络接口卡 (NIC),则SMB多通道将自动聚合可用的带宽。SMB多通道支持透明故障转移,若是有可用的其余链接,它将从网络故障进行恢复。这提供了一个恢复能力很强的网络环境,能够支持SQL Server和 Hyper-V,以及其余关键应用程序的业务。除了自动在多个 NIC 之间聚合带宽外,SMB多通道经过为网络处理使用多个CPU和支持接收方缩放 (RSS)的多个NIC提升了吞吐量。SMB多通道配置自动进行,SMB 3.0自动检测和使用多网络路径。SMB 多通道工做示意图如图所示。

clip_p_w_picpath005

 

5. SMB Direct

        诸如SQL Server和Hyper-V之类的应用程序可能对CPU和内存资源有很高的需求。 SMB 3.0有助于最大化SQL Server或Hyper-V服务器的性能,经过将处理器的任务转移到网卡来减小I/O处理的CPU使用率。

        SMB Direct使用远程直接内存访问 (RDMA)支持在两个计算机之间移动数据,而不须要使用TCP/IP堆栈。这容许高吞吐量、低延迟网络,但须要依赖具备RDMA功能的NIC (R-NIC)。

        经过SMB多通道,SMB Direct能够自动发现和使用R-NIC。SMB Direct能够与SMB 多通道配合使用,聚合多个R-NIC,并使用SMB多通道来进行负载平衡和故障转移。SMB Direct的工做示意如图所示。

clip_p_w_picpath007

 

        SMB Direct具备SMB文件存储的传统优点:易于配置、管理和迁移,它不要求应用程序更改或管理配置。
 

2、建立SMB文件共享

      不管是创建SMB共享仍是NFS共享,都必须先添加Windows文件服务器,而建立SMB共享或者是NFS共享,其步骤大体相同。在了解了SMB共享后,接下来咱们在一台Windows Server 2012中添加文件服务器并建立SMB共享。

步骤1 在服务器管理器中,选择服务器角色,在添加所选服务器的角色功能时选择文件服务器,同时也能够添加文件服务器资源管理器。

clip_p_w_picpath009

 

步骤2 按照添加角色的安装向导,完成文件服务器的安装,文件服务器安装完成后不须要从新启动服务器,安装完成后单击“关闭”完成安装向导。

clip_p_w_picpath011

 

步骤3  成功安装后,在Windows Server 2012服务器上的服务器管理器中打开文件服务器,在“共享”选项中,能够看到服务器上的全部共享。因为咱们是新添加共享角色,因此这里没有任何共享。首先咱们要创建一个共享,单击“若要建立文件共享,启动新加共享向导”连接。

clip_p_w_picpath013

 

步骤4 在新加共享向导中,我能够选择文件配置文件的共享方式,主要是SMB共享和NFS共享。可是在这两种共享里,又分快速和高级, SMB还有应用程序形式。快速部署是只分配磁盘位置和权限,并设置共享名称和属性。而高级设置里还包括了磁盘的配额等功能,而应用程序则是创建的SMB共享为Hyper-V或者是SQL Server服务。很是规文件存储。这里咱们选择“SMB共享-高级设置。

clip_p_w_picpath015

 

步骤5 选择服务器和共享的路径,和创建iSCSI相同,会在创建共享时,系统默认创建路径为\Shares的目录,Windows Server 2012以前的版本不会添加此目录,这里选择存放共享文件夹的位置,选择好之后单击“下一步”按钮。

clip_p_w_picpath017

 

步骤6 设置共享的名称和描述。咱们在“共享名称”对话框中输入要设置的共享名称,这里笔者输入的是“FS”,而后在“共享描述”文本框中添加相应的文字说明。选择这里的路径,在这里咱们能够把默认创建的\Shares目录删除,并设置要共享的远程路径。

clip_p_w_picpath019

 

步骤7 配置共享存储的设置。能够启用基于存取的枚举。基于存取的枚举就是显示用户有权访问的文件和文件夹,其余没有权限访问的文件夹则是隐藏的。能够设置容许共享缓存,若是开启共享缓存,就可让脱机用户访问共享的内容。若是安装了BranchCache,能够在缓存中开启BranchCache功能,最后就是开启加密的数据访问,顾名思义,开启这个访问就是为了在数据访问的时候,确保传输数据的保密性。

clip_p_w_picpath021

 

步骤8 在控制访问权限设置中,设置本机用户或者域中的用户和用户组,并授予相应的权限。单击“自定义权限”按钮,会弹出“FS高级安全设置”对话框。

clip_p_w_picpath023

 

步骤9 在共享高级设置中,能够设置用户访问权限,及共享、审核、有效的访问,这里能够添加用户并设置访问权限,设置完成后单击“应用”按钮。在该界面中单击“下一步”按钮。

clip_p_w_picpath025

 

步骤10 设置文件夹管理属性,指定文件夹的用途以及文件夹中存储的文件类型,这有利于文件服务器对数据管理的策略。

clip_p_w_picpath027

 

步骤11 设置文件夹或卷的磁盘配额。若是是快速设置,则不会有磁盘配额,这里能够选择windows系统默认的模版配置,在设置完成后,还能够更改模版配置。选择基于模版应用配额,单击“下一步”按钮。

clip_p_w_picpath029

 

步骤12 在“确认选择”界面中,查看设置信息,确认无误后单击“建立”按钮。

clip_p_w_picpath031

 

步骤13 建立过程很是快,建立完成后,能够单击“关闭”按钮,完成新建SMB共享。

clip_p_w_picpath033

 

步骤14 在服务器管理器共享中,能够看到咱们设置的共享文件夹,这时候就能够经过地址\\Mabf-win2012\fs进行访问,在实际部署时,为了提升SMB文件服务器的效率,在网络上能够结合NIC Teaming以提升访问带宽,可使用删除重复资料角色来节省存储空间。

clip_p_w_picpath035

 

3、配置文件服务器群集

        单台文件服务器存在单点故障,使用SMB无缝故障转移技术,可供管理员对文件服务器群集的节点执行硬件或软件维护任务,不会中断在文件共享中存储数据的服务器应用程序的正常运行。若是群集节点遇到硬件或软件故障,SMB 客户端能够不中断地从新链接到其余群集节点,不会对在这些共享中存储了数据的服务器应用程序形成中断。SMB 无缝故障转移支持计划内故障转移(例如维护操做)以及计划外故障转移(例如停电)。

        实施该功能要求使用故障转移群集,运行应用程序和文件服务器角色的服务器都须要使用 Windows Server 2012 操做系统,而且文件服务器上的文件共享必须具有持续可用性。

        下面咱们就来在设置好的故障转移群集中创建SMB共享。

步骤在故障转移群集中,角色配置里,添加角色,在“选择角色”界面中选择文件服务器所示。

clip_p_w_picpath037

 

步骤2 选择建立文件服务器的类型,文件服务器的类型分为常规使用的文件服务器和应用程序数据的横向扩展文件服务器。常规使用的文件服务器是指能够在网络上提供一个中心位置,以使用户在此处共享文件以及由常常打开和关闭文件的应用程序使用。此项支持服务器消息块(SMB)和网络文件系统(NFS)协议。文件服务器的常规使用支持数据删除重复、文件服务器资源管理器、DFS复制以及其余文件服务。

        应用程序数据的横向扩张文件服务器能够为服务器应用程序或者虚拟机提供存储以将保持文件长时间打开。能够横向扩展文件服务器客户端链接,以得到更好的带宽。横向扩张文件服务器只支持SMB协议,不支持数据删除重复、DFS复制或者文件服务器资源管理器。

        因为咱们要为Hyper-V创建高可用文件服务器,因此这里选择应用程序数据的横向扩张文件服务器。

clip_p_w_picpath039

 

步骤3 在客户端访问点界面中,输入访问此群集角色时客户端将使用的名称。

clip_p_w_picpath041

 

步骤4 在确认界面中,查看配置信息并肯定添加设置,单击“下一步”按钮,直到完成高可用性的配置。

clip_p_w_picpath043

 

步骤5 在故障转移群集管理器中,咱们就能够看见创建好的横向文件共享服务器,所建的文件共享服务器所处在mabofeng02节点服务器上。

clip_p_w_picpath045

 

步骤6 当完成创建群集文件服务器后,就在群集的横向文件扩展服务器上添加共享存储了,右击,在弹出的快捷菜单中选择“添加文件共享”命令。

clip_p_w_picpath047

 

步骤7  此时,咱们就能够为群集设置SMB共享,因为咱们创建的是横向文件扩展服务器,不支持NFS协议,因此这里只能选择SMB协议。并且创建的文件群集服务器是用于Hyper-V,因此这里选择“SMB共享-应用程序”,单击“下一步”按钮。

clip_p_w_picpath049

 

步骤8 在共享位置中,选择群集共享磁盘卷,在创建共享时,系统默认创建路径为\Shares的目录,Windows Server 2012以前的版本不会添加此目录,单击“下一步”,。

clip_p_w_picpath051

 

步骤9 设置共享的名称和描述,选择这里的路径,在这里,咱们能够把默认创建的\Shares目录删除,并设置要共享的远程路径。

clip_p_w_picpath053

 

步骤10 以前在单台Windows Server 2012上配置SMB服务器已近介绍了启用基于存取的枚举、容许共享缓存和加密数据访问,而在群集中,多了一个启用连续可用性,启用连续可用性是指群集监控高度可用的文件共享上的文件操做,能够将客户端毫无中断的故障转移到该群集的其余节点。

clip_p_w_picpath055

 

步骤11 在控制访问权限设置中,设置本机用户或者域中的用户和用户组,并授予相应的权限。能够单击自定义权限。在共享高级设置中,能够设置用户访问权限,共享、审核和有效的访问,这里能够添加用户并设置访问权限,以后单击“下一步”按钮。

clip_p_w_picpath057

 

步骤12 确认后查看建立结果,咱们会发现已经成功建立了SMB共享。此时,咱们就能够经过网络共享的方式链接到群集的共享目录。此时的文件服务器已经处于高可用性群集中。

clip_p_w_picpath059

 

步骤13 为了验证群集中的横向扩展文件服务器的高可用性,咱们这里作一个简单的测试,看是否在切换节点时,服务会出现中断。以前在设置中咱们已经启用了连续可用性,应该保证是毫无中断的保证迁移节点,咱们经过ping命令来进行检测。

clip_p_w_picpath061

 

步骤14 经过Ping命令咱们发现,没有出现任何的中断。链接在网络群集共享上的虚拟机仍是正常的在运做,由此能够看出windows Server 2012中SMB3.0提供了更为可靠的技术。

clip_p_w_picpath063

 

4、Hyper-V over SMB设计

      Hyper-V over SMB设计应该从3个方面来设计,文件服务器SMB的设计、网络的设计和Hyper-V主机的设计。从这3个方面来看,每一种都很是重要,既要确保总体的环境运营正常,又要确保系统稳定运行。为确保业务的连续性,不形成服务中断,其中的某一项或者是某一环节都不能够出现问题,要有很好的机制去保护它们,这是Hyper-V over SMB设计中都要考虑到的问题。

1. 文件服务器节点

      若是采用单节点文件服务器,风险是最大的,当这一台出现问题后,可能会形成整个的虚拟化环境彻底宕机,彻底终止了业务。若是是硬件形成损害,那么恢复起来是至关的困难的,并且可能会形成数据的丢失。但节点的文件服务器不能提供连续保护的共享方式,对于生产环境,不建议使用单点文件服务器。

clip_p_w_picpath065

 

        若是采用双节点文件服务器,在可靠性上更上一层楼,将两个节点组成一个文件服务器群集,就能够实现连续保护的共享方式,而且在投资方面也是比较低的。可是这种双节点的文件服务器具备有限的扩展能力,最多可提供几百块磁盘,因此不适合中型或者大型的数据中心建设。通常企业都采用的是双节点文件服务器方案。

clip_p_w_picpath067

 

        多节点的文件服务器方案能够支持更多磁盘的扩展,因为是多个文件服务器做为群集服务,可增长访问文件服务器的效率,同时能够应对灾难性的事故。可是多台文件服务器可能会形成硬件上的浪费,相对双节点的成本也是成倍的增长。可是比起专业的存储,其价格仍是至关的便宜。

clip_p_w_picpath069

 

2.网络设计

        在目前的大部分企业中,比较常见的就是千兆网络和服务器自带的千兆网口,若是在 SMB 3.0 客户端和 SMB 3.0 服务器之间提供多条路径,则支持网络带宽和网络容错的聚合。这让服务器应用程序能够充分利用可用网络带宽并在发生网络故障时恢复。若是SMB客户端或者服务器拥有两块以上网卡,SMB多通道技术能够自动侦测使用多种网络路径,能够合并使用全部网卡带宽,SMB多通道技术能够结合多核处理器的RSS(RSS能够将IO请求均衡分发到不一样处理器核心)技术。SMB多通道能够利用操做系统现有网卡绑定技术,可是不依赖。若是一块网卡出现故障,SMB多通道能够自动进行故障切换。SMB3.0之前客户端没法使用SMB多通道技术。

clip_p_w_picpath071

 

3.Hyper-V主机设置

 

       当咱们已经使用了SMB文件服务器的群集,提供高可用的SMB共享服务,那么在Hyper-V主机中,也要保证业务的连续性,将多台Hyper-V主机组建成群集,实现高可用性,若是Hyper-V采用独立服务器,VHD文件使用共享storage,那么Hyper-V的虚拟机不具备高可用性。当环境中只有1台主机时,则不适合生产环境中使用,能够用来作测试环境。若是Hyper-V主机采用群集的模式,而且文件服务器也采用群集的模式,这样不管是Hyper-v主机仍是文件服务器,均可以实现高可用性,而且迁移共享存储具备灵活性,文件共享的权限相对简单,具备低购置及运营成本,能够实现存储容错。

clip_p_w_picpath073

 

 

5、部署基于SMB的Hyper-V

      经过很是灵活的方式来提供和管理存储,虚拟化的SMB文件存储能够帮助组织以节省成本的方式最大化其Hyper-V环境的可靠性、可用性和性能。Hyper-V over SMB能够经过SMB 3.0协议在共享中存储Hyper-V文件;能够在SMB 3.0共享上存储VM配置文件、虚拟硬盘 (VHD)文件,甚至快照;能够存储独立和群集服务器的文件。其结构如图所示。在群集环境中,文件存储用做群集共享存储。Hyper-V over SMB增长了灵活性,简化了设置、管理和迁移。Hyper-V over SMB能够利用聚集网络,减小了资本支出 (CapEx) 和操做费(OpEx)。

clip_p_w_picpath075

 

        实施 Hyper-V over SMB 3.0 除了须要一个域的环境外,同时还须要在一个或者多个计算机上安装Hyper-V 角色且运行 Windows Server 2012;对于文件存储的要求是一个或者多个计算机安装装文件服务角色且运行 Windows Server 2012。文件服务器必须安装 Windows Server 2012,以便能使用新 SMB 3.0 协议。可使用来自其余供应商(而非 Microsoft)的服务器来实施SMB 3.0协议,如EMC,NetApp等。Hyper-V 不会阻止旧版本的 SMB;可是 Hyper-V 最佳实践分析程序会在检测到旧版本的SMB后发出一条警报。配置Hyper-V环境使用SMB 3.0文件共享的过程相似于配置简单的文件共享,必须建立和共享文件夹,并应用合适的权限。要配置虚拟化的文件存储,Hyper-V管理员帐户要对NTFS文件夹和SMB共享具备彻底权限。若是Hyper-V位于群集中,则Hyper-V管理员帐户应为Hyper-V群集帐户。

        Hyper-V必须配置VM才能使用 SMB 共享。能够经过使用图形管理工具或使用命令行来完成该任务。在Hyper-V管理器中,能够进行VM设置。只须要选择要链接VHD(存储在共享上)的硬盘通道,而后指定该位置为UNC路径就能够完成VM设置。另外,也可使用 Windows PowerShell 3.0 cmdlet 来建立和配置新VHD和VM。应该再次指定VHD或 VM的位置做为UNC路径,如图5-94所。

clip_p_w_picpath077

 

      在建立虚拟硬盘的时候,能够指定虚拟机硬盘存储的位置,能够设置为SMB 共享。

clip_p_w_picpath079

 

      若是使用Powershell配置,则过程的第一步是在目标文件服务器或群集上建立文件夹。例如,能够从命令提示中建立名为VMS的文件夹,使用的命令以下:

MD F:\VMS

      接下来共享该文件夹并应用共享权限。如下命令示例是使用上一步建立的 VMS 文件夹:

New-SmbShare -Name VMS -Path F:\VMS -FullAccess Dom\HAdmin, Dom\HV1$, Dom\HV2$, Dom\HVC$

      最后,必须应用 NTFS 权限。能够经过检索共享权限并将其用做 NTFS 文件夹权限来完成。 如下命令示例使用VMS共享:

(Get-SmbShare –Name VMS).PresetPathAcl | Set-Acl

相关文章
相关标签/搜索