NetApp Tech OnTap
     

“实战”经验:
部署 Hyper-V R2 和 NetApp

在介绍虚拟化之前,我们先了解一下 Avanade 的企业背景。Avanade 提供与 Microsoft® 技术的见解、创新和专业知识相结合以帮助客户实现目标的业务技术服务。公司通过其全球顾问网络来应用 Microsoft 专业知识。这意味着我们经常早于其他同行采用新技术。

对于我的团队之一 - Avanade 的动态计算服务 (DCS) 尤其是如此。DCS 是一个针对开发、压力测试和概念验证的全球平台,用于支持内部工作和客户项目。Avanade 推荐的客户和合作伙伴解决方案以及配置通常就是我们工作的成果。我想根据我们使用 Microsoft 虚拟技术(Microsoft Windows Server® 2008 R2 [具有 Hyper-V™] 和 Microsoft System Center 套件)和 NetApp® 共享存储的最新经验来提供一些指导。本文包括以下内容:

  • 关于我们当前的虚拟服务器环境的信息
  • 我们移至 Hyper-V R2 的经验
  • 以性能为目标的构建
  • 针对实时迁移的计划
  • 针对群集共享卷 (CSV) 的存储提示
  • 服务器和存储管理以及虚拟机 (VM) 自助门户

当前虚拟服务器环境

说到运行“动态”计算服务环境时,我用一个示例来说明要表达的意思。当在 Avanade 的内部生产环境中有新的配置请求或更改出现时,我们的团队可能要执行 10 或 20 个请求或更改。我们可能要并行运行 30 至 40 个不同的项目。我们的客户几乎运行着所有企业应用程序,因此,我们的 VM 环境也支持几乎所有可用的 Microsoft 和非 Microsoft 应用程序。我们当前的 Microsoft 虚拟环境包括:

虚拟机

  • 350 台虚拟机:
    • 225 台在 Windows Server 2008 Hyper-V R2 上运行的 VM
    • 125 台在 Microsoft Virtual Server 2005 R2 上运行的 VM
  • 计划在未来两个月内在 Hyper-V R2 上再添加 200 至 300 台 VM

服务器

  • 8 台 Sun Fire 四核服务器,每台服务器平均拥有 100GB RAM

存储

  • NetApp FAS3170C

我们通过 Microsoft System Center Virtual Machine Manager 2008 R2 和 System Center Operations Manager 2007 R2 管理环境。图 1 显示了该架构的概念视图以及基础 NetApp 聚合(在中心用浅蓝色显示)、卷(用灰色显示)和 LUN(用白色显示)的布局。在本文后面我们将详细讨论存储配置。

图 1) Avanade DCS Hyper-V R2 环境。

我们在移至 Hyper-V R2 方面的经验

我们一直期待着 Hyper-V R2 的高可用性功能,如实时迁移和群集共享卷。它们是我想看到的两项重要功能。我早已决定,当 R2 可用时,我们就会迅速地移至 R2。在获得 R2 的 24 小时内,我们就建立了第一个运行有虚拟机的群集。两周后,我们将整个 Hyper-V R1 系统以及数百个 VM 移至了 R2。

