安装和配置与 BizTalk Server 一起使用的 Hyper-V 虚拟机

本主题提供有关在 Hyper-V 环境中安装和配置 BizTalk Server 的建议,包括有关安装和配置 Hyper-V 虚拟机的建议,以及有关在 Hyper-V 虚拟机上安装 BizTalk Server 的建议。

安装和配置 Hyper-V

在安装 Hyper-V 之前,请参阅 Windows Server 2008 R2 Hyper-V 中的新增功能。 “Microsoft Hyper-V Server 2008 R2 入门”指南提供了有关如何安装和配置 Windows Server 2008 R2 Hyper-V 的详细信息。

Windows Server 2008 R2 文档的性能优化指南提供了有关优化 Windows Server 2008 R2 的详细信息,并包括专门重点介绍 Hyper-V 的部分。

Hyper-V 平台先决条件

Hyper-V 是可用于 64 位的服务器角色,Windows Server 2008 SP2 的所有版本仅 64 位。 此外,物理硬件必须支持硬件辅助虚拟化。 这意味着处理器必须与 Intel 虚拟化技术(Intel VT)或 AMD 虚拟化(AMD-V)技术兼容,系统 BIOS 必须支持数据执行防护(DEP),并且必须启用 DEP。 具体而言,必须启用 Intel 的 XD 位(防执行禁用位)或 AMD 的 NX 位(禁止执行位)。

注释

在系统 BIOS 中启用这些选项后,请完全关闭计算机,然后重新启动计算机以确保应用这些设置。

确定硬件要求

由于服务器整合的需求,Hyper-V 服务器往往消耗更多的 CPU 和内存,并且需要比具有可比计算负载的物理服务器更大的磁盘 I/O 带宽。 若要部署符合预期的环境,请考虑以下因素来确定服务器的确切硬件要求。

存储配置选项

存储硬件应提供足够的 I/O 带宽和存储容量,以满足你计划托管的虚拟机的当前和未来需求。 在容量使用量与可以提供的性能之间选择 Hyper-V 的存储配置时,有一个权衡。

规划存储配置时,请考虑预配的环境的要求。 生产环境、预生产环境和开发环境的要求可能大相径庭。

如果要在 Hyper-V 上部署生产 BizTalk Server 环境,性能将是一个关键要求。 为了避免在繁忙的生产系统上发生磁盘 I/O 争用,请在主机和来宾操作系统上安装集成服务,并使用合成 SCSI 控制器为数据卷配置磁盘。 对于跨多个数据驱动器的高度密集型存储 I/O 工作负荷,应将每个 VHD 附加到单独的综合 SCSI 控制器,以提高整体性能。 此外,每个 VHD 都应存储在单独的物理磁盘上。 有关使用综合 SCSI 控制器为数据卷配置磁盘的详细信息,请参阅主题清单的“优化磁盘性能”部分 :优化 Hyper-V 上的性能

通常,开发环境没有严格的性能要求,因为最大化资源利用率往往是主要优先事项。 对于开发环境,在单个物理驱动器上托管多个 VHD 文件时提供的性能通常可以接受。

Hyper-V 支持多种不同类型的存储磁盘选项。 每个存储选项都可以通过 IDE 或 SCSI 控制器附加到计算机。 使用 SCSI 控制器而非 IDE 控制器的潜在好处在于,只有在来宾虚拟机上安装了正确版本的操作系统集成组件时,它才能正常工作。 这是一种简单的方法,用于确保在客户操作系统上安装正确的操作系统集成组件。

注释

与以前版本的Microsoft虚拟化技术不同,在访问虚拟硬盘时,使用虚拟 IDE 控制器或虚拟 SCSI 控制器之间没有性能差异。

对于大量读写活动(例如托管 SQL Server 数据库),传递磁盘选项比固定虚拟硬盘(VHD)磁盘提供增量性能优势。 直通选项允许虚拟机直接访问物理磁盘,并绕过根分区中的 NTFS 文件系统,但不支持虚拟磁盘的某些功能,例如虚拟机快照和群集支持。 因此,不建议在 BizTalk 或 SQL Server 环境中使用直通磁盘功能,因为缺少的功能可以抵消边缘性能优势。

下表总结了可用 Hyper-V 存储选项的优点和缺点:

Hyper-V 存储类型 Pros 缺点 BizTalk Server 注意事项
固定大小磁盘 性能优于动态 VHD,因为在物理硬盘驱动器上创建 VHD 文件时,VHD 文件以其最大可能的大小进行初始化。

