SharePoint 2010 Virtualization


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

SharePoint 2010 Virtualization

  1. 1. Virtualization of SharePoint 2010 Farm Architecture<br />Michael Noel<br />Partner<br />Convergent Computing<br />1<br />
  2. 2. Michael Noel<br />Author of SAMS Publishing titles “SharePoint 2007 Unleashed,” the upcoming “SharePoint 2010 Unleashed,” “SharePoint 2003 Unleashed”, “Teach Yourself SharePoint 2003 in 10 Minutes,” “Windows Server 2008 R2 Unleashed,” “Exchange Server 2010 Unleashed”, “ISA Server 2006 Unleashed”, and many other titles .<br />Partner at Convergent Computing ( / +1(510)444-5700) – San Francisco Bay Area based Infrastructure/Security specialists for SharePoint, AD, Exchange, Security<br />
  3. 3. What we will cover<br />Why Virtualize?<br />SharePoint 2010 Virtualization Guidelines and Models<br />Virtualization of SharePoint Roles<br />Virtualization of SQL Server<br />Memory Limitations and Guidelines for Guests<br />Performance Monitoring for Virtual Machines<br />Microsoft Virtualization Software Options<br />Windows Server 2008 Hyper-V<br />System Center Virtual Machine Manager 2008<br />Third Party Virtualization Product Support<br />Microsoft Licensing for Virtual Servers<br />
  4. 4. Why Virtualize?<br />
  5. 5. Why Virtualize?<br />
  6. 6. SharePoint 2010 Virtualization Guidelines<br />
  7. 7. Virtual Host Guidelines<br />
  8. 8. SP2010 Role Virtualization<br />
  9. 9. SharePoint Guest Guidelines<br />
  10. 10. SharePoint Role VM Guidelines<br />
  11. 11. SQL Server VM Guidelines<br />
  12. 12. SharePoint 2010 Virtualized Farm Architecture<br />
  13. 13. Virtualized Farm ArchitectureCost-effective Virtual Environment / No HA<br /><ul><li>Allows Organizations that wouldn’t normally be able to have a test environment to run one
  14. 14. Allows for separation of the database role onto a dedicated server
  15. 15. Can be more easily scaled out in the future</li></li></ul><li>Virtualized Farm ArchitectureCost-effective Virtual Environment / No HA<br />
  16. 16. Virtualized Farm ArchitectureHighly Available Farm with only Two Servers<br /><ul><li>High-Availability across Hosts
  17. 17. All components Virtualized
  18. 18. Uses only two Windows Ent Edition Licenses</li></li></ul><li>Virtualized Farm ArchitectureHighly Available Farm with only Two Servers<br />
  19. 19. Virtualized Farm ArchitectureBest Practice Virtual/Physical with HA/Perf<br /><ul><li>Highest transaction servers are physical
  20. 20. Multiple farm support, with DBs for all farms on the SQL cluster</li></li></ul><li>Virtualized Farm ArchitectureLarge Virtual Farms<br />
  21. 21. NUMA Memory Guidelines<br />
  22. 22. NUMA Memory Limitations and Guidelines<br />Non-Uniform Memory Access (NUMA) Boundaries exist at the hardware level.<br />Virtual guests that are allocated more memory than exist within a single NUMA memory boundary have significantly impacted performance<br />NUMA boundaries vary by processor and motherboard vendor, but good rule of thumb to calculate boundaries is to divide the amount of memory in the system by the total number of cores.<br />i.e. Dual Quad-core host (2x4 cores = 8 cores) with 64GB of RAM on the host would mean NUMA boundary is 64/8 or 8GB.<br />In this example, allocating more than 8GB for a single guest session would result in performance drops.<br />
  23. 23. NUMA Memory Limitations and Guidelines<br />Keeping NUMA boundaries in mind, this means that you will get significantly better performance provisioning two SharePoint front-ends with half the amount of RAM as a single front-end with twice as much RAM.<br />This applies to any Virtualization platform, as the limitation is hardware specific. NUMA allocation specifics will vary by vendor, however.<br />Refer to MS Whitepaper on Virtualization of SharePoint ( for more specifics.<br />
  24. 24. NUMA Example: 2x Quad Core, 64GB RAM<br />Proc 1<br />Proc 2<br />
  25. 25. NUMA Example: 2x Quad Core, 8GB RAM<br />Proc 1<br />Proc 2<br />
  26. 26. Virtualization Performance Monitoring<br />
  27. 27. Virtualization Performance MonitoringCollect Performance Data<br />Manually with Perfmon counters<br />Collect data over a week minimum to look for trends throughout the week<br />Consider using System Center Operations Manager 2007 R2 for long-term performance analysis and threshold alerting<br />
  28. 28. Virtualization Performance MonitoringPerformance Counters and Thresholds on Hosts<br />Network Bandwidth – Bytes Total/sec<br /><40% Utilization = Good<br />41%-64% = Caution<br />>65% = Trouble<br />Network Latency - Output Queue Length<br />0 = Good<br />1-2= OK<br />>2 = Trouble<br />Processor<br /><60% Utilization = Good<br />60%-90% = Caution<br />>90% = Trouble<br />Available Memory <br />50% and above = Good<br />10%-50% = OK<br /><10% = Trouble<br />Disk – Avg. Disk sec/Read or Avg. Disk sec/Write<br />Up to 15ms = fine<br />15ms-25ms = Caution<br />>25ms = Trouble<br />
  29. 29. Virtualization Performance MonitoringPerformance Counters and Thresholds on Guests<br />Network Bandwidth – Virtual NIC Bytes Total/sec<br /><40% Utilization = Good<br />41%-64% = Caution<br />>65% = Trouble<br />Network Latency - Output Queue Length<br />0 = Good<br />1-2= OK<br />>2 = Trouble<br />Processor (N/A)<br />Available Memory <br />50% and above = Good<br />10%-50% = OK<br /><10% = Trouble<br />Disk – Avg. Disk sec/Read or Avg. Disk sec/Write<br />Up to 15ms = fine<br />15ms-25ms = Caution<br />>25ms = Trouble<br />
  30. 30. SharePoint Virtualization Support<br />
  31. 31. Microsoft Support of SharePoint Virtualization<br />Microsoft’s official SharePoint support stance is that any SharePoint role or service is supported for hardware Virtualization, including SQL Server 2005, SQL Server 2008, or SQL Server 2008 R2. There are only three requirements for Virtualization that must be satisfied, these are as follows:<br />Hardware-assisted Virtualization, which is available in processors that include a Virtualization option—specifically processors with Intel Virtualization Technology (Intel VT) or AMD Virtualization (AMD-V) technology. <br />Hardware-enforced Data Execution Prevention (DEP) is available and enabled.<br />Either deployed on Microsoft Hyper-V (RTM or R2 version) or a validated third-party hypervisor that is part of the Server Virtualization Validation Program (SVVP) – KB 897615<br />
  32. 32. What does this mean for SharePoint on Third party?<br />SharePoint supported on VMware ESX/ESXi, Citrix XenServer, or others in the SVVP<br />This only covers Hypervisor products, so excludes products such as VMware Workstation or VMWare Server <br />Less need to reproduce problems in physical environment<br />
  33. 33. Windows Server 2008 R2 Hyper-V<br />
  34. 34. Hyper-V R2 for SP2010Overview<br />
  35. 35. System Center Virtual Machine Manager 2008 R2<br />
  36. 36. System Center Virtual Machine Manager (VMM)<br />Virtualization Host and Guest Management Platform<br />Part of the System Center Management Suite, which includes the following:<br />System Center Operations Manager 2007<br />System Center Data Protection Manager 2007<br />System Center Configuration Manager 2007 R2<br />System Center Mobile Device Manager 2007<br />System Center Essentials 2007<br />System Center Capacity Planner 2007<br />System Center Service Manager 2010<br />
  37. 37. System Center Virtual Machine Manager (VMM) 2008 R2<br />New version out (VMM 2008 R2)<br />VMM 2008 R2 has P2V (Physical to virtual migration) and V2V (VMware Guest migration to Hyper-V) tools<br />For SharePoint, allows for creation of SharePoint template servers that can be quickly provisioned for test farms or for new farm members in production<br />Can manage both Hyper-V and VMware guests (though must ‘go through’ a Virtual Center server to manage VMware guests.)<br />Self-Service Portal allows end users and remote admins to be able to provision their own virtual machines based on templates<br />PowerShell support allows for scripted provisioning of SharePoint 2010 or other servers into a farm<br />
  38. 38. Quick SP2010 Farm Provisioning with VMM 2008 R2<br />Create new Virtual Guest (Windows Server 2008 R2)<br />Install SP2010 Binaries. Stop before running Config Wizard<br />Turn Virtual Guest into Template, modify template to allow it to be added into domain<br />Add PowerShell script to run on first login, allowing SP to be added into farm or to create new farm<br />Voila! 15 minute entire farm provisioning…<br />
  39. 39. Quick Farm Provisioning with VMM 2008 R2<br />Live Demonstration<br />37<br />
  40. 40. Farm Provisioning Script(Thanks to Muhanad Omar, MVP)<br />$configType = read-host "Do you wish to join an existing Farm? (Y/N)"<br />if ($ConfigType -eq "Y") { <br /> $DatabaseServer = read-host "Sounds good. Please specify the name of your SQL Server";<br /> $ConfigDB = read-host "Next, specify the name of your Farm Configuration Database";<br /> $Passphrase = read-host "Finally, please enter your Farm passphrase" -assecurestring<br />} else { <br /> $DatabaseServer = read-host "In that case, let's create a new Farm. Please specify the name of your SQL Server";<br /> $FarmName = read-host "Please specify a name for your Farm (ex. SP2010Dev)";<br /> $ConfigDB = $FarmName+"_ConfigDB";<br /> $AdminContentDB = $FarmName+"_Admin_ContentDB";<br /> Write-Host "Please enter the credentials for your Farm Account (ex. CONTOSOSP_Farm)";<br /> $FarmAcct = Get-Credential;<br /> $Passphrase = read-host "Enter a secure Farm passphrase" -assecurestring;<br /> $Port = read-host "Enter a port number for the Central Administration Web App";<br /> $Authentication = read-host "Finally, specify your authentication provider (NTLM/Kerberos)"; <br />}<br />if ($ConfigType -eq "Y") {<br /> Add-PSSnapinMicrosoft.SharePoint.PowerShell;<br /> Connect-SPConfigurationDatabase -DatabaseName $ConfigDB -DatabaseServer $DatabaseServer -Passphrase $Passphrase<br />} else {<br /> Add-PSSnapinMicrosoft.SharePoint.PowerShell;<br /> Write-Host "Your SharePoint Farm is being configured..."<br /> New-SPConfigurationDatabase -DatabaseName $ConfigDB -DatabaseServer $DatabaseServer -AdministrationContentDatabaseName $AdminContentDB -Passphrase $Passphrase -FarmCredentials $FarmAcct<br />}<br />Initialize-SPResourceSecurity<br />Install-SPService<br />Install-SPFeature -AllExistingFeatures<br />New-SPCentralAdministration -Port $Port -WindowsAuthProvider $Authentication<br />Install-SPHelpCollection -All<br />Install-SPApplicationContent<br />Write-Host "Your SharePoint 2010 Farm has been created!"<br />if ($ConfigType -eq "N") {<br /> $WebAppCreation = read-host "Would you like to provision a Web Application using the default Team Site Template? (Y/N)";<br /> if ($WebAppCreation -eq "Y") {<br /> $HostHeaderQ = read-host "Would you like to specify a host header? (Y/N)";<br /> if ($HostHeaderQ -eq "Y") {<br /> $HostHeader = read-host "Please specify a host header for your Web Application (ex.";<br /> $URL = "http://"+$HostHeader;<br /> Write-Host "Creating your Web Application...";<br /> New-SPWebApplication -Name "SharePoint 2010 Team Site" -Port 80 -HostHeader $FQDN -Url $URL -ApplicationPool "Content_AppPool" -ApplicationPoolAccount (Get-SPManagedAccount $FarmAcct.UserName) -DatabaseServer $DatabaseServer -DatabaseName $FarmName+"_TeamSite_ContentDB_01";<br /> New-SPSite $URL -OwnerAlias $FarmAcct.UserName -Language 1033 -Template "STS#0" -Name "Team Site";<br /> Write-Host "Configuration completed.";<br /> }<br /> else {<br /> Write-Host "Creating a Web Application using the default Team Site Template..."<br /> }<br /> }<br /> else {<br /> Write-Host "Configuration completed.";<br /> } <br />}<br />Write-Host "Press any key to continue..."<br />$x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")<br />
  41. 41. $ £ ¥ €<br />Virtualization Licensing<br />
  42. 42. Virtualized Farm ArchitectureMicrosoft Virtualization Licensing Primer<br />Windows Server Virtualization Licensing<br />Standard Edition: One virtual guest (if host is dedicated to Virtualization role)<br />Enterprise Edition: Four virtual guests (if host is dedicated to Virtualization role) / Guests can be Std/Ent<br />DataCenter Edition: Unlimited Number of Virtual Guests / Per processor socket license<br />Virtualization OS licensing applies to Hyper-V or any virtual host software listed in SVVP (KB 897615)<br />System Center Virtualization Licensing<br />System Center Management Suite Standard Edition License: Gives DPM, OpsMgr, ConfigMgr, and VMM Agents for 1 server.<br />System Center Management Suite Enterprise Edition License: Gives unlimited DPM, OpsMgr, ConfigMgr, and VMM Agents for all virtual guests on the host.<br />Check with Microsoft for Specifics…<br />
  43. 43. Microsoft Virtualization Guest Licensing Model<br />Guests can run any combination of downlevel licenses (i.e. Datacenter host, Ent or Std edition guests)<br />Applies not only to OSes running Virtualized with Windows Virtualization, but it also applies to 3rd party Virtualization as well!<br />
  44. 44. Best/Worst Practices<br />
  45. 45. Best Practices<br />Dedicated Host(s) for SharePoint<br />Build Guest Sessions for Performance (Passthrough/RDM Disk/NICs, RAM, Cores, etc.)<br />Be Cautious of NLB on VMware (Known Issues, consider Unicast + Dedicated NIC)<br />Ideally Have Control over your Virtual Hosts, rather than be dictated<br />
  46. 46. ‘Worst Practices’<br />Overcommitting Resources – Memory/Cores/Disk (Just Don’t Do It)<br />Not Monitoring for Performance<br />Going Stingy on RAM for SP2010<br />Sharing Virtual Hosts with Other IO Hungry Applications<br />Virtualization for Virtualization’s Sake<br />
  47. 47. Session Takeaways<br />Consider Virtualization for SharePoint, but architect host and guest environments very carefully.<br />Best performance comes from dedicated virtual hosts, dedicated passthrough NICs (RDM), and dedicated passthrough disks (RDM) and by not overcommitting resources.<br />Monitor performance metrics to look for bottlenecks<br />KB897615 outlines MS Support for 3rd Party Virtualization such as VMware and XenServer…<br />Windows Server 2008 R2 Hyper-V technology gives high performance and is a very cost competitive option<br />MS Licensing has new Virtualization support, and Datacenter edition will provide for unlimited guests under a single host.<br />
  48. 48. For More Information<br />SharePoint 2010 Unleashed (SAMS Publishing) (<br />Windows Server 2008 R2 Unleashed and/or Hyper-V Unleashed (<br />Microsoft ‘Virtualizing SharePoint Infrastructure’ Whitepaper (2007) ( <br />Microsoft ‘Virtualizing SQL Server’ Whitepaper (<br />Microsoft’s Guidance on Virtualization Monitoring (2007) (Brian Wilson, MCS)<br />Contact us at<br />
  49. 49. Thanks for attending!Please be sure to fill out your session evaluation!<br />Michael Noel<br />Twitter: @MichaelTNoel<br /><br />