R2 迁移经历真是太棒了。每天使用 CSV 和实时迁移已给我们的运行带来了很大的变化。自从移至 R2 后,最大的好处包括:

  • 维护更轻松,维护量减少。通过实时迁移,我们可以使环境中的所有系统都具有高可用性。现在,实时迁移使我们可以在中午进行硬件维护,并且不会影响生产,而不必等到晚上或周末再进行维护。
  • 简化的存储管理。在 NetApp 系统上使用群集共享卷免去了我们使用 R1 时进行的许多活动,如分配 GUID 或必须在专用 LUN 上运行 VM。取而代之的是,我们可以在一个较大的 NetApp 存储池中放置虚拟服务器,并让各种事项更多地自行解决。
  • 更好的服务级别。通过实时迁移,我们可以平等地对待所有 Hyper-V VM。我们现在极少需要向客户提出停机的要求。实时迁移使我们可以在将内容移至其他节点的同时允许客户系统保持运作。
  • 更好的性能。通过使用 CSV,我们可以控制 NetApp 及其轴的功能,以获得最佳性能。其他 Hyper-V R2 功能也有助于提高性能。R2 环境现在比 R1 环境运行速度快 20% 到 30%(在下一部分中将详细讨论性能)。


  • 早在 Hyper-V 还处于测试版之时,我们就在 Hyper-V 上进行大规模的 Microsoft 应用程序的性能测试,一直到现在。应用程序之间有明显的性能差异,并且精心的存储设计仍是必不可少的。但到目前为止,我们看到的性能非常出色。例如,通过 NetApp,我们在 Hyper-V 上成功运行了每秒有 5,000 多项事务的 Microsoft SQL Server®。(对于高事务负载,指定专门用于连接至托管 SQL Server 的虚拟机的 iSCSI 连接可以确保虚拟机能获得所需的 I/O。

以性能为目标的构建

我们看到在 Hyper-V R2 环境中性能提高了 20% 到 30%,有多项因素促成了此提高。Hyper-V 自身的性能有提高。此外,在最近移至新公司总部的过程中,我们升级了许多组件,包括:

  • 升级的网络设备。我们为 NetApp FAS3170 设置了 10Gbs 以太网连接,并为所有服务器设置了新的非阻塞连接。此新网络为 iSCSI 存储流量以及实时迁移的 I/O 密集型需求提供了充足的性能。
  • 服务器整合。我们原来使用 15 至 20 台较小的服务器支持 Hyper-V R1,而现在使用 8 台较大的加强型服务器支持 R2。
  • 存储升级。我们部署了 NetApp FAS3170 系统以及 NetApp 性能加速模块 (PAM)。这使我们可以加快 I/O 吞吐并显著降低磁盘延迟。我们现在可以将更多的磁盘轴应用于 I/O,还使用 PAM 缓存来加快随机 I/O 请求的处理。

针对实时迁移的计划

为支持实时迁移,有些计划是必不可少的。本部分属于一个较大的讨论范畴,其内容主要围绕您的网络设计以及为适当支持不同的流量类型,服务器所需的物理网络适配器的数量。 MicrosoftNetApp 在该主题上(特定于 Hyper-V)都提供了很好的指导。以下是一些提示:

  • 设计原则 1。像对待光纤通道环境一样认真对待 iSCSI 存储网络。这意味着花费时间来计划专用网络和网络适配器(如 VLAN 和子网),以处理与存储有关的流量。如果这样做,结果很可能会非常好。否则,您肯定会遇到棘手的问题。
  • 设计原则 2。该原则与第一个原则密切配合。经验法则是确保您不会因偏爱一个网络链路而弃用另一个网络链路。如果您使用 iSCSI,这意味着将实时迁移流量与其他存储和最终用户 VM 流量分离。通过将实时迁移流量分配给属于它的专用网络适配器来进行分离。还意味着您需要监控网络基础架构来确认链接没有超负荷。(有关建议用于 Hyper-V 的专用网络适配器的数量的更多信息,请查看边栏。)

实时迁移在网络中绝对占据统治地位。将虚拟机从一个节点实时迁移至另一个节点时,我们看到在迁移期间网络链接的利用率几乎达到 100%。中继的千兆 NIC(甚至一千兆 NIC)通常很难达到饱和,但由于实时迁移的许多活动都涉及将 RAM 的内容从一个系统复制到另一个系统,因此极高的网络利用率才规范。此类负载给服务器和网络基础架构带来了新级别的要求。它还会很快地暴露弱点。

我们选择将 iSCSI 流量分至两个单独、专用的链接(请参见图 1)。现在,在实时迁移期间,我们确信存储通信不会受到影响。

针对群集共享卷的存储提示

群集共享卷是 R2 中的另一个新功能,简化了存储配置,并且允许通过 Hyper-V 更好地支持 Windows Server 2008 R2 的故障转移群集。先前,在 Hyper-V R1 中存在设计限制,需要创建专用 LUN,才能支持高可用性的 VM。这意味着您或者需要增加存储复杂性以获得可用性,或者要牺牲可用性来降低存储复杂性。通过 R2,CSV 允许您在同一个 LUN 上放置许多 VM,同时还使其具有高可用性。

Microsoft 高级程序经理 Steve Ekren 在他的 TechEd 2009 课程中很好地说明了此不同之处。图 2 和图 3 中引用了他的一部分讨论内容。

来源:版权所有 Microsoft,TechEd 2009
图 2) LUN 至 VM 的映射(在移至 R2 之前)。

来源:版权所有 Microsoft,TechEd 2009
图 3) LUN 至 VM 的映射(在移至 R2 之后)。