这使得更不容易产生碎片,因此,可以减少单个 I/O 被拆分为多个 I/O 的情况。 由于读取和写入不需要查找块的映射,这种虚拟硬盘(VHD)类型的 CPU 开销最低。
需要提前分配全部磁盘空间。 用于 BizTalk Server 和 SQL Server 上的操作系统卷。 重要: 必须将 Hyper-V 来宾分区的启动磁盘附加到 IDE 控制器。
动态扩展磁盘 VHD 文件的大小将增加到创建磁盘时指定的大小,因为更多的数据存储在虚拟机本身上。 这确保了对可用存储的最高效使用。 性能不如固定大小的 VHD。 这是因为磁盘中的块以零块的形式初始化,但并未占用 VHD 文件中的任何实际空间。 从此类块读取时返回的内容为零值块。 首次写入块时,虚拟化堆栈必须在 VHD 文件中为块分配空间,然后更新相应的元数据。 除此以外,每次引用现有块时,都必须在元数据中查找块映射。 这会增加读取和写入活动的数量,这反过来又会导致 CPU 使用率增加。

动态增长还要求服务器管理员监视磁盘容量,以确保在存储需求增加时有足够的磁盘存储。
性能不如固定大小的 VHD。

如果对性能没有特别要求,例如在开发环境中,这可能是操作系统硬盘的合适选项。

由于块映射查找而导致额外的 CPU 开销。
差异磁盘 这是一个父子配置关系,其中差异磁盘存储相对于基础 VHD 的所有更改,而基础 VHD 保持不变。 因此,只有与父级存在差异的块需要存储在子差异 VHD 中。 性能可能会下降,因为读取和写入需要访问固定或动态的父 VHD 以及差异磁盘。 这会增加 CPU 利用率和磁盘 I/O 开销。 BizTalk Server 的安装需要进行大量特定于计算机的配置,而子 VHD 文件可能会大幅增长,这将降低使用此磁盘配置的好处。 在这种情况下,从多个 VHD 文件中读取会导致额外的 CPU 和磁盘 I/O 开销。
传递磁盘 这些是物理磁盘,这些磁盘在根分区中设置为 脱机 ,并允许 Hyper-V 对物理磁盘具有独占的读写访问权限。 需要完全专用的磁盘或 LUN 才能将其分配给虚拟机。

物理磁盘比 VHD 文件更难在计算机之间移动。
如果 SQL Server 实例运行在 Hyper-V 上,您可以通过在 BizTalk Server 数据卷上使用直通磁盘而不是固定虚拟硬盘(VHD),来获得渐进的性能提升。

如果您在 BizTalk Server 上托管本地文件接收位置或在处理过程中将大型消息流式传输到磁盘,那么与使用固定虚拟硬盘(VHD)相比,通过使用直通磁盘可能会获得渐进式性能提升。

有关使用 Hyper-V 实现磁盘和存储的详细信息,请参阅 “实现磁盘和存储”。

网络

BizTalk Server 往往表现出较高的网络利用率。 因此,当网络性能出现问题时,请考虑为每个虚拟机分配单独的物理网卡。

配置虚拟机时,请确保使用网络适配器而不是旧版网络适配器。 旧网络适配器适用于不支持集成组件的作系统。

若要测量网络性能,请使用主机作系统上的 “\网络接口\字节总数/秒”\网络接口\\输出队列长度 性能监视器计数器来度量网卡的整体性能。 如果物理网络已被标识为忙碌,请使用主机操作系统上的“\Hyper-V 虚拟网络适配器 (*)\Bytes/sec” 计数器来标识哪些虚拟机网络适配器正在生成高负载。

有关在 Hyper-V 环境中评估网络性能的详细信息,请参阅清单的“测量网络性能”部分:测量 Hyper-V 上的性能

中央处理器

Hyper-V 支持不同来宾操作系统的不同虚拟处理器数量,汇总如下表。 若要为 BizTalk Server 分配最大 CPU 资源,请在 Windows Server 2008 R2 来宾作系统上安装它,该作系统支持每个虚拟机的四个虚拟处理器。

将来宾操作系统中的虚拟处理器分配为 1-1 的比例,以使用主机操作系统可用的逻辑处理器,从而防止过多的上下文切换。 处理器之间的上下文切换过多将导致性能下降。 有关将虚拟处理器分配到逻辑处理器的详细信息,请参阅主题清单的“优化处理器性能”部分 :优化 Hyper-V 上的性能

“\Hyper-V 超管程序逻辑处理单元(_Total)\% 总运行时间”性能监视器计数器衡量 Hyper-V 主机上所有来宾计算机和超管程序的总体资源利用率。 如果此值超过 90%,则服务器以最大容量运行;在此方案中向虚拟机分配其他虚拟处理器可能会降低整体系统性能,应避免这样做。 有关使用 HyperV 性能计数器的更多详细信息,请参阅本指南的“ 在 Hyper-V 上评估 BizTalk Server 性能 ”部分。

