Hyper-V 上的系统资源开销

与在 Hyper-V 上运行来宾操作系统相关的系统资源成本

与任何服务器虚拟化软件一样,运行支持在 Hyper-V 上运行的来宾操作系统所需的虚拟化代码会产生一定的开销。 以下列表汇总了在 Hyper-V 虚拟机上运行来宾操作系统时与特定资源关联的开销:

CPU 开销

发现与在 Hyper-V 虚拟机中运行来宾操作系统相关的 CPU 开销在 9% 到 12% 之间。 例如,在 Hyper-V 虚拟机上运行的来宾操作系统通常有 88-91% 的 CPU 资源可用于在物理硬件上运行的等效操作系统。

内存开销

对于 Hyper-V 主计算机,观察到在 Hyper-V 虚拟机上运行来宾操作系统相关的内存成本大约为 300 MB,分配给每个虚拟机的第一 GB RAM 为 32 MB,分配给每个虚拟机的每增加一 GB RAM 再增加 8 MB。 有关将内存分配给 Hyper-V 虚拟机上运行的来宾操作系统的详细信息,请参阅 清单:优化 Hyper-V 上的性能中的“优化内存性能”部分。

网络开销

观察到直接归因于在 Hyper-V 虚拟机中运行来宾操作系统的网络延迟小于 1 毫秒,来宾操作系统的网络输出队列长度通常小于 1 毫秒。 有关测量网络输出队列长度的详细信息,请参阅 清单:在 Hyper-V 上测量性能中的“测量网络性能”部分。

磁盘开销

在 Hyper-V 中使用传递磁盘功能时,发现与在 Hyper-V 虚拟机中运行来宾操作系统相关的磁盘 I/O 开销在 6% 到 8 %之间。 例如,在 Hyper-V 上运行的来宾操作系统通常有 92-94% 的磁盘 I/O 可供物理硬件上运行的等效操作系统使用,由开放源代码磁盘性能基准测试工具 IOMeter 测量。

有关使用 性能监视器 测量 Hyper-V 主机或来宾操作系统上的磁盘延迟的信息,请参阅清单:测量 Hyper-V 上的性能中的“测量磁盘 I/O 性能”部分。

本部分的其余部分提供有关BizTalk Server磁盘性能的背景信息,描述所使用的测试配置参数,并提供获得的测试结果的摘要。

在 Hyper-V 上运行BizTalk Server解决方案时的磁盘性能

BizTalk Server 是一个极其占用大量数据库的应用程序,可能需要在 SQL Server 中创建最多 13 个数据库。 BizTalk Server以极大的频率将数据保存到磁盘,此外,在 MSDTC 事务的上下文中执行此操作。 因此,数据库性能对任何BizTalk Server解决方案的整体性能至关重要。 Hyper-V 提供合成 SCSI 控制器和 IDE 筛选器驱动程序,这两者都比使用模拟 IDE 设备(如 Virtual Server 2005 提供的)提供显著的性能优势。

使用 SCSI 控制器为数据卷配置磁盘。 这将保证安装集成服务,因为只有在安装了 Hyper-V 集成服务的情况下才能安装 SCSI 控制器,而仿真 IDE 控制器在未安装 Hyper-V 集成服务的情况下可用。 使用集成服务提供的 SCSI 控制器或 IDE 筛选器驱动程序执行的磁盘 I/O 性能明显好于模拟 IDE 控制器提供的磁盘 I/O 性能。 因此,为了确保 Hyper-V 虚拟化环境中数据文件的最佳磁盘 I/O 性能,请在主机和来宾操作系统上安装集成服务,并使用合成 SCSI 控制器为数据卷配置磁盘。 对于跨多个数据驱动器的高度密集型存储 I/O 工作负载,应将每个 VHD 连接到单独的合成 SCSI 控制器,以提高整体性能。 此外,每个 VHD 应存储在单独的物理磁盘或 LUN 上。

测量 PassThrough 磁盘性能

在任何合并练习中,充分利用可用资源非常重要。 如前所述,SQL 数据卷上的存储 I/O 在BizTalk Server解决方案的整体性能中起着重要作用。 因此,作为本指南的一部分,对物理磁盘的相对性能与 Hyper-V 中直通磁盘的性能进行了测试。 Physical_SQL01 和 Virtual_SQL01 中 MessageBox 数据驱动器的相对性能是使用 IOMeter 开放源代码 工具测量的,该工具最初由 Intel Corporation 开发,现在由开源开发实验室 (OSDL) 维护。 有关 IOMeter 的详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkId=122412

下表描述了测试环境中使用的物理和虚拟硬件配置、使用的 IOMeter 配置选项、运行的测试的说明以及结果摘要。

用于测试的配置

Physical_SQL01

参数
Model HP DL580
处理器 四核处理器,四核 Intel Xeon 2.4Ghz
内存 8 GB
联网 HP NC3T3i 多功能千兆位服务器适配器
SAN 配置 直接附加 SAN 存储 (请参阅下表)

Physical_SQL01 - SAN 配置

