欢迎光临,这里是 gOxiA=苏繁=SuFan 独立的个人博客。
本站域名:http://goxia.maytide.net or http://sufan.maytide.net
移动设备请访问:http://goxia.maytide.net/m
转载文章,请务必保留出处与作者信息,未经许可严禁用于商业用途!

logo_winserver2012

Windows Server 2012 使用 SMB 共享存储的实时迁移

live_migration_with_smb_shared_storage

        前几天 gOxiA 与大家分享了“Windows Server 2012 无需共享存储的实时迁移”,当我们了解了无需共享存储的实时迁移之后,对于 Windows Server 2012 使用 SMB 共享存储的实时迁移学习和实践起来就更加容易了!还记得之前的迁移过程中有一个步骤是让我们选择要移动的虚拟机项目吗?!其中“仅移动虚拟机”这个选项就是基于共享存储的实时迁移。

5

        既然是使用共享存储的实时迁移,那么文件共享是必须具备的前提条件,需要注意的是虽然是文件共享,但是我们必须使用基于 SMB 3.0 协议的文件共享服务器,大家可参考上一篇日志“Windows Server 2012 Hyper-V over SMB”进行准备工作。

        测试环境大致说明,两台 Hyper-V 主机已经加入到活动目录(AD),并在名为 Hyper-V 的主机上启用了 SMB 共享,为了确保使用 SMB 共享存储的实时迁移正常工作,我们需要做 Kerberos 委派,与“Windows Server 2012 无需共享存储的实时迁移”中提到的委派设置相同,添加 CIFS 委派即可,否则就会 出现如下图一样的错误。

12

        由于 SMB 共享是建立在一台 Hyper-V 主机上的,所以我们需要特别设置一下共享权限,将目录权限和共享权限都添加 everyone 有完全控制权限,否则在迁移时会出现错误,如下图所示。

13

        因为本机在访问位于本机共享资源的UNC时,会使用 user 权限进行验证,如果按照“Windows Server 2012 Hyper-V over SMB”中推荐的安全规范进行设置,会导致主机访问共享失败。

        一切准备就绪后,就可以开始迁移了,在 Hyper-V 移动向导过程中选择“仅移动虚拟机”,过程就是这么简单!对于此类的实时迁移,因为虚机的磁盘文件(VHD)始终位于基于 SMB 3.0 的文件服务器上,虚机的迁移只是将运行状态从一台主机迁移到另一台主机,当然 SMB 存储的链接也会被迁移过去,但是 VHD是绝不会被移动的。

5

logo_winserver2012

Windows Server 2012 Hyper-V over SMB

        Windows Server 2012 Hyper-V over SMB,即:基于 SMB 的 Hyper-V,简单理解就是将 Hyper-V 的配置文件、虚拟磁盘(VHD)、快照等文件以共享文件存储的方式来进行存储和使用。要实现这一特性,需要使用 Windows Server 2012 的 SMB 3.0 文件共享作为 Hyper-V 的共享存储器。

        Hyper-V over SMB 的主要优势:

  • 易于设置和管理,基于文件共享方式相比较专用的存储结构和LUN,更加容易设置和管理。  
  • 较高的灵活性,Hyper-V over SMB 同样支持 Windows Server 2012 Hyper 的实时迁移技术。  
  • 减少成本投资,因为无需专用存储,所以我们可以依靠 SMB 在现有的网络上为 Hyper-V 部署存储,不仅减少了在设备上投资,而且无需专门的存储知识。

        要部署 Hyper-V over SMB,我们必须了解其必备的条件!AD(Active Directory 活动目录)作为基础架构是必须的,但是 DC 不需要运行 Windows Server 2012 系统;Hyper-V 主机必须是 Windows Server 2012 系统;对于文件服务器,除了 Windows Server 2012 以外,还可以选择支持 SMB 3.0 协议的非 Microsoft 文件服务器。常见的部署方式有三种:

hyper-v_over_smb

        主要区别就是 SMB 服务器的节点数量,对于测试和实验这类的非生产环境,我们可以使用单节点文件服务器的部署结构,对于要求高的则可以使用多节点或带有群集功能的文件服务器结构。在微软官方的手册中明确说明 Hyper-V over SMB 不支持回环配置,就是说不支持将 Hyper-V 主机节点用于存储服务器,但是在 gOxiA 测试“使用 SMB 共享存储的实时迁移”时还是仅使用了两台 Hyper-V 主机实现了 Hyper-V over SMB,不过也仅局限于测试,因为我们需要将共享存储的安全性降到最低,这样一来此种方式的部署则会显得没有任何意义,如果你当前的测试环境设备比较紧张,也可以尝试!只需要将共享目录的共享权限设置为:everyone 有完全控制的权限;同时目录安全性配置也配置为:everyone 有完全控制的权限。

        在开始 Hyper-V oever SMB 实践之前请再确认一下测试环境的准备情况,以 gOxiA 为例:一台 DC;两台 Hyper-V 主机,都加到 AD 并安装了文件共享服务。

