安装和配置用于 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 Virtualization Technology (Intel VT) 或 AMD Virtualization (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 上的性能的“优化磁盘性能”部分。
通常,开发环境没有严格的性能要求,因为最大化资源利用率往往是main优先事项。 对于开发环境,在单个物理驱动器上托管多个 VHD 文件时提供的性能通常可以接受。
Hyper-V 支持多种不同类型的存储磁盘选项。 每个存储选项都可以通过 IDE 或 SCSI 控制器附加到计算机。 对 IDE 控制器使用 SCSI 控制器的潜在好处是,只有在来宾虚拟机上安装正确版本的操作系统集成组件时,它才能正常工作。 这是一种简单的方法,可确保在来宾操作系统上安装正确的操作系统集成组件。
注意
与以前版本的 Microsoft 虚拟化技术不同,在访问虚拟硬盘时,使用虚拟 IDE 控制器或虚拟 SCSI 控制器之间没有性能差异。
对于大量读写活动(例如托管SQL Server数据库),传递磁盘选项比固定虚拟硬盘驱动器 (VHD) 磁盘具有增量性能优势。 传递选项允许虚拟机直接访问物理磁盘,并绕过根分区中的 NTFS 文件系统,但不支持虚拟磁盘的某些功能,例如虚拟机快照和聚类分析支持。 因此,不建议在 BizTalk 或 SQL Server 环境中使用直通磁盘功能,因为边缘性能优势比缺少的功能所抵消。
下表总结了可用 Hyper-V 存储选项的优缺点:。
Hyper-V 存储类型 | 优点 | 缺点 | BizTalk Server注意事项 |
---|---|---|---|
固定大小的磁盘 | 性能优于动态 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 上运行,则可以通过使用直通磁盘(使用固定虚拟硬盘 (VHD) BizTalk Server数据卷)来获得增量性能改进。 如果要在BizTalk Server上托管本地文件接收位置或在处理过程中将大型消息流式传输到磁盘,则与使用固定虚拟硬盘 (VHD) 时,可以使用直通磁盘获得增量性能改进。 |
有关使用 Hyper-V 实现磁盘和存储的详细信息,请参阅 实现磁盘和存储。
网络
BizTalk Server往往表现出较高的网络利用率。 因此,当网络性能成为问题时,请考虑为每个虚拟机分配单独的物理网络卡。
配置虚拟机时,请确保使用网络适配器而不是旧版网络适配器。 旧版网络适配器适用于不支持集成组件的操作系统。
若要度量网络性能,请使用主机操作系统上的“\网络接口\字节总数/秒”和\网络接口 (*) \输出队列长度性能监视器计数器来度量网络卡的总体性能。 如果已确定物理网络正忙,请使用主机操作系统上的“\Hyper-V 虚拟网络适配器 (*) \Bytes/sec”计数器来确定哪个虚拟机网络适配器 () 正在生成高负载。
有关在 Hyper-V 环境中评估网络性能的详细信息,请参阅清单:衡量 Hyper-V 上的性能的度量网络性能部分。
CPU
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 |
64 位 Windows Vista | 2 |
Windows Vista 32 位 | 2 |
注意
有关 Hyper-V 上支持的来宾操作系统的详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkID=118347。
内存
物理服务器需要足够的内存来存储根分区和服务器上运行的任何虚拟机。 在测试期间,至少为根分区分配了 2GB 内存,并监视 内存/可用 Mb 性能 监视器计数器,以确保不会遇到内存压力。
应分配给BizTalk Server环境中每个虚拟机的内存量取决于要执行的工作负荷和处理类型。 影响BizTalk Server内存要求的因素有很多,包括:
处理的消息大小
消息吞吐量
业务流程设计
管道处理
计划在虚拟机中运行的 BizTalk 主机数
有关影响内存的因素的完整列表,请参阅BizTalk Server性能优化指南中的“性能因素”部分。
从每个虚拟机和根分区本身中主动监视 内存/可用 Mbytes 计数器。 应使用 清单:衡量 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。 安装所有适当的更新后,在 %WINDIR%\system32\sysprep 目录中使用 Windows Server 2008 安装的 sysprep 实用工具对基本虚拟机进行映像。
注意
在服务器上安装和配置BizTalk Server后运行 Sysprep 可以通过使用随 BizTalk Server 提供的 Sysprep 应答文件和脚本来完成。 这些示例脚本设计用于 Windows Server 2008 R2 上安装的BizTalk Server。 有关详细信息,请参阅BizTalk Server联机文档。
安装和配置 BizTalk Server
若要最大程度地减少安装虚拟机所需的时间,请创建一个仅包含来宾操作系统和软件先决条件的基本映像。 使用 SysPrep 准备 VHD 映像以供重复使用,然后基于此 VHD (VM) 所有虚拟机。
注意
在服务器上安装并设置BizTalk Server后,可以使用 SysPrep 应答文件和随 BizTalk Server 提供的脚本针对基础映像运行 SysPrep。 这些示例脚本旨在与 BizTalk Server 一起使用,并安装在 Windows Server 2008 R2 上。 有关详细信息,请参阅 Sysprep a BizTalk Server VHD (BizTalk Server 示例) 、无人参与的 Windows 安装程序参考和无人参与的 Windows 安装程序参考。
遵循“安装和配置BizTalk Server...”中的建议 主题清单:在 Hyper-V 上安装和配置BizTalk Server的最佳做法部分。
有关 Hyper-V 环境中BizTalk Server和SQL Server的支持性的信息,请参阅附录 C:BizTalk Server和SQL Server Hyper-V 可支持性。