操作系统 虚拟处理器限制
Windows Server 2008 R2。 Windows Server 2008 R2 的所有版本仅 64 位。 4
Windows Server 2008 SP2 64 位 4
Windows Server 2008 SP2 32 位 4
Windows 7 64 位 4
Windows 7 32 位 4
Windows Vista 64 位 2
Windows Vista 32 位 2

注释

关于 Hyper-V 上支持的来宾操作系统的详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkID=118347

内存

物理服务器需要足够的内存,用于支持根分区和服务器上运行的任何虚拟机。 在测试期间,至少分配了 2GB 内存到根分区,并监视 内存/可用 Mbytes 性能监视器计数器,以确保没有遇到内存压力。

应分配给 BizTalk Server 环境中每个虚拟机的内存量取决于要执行的工作负荷和处理类型。 有许多因素会影响 BizTalk Server 的内存要求,包括:

  • 处理的消息大小

  • 消息的吞吐量

  • 编排设计

  • 管道处理

  • 计划在虚拟机中运行的 BizTalk 主机数

    有关影响内存的因素的综合列表,请参阅 BizTalk Server 性能优化指南的“性能因素”部分。

    从每台虚拟机及其根分区内主动监视内存/可用 Mbytes的计数器。 [c0]Checklist: Measuring Performance on Hyper-V 下列准则应用于确定虚拟机和根分区是否有足够的可用物理内存:

  • 可用内存达到或超过 50% = 健康状态

  • 可用内存的 25% 可用,进行监视

  • 可用内存 10% = 警告

  • 可用可用内存不足 5% = 严重,性能将受到不利影响

选择根操作系统的版本

Hyper-V 支持在服务器核心安装和 Windows Server 2008 R2 的完整安装中使用。 若要最大程度地减少根分区的开销,请在 Windows Server 2008 R2 的服务器核心安装上安装 Hyper-V。 Hyper-V 角色可以通过不同系统上的 Hyper-V 管理器进行远程管理。 服务器核心占用较小的磁盘和内存空间,因此给虚拟机留下了更多可用资源。 有关适用于 Windows Server 2008 R2 的服务器核心安装选项的详细信息,请参阅 适用于 Windows Server 2008 R2 的服务器核心版。

如果选择使用 Windows Server 2008 R2 的完整安装,请确保根分区仅专用于 Hyper-V 服务器角色。 运行其他服务器角色会消耗内存、磁盘、处理器和网络资源,并降低性能。

创建虚拟机

安装并配置 Hyper-V 服务器角色后,需要创建虚拟机。 在执行此作之前,回答以下问题非常有用:

  • 将使用哪些存储配置?

  • 来宾操作系统支持多少个虚拟处理器?

  • 将向虚拟机分配多少内存?

  • 可以在 Hyper-V 服务器上运行多少个虚拟机?

  • 我将如何把操作系统安装到计算机上?

    有关如何创建和配置虚拟机的详细信息,请参阅 “创建虚拟机”。

安装基本操作系统

Hyper-V 中提供了可用于物理服务器安装的所有选项。 可启动 CD/DVD-ROM 介质或 ISO 映像可用于执行手动安装。 如果虚拟机配置了连接到与托管 ISO 映像的服务器相同的网络的网络适配器,则可以执行网络安装。

重要

无论选择哪种安装方法,出于性能原因,都必须为 Hyper-V 下运行的每个虚拟机安装作系统集成组件。 集成组件提供一组驱动程序和服务,使来宾计算机能够使用合成设备执行任务。 合成设备避免需要模拟设备,这些设备在不支持集成组件的作系统上使用。 与合成设备相比,模拟设备会产生更大的系统开销。

若要安装和配置此实验室中使用的计算机,请在固定大小的 VHD 上创建初始基础映像。 这涉及到手动安装 Windows Server 2008 R2。 安装所有适当的更新后,基础虚拟机使用随 Windows Server 2008 一起安装的 sysprep 实用工具映像化,%WINDIR%\system32\sysprep 目录。

注释

在服务器上安装和配置 BizTalk Server 后运行 Sysprep 可以通过使用 BizTalk Server 提供的 Sysprep 应答文件和脚本来完成。 这些示例脚本旨在与安装在 Windows Server 2008 R2 上的 BizTalk Server 配合使用。 有关详细信息,请参阅 BizTalk Server 联机文档。

安装和配置 BizTalk Server