但是,群集共享卷会为存储系统设计者同时带来好消息和坏消息。

以下是坏消息:CSV 需要一个可以在所有群集节点之间共享的存储架构。如果多个 VM 崩溃,则会加重存储卷上的 I/O 负载。这意味着您需要确保物理存储系统的设计考虑到了额外的负载。否则,会出现糟糕的情况,包括性能降低、应用程序超时,甚至可能出现系统崩溃或数据损坏。

以下是好消息:使用精心设计的合适的存储系统可以解决这些问题。通过 NetApp,我看到了在该领域的很大区别。我们在 NetApp 与 Microsoft Windows Server 2008 R2(带有 Hyper-V)的集成方面有很好的体验。将 NetApp 存储与群集 Hyper-V 主机相结合非常简单,比与许多其他工具相结合要容易得多。

由于 NetApp 与 Microsoft 的紧密集成,因此,通过 NetApp 支持多服务器访问很容易。多协议支持以及通过 SnapDrive® 进行直接存储集成等功能使构建 Windows® 群集变得十分简单。

对我们来说,关注负载如何在 NetApp 聚合和轴之间平衡非常重要。图 4 和图 5 显示了配置的详细
信息。

图 4) NetApp 聚合的布局。

图 5) 每个聚合上的 NetApp 卷和 LUN 的布局。

以下是通过 CSV 进行存储设计的更多提示:

  • 充分利用 NetApp 技术。我们已充分利用了 NetApp 技术(尤其是 NetApp 聚合)。通过这样做,我们可以将存储与服务器一起虚拟化。NetApp 在使此类型的存储虚拟技术易于使用方面做得非常好。
  • 打破限制。多年来,存储行业一直在争论将工作量分至不同磁盘轴的价值。如果利用 NetApp 聚合,许多原则并不一定适用。我们可以在几个较大的 NetApp 聚合上设计一些较大的 LUN(或 CSV)。我鼓励大家考虑合并存储来控制聚合的功能。

    在我们的案例中,最大的聚合之一包括大约 35 个物理磁盘轴。这允许所有这些磁盘驱动器一起工作,共同提供在 CSV 之间共享的聚合性能。NetApp 使合并这些单个磁盘驱动器的功能以支持更多平均 I/O 负载变得非常简单。NetApp 还使以后修改配置以支持更多负载(如有必要)变得十分简单。

  • 将 CSV 与 NetApp 重复数据删除相结合。自从为群集共享卷重新架构 NetApp 聚合和卷以来,我们注意到通过使用 NetApp 重复数据删除,在容量节省方面有了较大的改进。我们看到,在整个虚拟存储基础架构中,平均重复数据删除比例达到 50%。考虑到在进行重复数据删除之前,VM 环境的大小大约为 7 至 8TB,3 至 4TB 显然是很大的节省,从而支持添加更多 VM 的计划。我们将 NetApp 系统与 CSV 一起使用是一种恰到好处的结合,使重复数据删除可以真正地发挥作用。

结论

我们与 Hyper-V 和 NetApp 长期以来的合作一直非常愉快。接下来,我们将探索 NetApp 针对 Microsoft 虚拟的其他集成的解决方案。包括通过 NetApp SnapManager® for Hyper-V 加强数据保护的前景。对于通过 Microsoft System Center Operations Manager 更加集中化地监控 NetApp 存储,我们还将关注 NetApp ApplianceWatch™ PRO 2.0 的使用。

我们还一直在与 NetApp 进行合作,开发一个允许某人要求在短期内(如三周)使用虚拟机的内部自助门户。该门户利用 NetApp FlexClone® 技术来快速配置虚拟环境。我们将通过 Microsoft Virtual Machine Manager 和 Microsoft PowerShell™ 脚本编写来进行实施。

 

 获得关于 Hyper-V 的意见?

请在 NetApp 社区中在线提出问题,交流观点,分享想法。

Patrick Cimprich
副总裁和首席架构师
全球技术和解决方案

Patrick Cimprich 在大规模应用程序和存储基础架构设计方面拥有 19 年的 IT 经验。在 Avanade,Patrick 是数据中心解决方案的全球领导,同时还负责 Avanade 动态计算服务(一个蓬勃发展的全球开发、测试和托管平台,通常用作推荐的客户和合作伙伴配置的主要实验场地)。

 
Explore