驱动器号 说明 LUN 大小 RAID 配置
G: Data_Sys 10 RAID 0 + 1
H: Logs_Sys 10 RAID 0 + 1
I: Data_TempDb 50 RAID 0 + 1
J: Logs_TempDb 50 RAID 0 + 1
K: Data_BtsMsgBox 300 RAID 0 + 1
我: Logs_BtsMsgBox 100 RAID 0 + 1
M: MSDTC 5 RAID 0 + 1

Hyper-V_Host_SQL01

参数
Model HP DL580
处理器 四核处理器,四核 Intel Xeon 2.4Ghz
内存 32 GB
联网 Broadcom BCM5708C NetXtreme II GigEHP DL380 G5

Virtual_SQL01 - 虚拟机配置

参数
虚拟处理器 已分配 4
内存 8 GB
联网 连接到的虚拟机网络:
Broadcom BCM5708C NetXtreme II GigE
硬盘配置 IDE 控制器 - 适用于操作系统的 30 GB 固定 vhd
SCSI 控制器 - 7 个直接连接的直通 SAN LUN (请参阅下表)

Virtual_SQL01 - SAN 配置

驱动器号 说明 LUN 大小 RAID 配置
G: Data_Sys 10 RAID 0 + 1
H: Logs_Sys 10 RAID 0 + 1
I: Data_TempDb 50 RAID 0 + 1
J: Logs_TempDb 50 RAID 0 + 1
K: Data_BtsMsgBox 300 RAID 0 + 1
我: Logs_BtsMsgBox 100 RAID 0 + 1
M: MSDTC 5 RAID 0 + 1

IOMeter 配置

IOMeter 工具可以通过复制应用程序的读/写性能来用作基准和故障排除工具。 IOMeter 是一个可配置的工具,可用于模拟许多不同类型的性能。 出于此测试方案的目的,IOMeter 配置参数在经过测试的物理SQL Server计算机上以及在 Hyper-V 虚拟机中运行SQL Server的来宾操作系统上设置如下表所述:

IOMeter – 直通磁盘比较测试配置

参数
测试长度 10 分钟
加速时间 30 秒
辅助角色数 4
传输请求大小 2 KB
读/写分发 66% 读取,33% 写入
突发长度 1 个 I/O
目标驱动器 K:\

测试说明

SQL Server服务在两台服务器上都已停止,以确保 IOMeter 是针对磁盘执行 I/O 的唯一进程。 此测试中使用的 LUN 都位于专用于此实验室环境的同一 SAN 上。 测试期间未对 SAN 执行任何其他 I/O 活动,以确保结果不会偏斜。 然后,通过从每个SQL Server本地执行 IOMeter 工具来运行测试,并收集了以下性能监视器计数器:

从Virtual_SQL01和Physical_SQL01收集

  • \LogicalDisk (*) \*

  • \PhysicalDisk (*) \*

    从虚拟机 Hyper-V_02收集

  • \Hyper-V 虚拟存储设备\*

结果

直通磁盘能够达到直接连接到Physical_SQL01的 SAN LUN 吞吐量的 90% 以上。 每秒读取和写入 I/O 总数均在 10% 以内,每秒传输的总 MB 数也都在 10% 以内。 正常磁盘的读取和写入响应时间应介于 1-15 毫秒之间。 两个磁盘上的平均 I/O 响应时间都小于 4 毫秒。 物理上的随机读取响应时间为 5.4 毫秒,直通磁盘上的随机读取响应时间为 5.7 毫秒。 物理和虚拟环境中的写入响应时间都小于 0.5 毫秒。

结果表明,使用启发式 SCSI 控制器的直通磁盘可提供 90% 以上的直接连接物理磁盘的性能。 I/O 子系统性能对于高效BizTalk Server操作至关重要,它提供出色的吞吐量和响应时间,Hyper-V 是整合BizTalk Server环境的绝佳候选项。 下表汇总了在比较直通磁盘与物理磁盘的性能时观察到的磁盘测试结果:

度量 Physical_SQL01 (物理磁盘) Virtual_SQL01 (直通) 传递磁盘到物理磁盘的相对性能
每秒 I/O 总数 269.73 250.47 92.86%
每秒读取 I/O 数 180.73 167.60 92.74%
每秒写入 I/O 数 89.00 82.87 93.11%
每秒总 MB 数 0.53 0.49 92.45%
平均读取响应时间 (ms) 5.4066 5.7797 93.54%
平均写入响应时间 (ms) 0.2544 0.3716 68.42% 注意: 尽管传递磁盘的平均写入响应时间的相对性能为物理磁盘性能的 68.42%,但传递磁盘的平均写入响应时间仍远远低于 10 毫秒的既定可接受限制。
平均 I/O 响应时间 (毫秒) 3.7066 3.9904 93.89%

注意

每秒总 I/O、每秒读取 I/O、每秒写入 I/O 和每秒总 MB 的百分比值是通过将传递磁盘值除以相应的物理磁盘值来计算的。

平均读取响应时间 (ms) 、平均写入响应时间 (ms) 和平均 I/O 响应时间 (ms) 的百分比值是通过将物理磁盘值除以相应的传递磁盘值计算得出的。