在WindowsServer2012中,Hyper-V添加了在NAS设备托管的网络共享上存储虚拟机(VM)资源的功能,您可将其作为SAN远程存储的一种替代方式。WindowsServer2012中的Hyper-V存储堆栈现在可通过使用SMB协议中的“弹性句柄”功能,来增强这些虚拟机资源从网络连接断开的恢复支持。这基本上意味着诸如虚拟机配置文件、ISO文件、VHD文件和VHD快照文件等虚拟机资源现在可存储于支持SMB2.2+协议的任何远程SMB文件共享中。
SystemCenter2012VirtualMachineManager(VMM)中基于SMB功能的Hyper-V通过增强管理支持和新增NAS存储管理的全面支持,进而构建了这一功能。用户现可通过VMM进行从创建,到修改权限,再到删除的整个网络共享生命周期。这些网络共享可驻留于WindowsServer2012(现已升级为SMB3.0)文件服务器中,亦可驻留于实施了SMB2.2或更高协议的NAS设备中。就目前而言,VMM可为支持符合SMI-S要求的存储提供程序的NAS设备(NetApp和/或EMC)提供支持。
以下是在VMM中管理SMB共享的步骤:
1.添加存储设备:首个步骤是将存储设备或Windows文件服务器添加到VMM的管理中。此操作可通过使用构造工作区à存储\提供程序节点à右键单击并选择“添加存储设备”选项完成。为Windows文件服务器选择“本机WindowsWMI”,或为符合SMI-SNAS要求的存储提供程序选择“SMI-SCIMXML”。使用对文件服务器具有管理员访问权限的运行方式帐户。VMM将使用这一指定的运行方式帐户来执行今后其他文件共享的管理操作,如创建共享、修改共享权限,以及删除共享。作为此操作的一部分,VMM将发现所有位于存储设备上的现有共享,并将它们添加到VMM管理中。VMM也将定期发现稍后(从WMM带外)添加到存储设备上的任何共享,并将其添加到VMM管理中。您也可使用Add-SCStorageProvidercmdlet来从PowerShell命令行添加存储设备。
2.创建共享:您也可选择使用构造工作区à存储\提供程序节点à从适当的视图或数据网格中选择提供程序à选择功能区操作来创建文件共享在此提供程序上直接创建文件共享。如果用户指定了一个非位于文件服务器上的本地路径,那么VMM将自动为您添加该路径。New-SCStorageFileSharecmdlet也可用于从PowerShell命令行创建共享。
3.将共享注册到主机或群集:当共享被添加或发现时,您需要将其注册到您希望创建可使用文件服务器远程存储的虚拟机的任何主机或群集上。此操作可通过使用构造工作区à选择主机或群集à右键单击“属性”à“存储”页面(针对主机)和“文件共享存储”页面(针对群集)à选择“添加文件共享”选项完成。作为此操作中的一部分,VMM将修改共享针对Hyper-V主机的必要权限,以访问存储。“我何时应手动修改共享的权限”部分提供了有关这些权限的额外详细信息。Register-SCStorageFileSharecmdlet也可用于从PowerShell命令行注册共享。
4.在SMB共享上创建包含虚拟机资源的虚拟机实例:当共享被注册到主机或群集后,您可将虚拟机VHD和/或虚拟机资源存储于此共享上。在新虚拟机创建向导中,您可在“配置设置”页面中选择一个SMB共享:
a.您可选择将所有虚拟机文件存储于SMB共享上。您可选择[Virtualmachinelocation](虚拟机位置)作为注册的SMB共享来完成此步骤。
b.您也可选择仅将单个VHD文件放于SMB共享上。您可选择[Transferthevirtualharddiskbyusingthenetwork](通过使用网络来传输虚拟硬盘),然后选择将源作为一个库共享,并将目标路径作为注册的SMB共享来完成此步骤。
c.您也可选择使用来自SMB共享中的一个现有VHD。您可选择[Usethevirtualharddiskthatexistsatthedestination](使用存在于目标中的虚拟硬盘)选项,然后选择将目标路径作为注册SMB共享上的VHD的路径来完成此操作。
5.从主机或群集注销共享注册在删除主机或群集之前,我们建议您从主机或群集注销共享。这将清除针对Hyper-V主机的所有不必要共享权限。此操作可通过使用构造工作区à选择主机或群集à右键单击“属性”à“存储”页面à选择“删除文件共享”选项来完成。Unregister-SCStorageFileSharecmdlet也可用于从PowerShell命令行注销共享。基于可选的用户输入�CLeavePermissionsOnShare,用户可选择不修改共享权限。该选项仅在使用PowerShell命令行时可用。此选项的默认值是$false,即始终删除共享的权限。
6.删除共享:您也可使用VMM来从文件服务器上彻底删除共享。此操作可通过使用构造工作区à存储/提供程序节点à从数据网格中选择提供程序à选择共享à选择功能区操作“删除”来完成。请注意,这将永久从文件系统中删除共享。但这不会删除共享的文件。Remove-SCStorageFileSharecmdlet也可用于从PowerShell命令行中删除共享。
有关这些步骤的其他详细信息,请访问TechNet库并查看基于SMB的Hyper-V支持。
VMM将为您更新所有要求的共享权限。您不需要手动修改任何权限来让Hyper-V访问文件共享。
图1:文件服务器管理
VMM将向共享权限添加以下运行方式帐户:
a)Hyper-V主机管理员帐户。这是在添加主机或群集时使用的管理域帐户。
b)主机的计算机帐户。在使用群集的情形中,VMM服务器将添加群集所有节点的计算机帐户。当新节点被添加到群集时,VMM将自动更新针对注册到群集,并作为群集定期刷新一部分的所有共享的权限。
对于Windows服务器SMB文件共享,VMM将为上述所有帐户添加以下共享:
a)共享权限:AccessRights.Fullb)NTFS权限:FileSystemRights.Modify|FileSystemRights.ChangePermissions|FileSystemRights.DeleteSubdirectoriesAndFiles
对于符合SMI-SNAS要求的存储提供程序,VMM将为上述帐户提供以下权限:
a)5(读取)、6(写入)和更改权限(14)的 CIM_AssociatedPrivilege。您唯一需要为共享修改权限的情况是未管理的共享。VMM中未管理的共享,是一个与提供程序或文件服务器无关联的共享。VMM也可以管理此类共享,但其功能仅限于在这些共享上创建虚拟机,而不共享ACL管理。图2:凭据委派
在首次调用SMB共享时,Hyper-V将模拟已经启动VHD安装操作的用户(在此示例中为CONTOSO\AdminH)。此操作的目的在于验证调用用户是否拥有访问SMB共享上VHD文件的适当权限。如果此调用成功,那么在以下调用中,Hyper-V将使用Hyper-V主机的计算机帐户凭据(在此示例中为CONTOSO\HyperVHost$)。
当VMM服务器/客户端或任何其他管理客户端尝试远程管理Hyper-V虚拟机或SMB共享时,身份级别令牌将发送到Hyper-V(首个跃点),在默认情况下,这将导致(上述)模拟后的SMB共享(第二个跃点)SMB身份验证失败。此身份验证失败是由于身份级别令牌无法被除创建此令牌的任何其他计算机使用所造成的。为了避免这一问题,您必须在Hyper-V服务器和SMB共享服务器之间设置约束委派,以允许AN接受Hyper-V服务器上的身份令牌来验证SMB服务器,或者VMM必须将完整的交互式令牌传递到Hyper-V,以进行(CredSSP提供的)操作。
使用约束委派的首个选项不仅需要在域中进行更高级别的授权,而且由于构造(Hyper-V主机/群集)将随着时间的推移而变化,因此其还需要不断更新。进行凭据委派的第二种替代方式是使用CredSSP。Hyper-V远程API(WinRM)允许使用CredSSP身份验证来委派调用方的凭据。VMM将使用CredSSP,并在主机代理WinRM调用上启用CredSSP。
为启用CredSSP,VMM将自动为您进行以下操作:
1.VMM服务器设置:VMM服务器设置将配置计算机的组策略设置,以允许WinRM使用CredSSP身份验证提供程序。
o启用WinRM客户端GPO:ComputerConfiguration\Administrativetemplate\WindowsComponents\WindowsRemoteManagement(WinRM)\WinRMClient
[AllowCredSSPauthentication]=true
或
命令行:winrmsetwinrm/config/client/auth'@{CredSSP="true"}'
o启用凭据委派GPO:ComputerConfiguration\AdministrativeTemplates\System\CredentialsDelegation
[AllowFreshCredentials]="WSMAN/*"
2.主机代理设置:
o启用WinRM服务GPO:ComputerConfiguration\Administrativetemplate\WindowsComponents\WindowsRemoteManagement(WinRM)\WinRMService。
[AllowCredSSPauthentication]=true
或
命令行:winrmsetwinrm/config/service/auth'@{CredSSP="true"}'
3.VMM的WinRM通信通道:WinRM仅允许“全新凭据”的委派。这需要VMM在创建WinRM会话时显式传递有效凭据。(请注意,由于WinRM并不支持“默认凭据”,因此我们无法使用VMM服务帐户)。我们将在针对这一目的添加主机或群集时使用分配的运行方式帐户。以下所有针对主机的WinRM调用都将使用运行方式帐户来管理主机。因此,请务必利用运行方式帐户来添加主机和/或群集,而非仅仅提供直接凭据,进而让VMM来使用这些保存的凭据进行委派。
希望本篇博文对您有所帮助。欢迎您在博文底部提供反馈,并/或在VMM论坛上提问。另外,请访问VMM2012TechNet库了解信息!
谢谢