image

        首先,使用 ADUC 创建两个组“HyperVHosts”和“HyperVAdmins”,将两台 Hyper-V 主机添加到“HyperVHosts”组,将用于管理 Hyper-V 的账号添加到“HyperVAdmins”,这样做是出于安全管理规范考虑,当然如果是测试环境,可以暂不考虑安全配置。

         然后,通过服务器管理器打开共享管理,并添加“SMB 共享 - 应用程序”类型的共享。

1

        在“共享位置”配置中,选择我们要存储虚拟机文件的卷,如:“E:”;“共享名称”设置中,在“共享名称”框中输入共享名,如:“SMB”,默认向导会在 E盘下自动创建一个 Share 目录,同时在其下创建 SMB 子目录,并将其设为共享,如:“hyper-vsmb”;“其他设置”选项中保持默认即可。

2

3

4

        之后进入权限设置,根据实际的情况,我们需要重新自定义权限,以确保 Hyper-V主机以及相关用户有适当的访问权限。

5

在“权限”选项中,首先禁用继承,并添加 Hyper-V 主机对该目录有完全控制权限,如下图所示:

6

        再切换到“共享”选项,添加 Hyper-V 主机和 Hyper-V 管理用户有完全控制的共享访问权限!注意:在两 Hyper-V 主机节点测试环境下,请将目录权限和共享权限都改为 everypne 有完全控制权限,否则在以后的 SMB 共享存储的实时迁移过程中会出现错误。

7

        完成 SMB 的设置后,我们便可以为 Hyper-V 主机上的虚机添加基于共享文件存储的虚拟磁盘(VHD),如下图所示:

8

9

10

        总结, Hyper-V over SMB 的配置操作其实非常简单,并没有特别需要设置的地方!只需牢记,文件服务器必须是支持 SMB 3.0 的文件服务器,如:Windows Server 2012;Hyper-V 主机必须是 Windows Server 2012 并加入到活动目录(AD),出于安全考虑可以单独创建安全组用于之后的权限分配。之所以要单独拿出来讲一讲,是便于学习下一篇“使用 SMB 共享存储的实时迁移”时,可以给 SMB 共享存储部分有一个参考!

        Hyper-V over SMB 部署的详细文档,可以参考:http://technet.microsoft.com/zh-cn/library/jj134187

logo_winserver2012

        在前一篇日志《详解 Windows Server 2012 无需共享存储的实时迁移》结尾中 gOxiA 提到差异磁盘在实施迁移中的问题,而本篇将简要与大家分享一下该问题的情况以及临时的解决方案。

        如果在实时迁移场景中,要迁移的虚机磁盘使用了差异磁盘类型,那么在迁移过程中便会出现问题,具体的错误提示如下图所示:

15

        “迁移目标上的虚拟机迁移操作失败。无法访问磁盘。”下面来看看这台虚机的磁盘配置情况,名为 XP 虚机的磁盘使用差异磁盘基于一个操作系统模板而创建,其父级磁盘存储位置位于其他分区目录,如下图所示:

image

        当我们执行无需共享存储的实时迁移时,向导实际上只会迁移虚机“实体”文件,即:快照、分页、配置文件以及 VHD,而使用差异磁盘类型 VHD 的父级 VHD 不会被迁移,这可能是一个 Bug,之所以说是 Bug是因为在选择要移动的项目窗体中,迁移向导并未识别当前虚机的 VHD 是一个差异磁盘,所以也就无法检测到所涉及到的父级 VHD,但是实际上我们又可以通过提前手工复制父级 VHD 的手段来解决一些问题,使之能够完成正常的迁移。

image

        不管结论如何,如果当前的实践环境使用了差异磁盘,那么请按照 gOxiA  提供的方案来解决!首先确认源主机上要迁移虚机的父级磁盘文件(VHD)存储路径,之后再目标主机同盘符下创建这个存储路径,并将父级磁盘文件(VHD)手工拷贝到目标主机对应位置,之后再去执行迁移即可顺利完成任务。

        就是这么简单!反过来想想,其实在生产环境下,通常我们不会使用差异磁盘来部署虚机。但是大部分网友在进行实践时通常都会使用差异磁盘来减少对物理磁盘的占用,实践起来也确实方便。所以在目前未经微软方面证实并给出解决方案前,暂时可以使用 gOxiA 提供的方法来解决。

分页: 1/2 第一页 1 2 下页 最后页 [ 显示模式: 摘要 | 列表 ]