BizTalk Hyper-V Virtualization Guidance Ewan Fairweather Program Manager Clint Huffman Premier Field Engineer Session Objectives • • • Share the best practices for using BizTalk with Hyper-V Provide guidance on the performance characteristics of BizTalk on Hyper-V Introduce the BizTalk Server 2006 R2 Hyper-V Guide Session Agenda − Hyper-V Overview • BizTalk Server Virtualization Assessment • − Scenarios & Results − Hyper-V Performance Analysis − Lessons Learned Reference guidance − BizTalk Server 2006 R2 Hyper-V Guide Hyper-V Architecture 1 Root Partition 3 Child Partition Child Partition Server Server 2 VSPs VSPs I/O Stack I/O Stack 4 Drivers VMBus 5 • VSCs Shared Memory OS Kernel Enlightenments (WS08+) VSCs VMBus VMBus Hypervisor Devices • I/O Stack Processors Memory VHD - single file sits on root NTFS volume − Fixed, Dynamic, Differencing Pass-through – exclusive disk access to guest Differences Hyper-V vs. Virtual Server 2005 Virtualization Feature Virtual Server 2005 R2 Hyper-V 32-bit virtual machines Yes Yes 64-bit virtual machines No Yes 1 Multi-processor virtual machines No Yes, 4 core VMs 2 Virtual Machine Memory Support 3.6GB per VM 64GB per VM 3 Managed by System Center Virtual Machine Manager Yes Yes Support for Windows Clustering Yes Services Yes Host side backup support (VSS) Yes Yes Scriptable / Extensible Yes, COM Yes, WMI User Interface Web Interface MMC 3.0 Interface BizTalk Virtualization Licensing • • • • License required for each physical processor License for each virtual processor in each virtual operating system Exception: BizTalk Enterprise Edition − License for the number of physical processors in the server − Enables unlimited virtual processors http://www.microsoft.com/biztalk/en/us/prici ng-licensing-faq.aspx Hyper-V Supportability Overview • • • • BizTalk Server 2004/2006/2006 R2 fully supported − http://support.microsoft.com/kb/842301 SQL Server 2005 provides commercially reasonable support BizTalk Server 2009 will provide full HyperV support SQL Server 2008 will provide full Hyper-V support Hyper-V Performance Overview • • • • Our results indicate that performance is good Virtual processors scale well Storage design should be considered carefully Hyper-V provides more pieces to monitor: − Performance counters − xPerf/ETW should be used for performance analysis Session Agenda − Hyper-V Overview • BizTalk Server Virtualization Assessment − Scenarios & Results • − Hyper-V Performance Analysis − Lessons Learned Reference guidance − BizTalk Server 2006 R2 Hyper-V Guide Scenario 1: Physical to Virtual Comparison 1 2 Scenario 1: Results 2 1 4 3 • • Throughput 75% in Virtual environment Latency 20-30% less in Virtual environment Scenario 2: Multiple VMs 1 2 Scenario 2: Results 4 3 2 1 • • Throughput 75% in virtual environment Ratio of logical to virtual processors affects throughput Scenario 3: Virtual SQL 1 2 Scenario 3: Results 2 1 • • Almost identical performance Virtual processors scale for SQL Scenario 4: Consolidated 1 2 3 Scenario 4: Results 1 2 3 Scenario 4: Results (cont.) 1 2 3 Scenario 4: Results (cont.) • • • • • ~80% of the throughput relative to when the virtual BizTalk Server and SQL Server machines were hosted on separate hardware ~10% overhead of running both groups simultaneously Networking performs well Running two groups only placed ~40% CPU load on the physical server Adding additional virtual machines increases load on Hyper-Visor Session Agenda − Hyper-V Overview • BizTalk Server Virtualization Assessment − Scenarios & Results − Hyper-V Performance Analysis • − Lessons Learned Reference guidance − BizTalk Server 2006 R2 Hyper-V Guide Hyper-V Processor Utilization % Processor Time performance counters on the root partition are not accurate. Use the % Guest Run Time and % Total Run Time counters Root Partition (physical host) 3 Virtual BizTalk % Processor Time 100% Root Partition % Processor Time 1 100% 2% 2 3% 90% 90% 90% \Hyper-V Hypervisor Logical Processor(*)\% Guest Run Time % Processor Time 100% 4% 4 90% Virtual BizTalk 5% 100% 5 95% 95% 95% 95% \Hyper-V Hypervisor Logical Processor(*)\% Total Run Time Hyper-V Performance Counters Clint Huffman Premier Field Engineer (PFE) Premier Field Engineering (PFE) 1 to 1 Mapping 1 Overload Scenario BizTalk Server BizTalk Server Virtual Processors Virtual Processors 0 0 2 BizTalk Server BizTalk Server Virtual Processors Virtual Processors 0 0 1 1 BizTalk Server BizTalk Server BizTalk Server BizTalk Server Virtual Processors Virtual Processors Virtual Processors Virtual Processors 0 0 0 1 2 Logical Processors 0 3 0 1 0 1 2 Logical Processors 1 3 Session Agenda − Hyper-V Overview • BizTalk Server Virtualization Assessment − Scenarios & Results − Hyper-V Performance Analysis • − Lessons Learned Reference guidance − BizTalk Server 2006 R2 Hyper-V Guide Processor Lessons Learned • • % Processor Time on the Host does not measure physical processors For high processor usage: − Most Efficient: 1:1 Logical to Virtual Processors − Better Performing, Less Efficient: 2:1 Logical to Virtual Mapping of Processors Processor Lessons Learned • • • To measure Guest processors: − \Hyper-V Hypervisor Virtual Processor(*)\% Guest Run Time − \Hyper-V Hypervisor Virtual Processor(*)\% Total Run Time To measure Physical processors: − \Hyper-V Hypervisor Logical Processor(*)\% Total Run Time To measure Host processors: − \Hyper-V Hypervisor Root Virtual Processor(*)\% Total Run Time Disk Lessons Learned • • For VHDs use: − − − − <RootPartition>\Logical Disk(*)\Avg. sec/Read <RootPartition>\Logical Disk(*)\Avg. sec/Write <Guest>\Logical Disk(*)\Avg. sec/Read <Guest>\Logical Disk(*)\Avg. sec/Write For PassThrough Disk Analysis use: − “Hyper-V Virtual Storage Device” counters − xPerf Tool http://msdn.microsoft.com/enus/library/dd871252.aspx Pass-Through Disk Perf Measurement Physical SQL Physical Disk Virtual SQL Pass-through Disk Difference Transfers/Sec 269.73 250.47 7%* Transfers (reads/writes) per second Virtual SQL PassThrough Disk Transfers (reads/writes) per second Physical SQL Physical Disk 0 100 200 300 * Other factors such as SAN performance could have been a factor Disk Lessons Learned • Use PassThrough disks for high disk I/O: − − − − BizTalk MessageBox Database BizTalk Tracking Database BizTalk File Adapter %temp directory if BizTalk is streaming large files Memory Lessons Learned • • • Virtual machines require non-paged memory (physical memory) Ensure you have enough physical memory on both the host and guest computers Use Traditional Counters: − − − − <RootPartition>\Memory\Available Mbytes <Guest>\Memory\Available Mbytes <RootPartition>\Memory\Pages/sec <Guest>\Memory\Pages/sec Network Lessons Learned • • For high network I/O: − Use a 1:1 mapping of physical to virtual network adapters For measuring network adapters use: − <RootPartition>\Network Interface − Bytes Total Per Second − Output Queue Length − <RootPartition>\Hyper-V Virtual Network Adapter − Bytes Per Second − <RootPartition>\Hyper-V Virtual Switch Perf Analysis Tools • • • • Performance Monitor Performance Analysis of Logs (PAL) tool − http://www.codeplex.com/PAL xPerf from the Win2008 SDK − http://www.microsoft.com/whdc/system/sysperf/ perftools.mspx IOMeter − http://www.iometer.org/ Perf Analysis Tools (cont) • • Visual Studio Command Line Profiler − http://go.microsoft.com/fwlink/?LinkId=105797 BizTalk Artifact Duration Aggregations − http://blogs.technet.com/clint_huffman/archive/ 2008/05/06/biztalk-artifact-durationaggregations.aspx BizTalk Hyper-V Summary • • • • Fundamental BizTalk design decisions have not changed Performance or efficiency driven − To maximize performance use Fixed VHD not Dynamic or Differencing disks − >1:1 Virtual:Logical processors can degrade performance Pass-through for High I/O − BizTalk – file receive locations, %temp folder − SQL Server – System and User Databases Hyper-V Planning and Deployment Guide − http://download.microsoft.com/download/8/1/5/81556693-1f05494a-8d45-cdeeb6d735e0/HyperV_Deploy.doc Where to learn more • • Tony Voellm’s Blog - go here first! − http://blogs.msdn.com/tvoellm Windows virtualization discussion (virttalk) Session Agenda − Hyper-V Overview • BizTalk Server Virtualization Assessment • − Scenarios & Results − Hyper-V Performance Analysis − Lessons Learned Reference guidance − BizTalk Server 2006 R2 Hyper-V Guide BizTalk Server 2006 R2 Hyper-V Guide MSDN: http://msdn.microsoft.com/enus/library/cc768518.aspx Key Takeaways • • • • • • BizTalk and SQL perform well on Hyper-V BizTalk Server 2006 R2/2009 is supported on Hyper-V SQL 2005 currently provides commercially reasonable support SQL 2008 will fully support Hyper-V BizTalk Server 2009 will enable 4 VP support Fully assess the risks/benefits before deploying BizTalk on Hyper-V © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Test Application Overview