Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Virtualizing SharePoint for
Performance & Availability
Damir Bersinic
Senior Platform Advisor
Microsoft Canada Inc.
damirb@microsoft.com
Twitter: @DamirB
http://blogs.technet.com/b/canitpro
Session Objectives and Takeaways
• Session Objective(s):
  • Configure virtualization environments properly to
    support SharePoint
  • Implement availability features in virtual environments,
    SQL Server, and SharePoint
• Key Takeaways:
  • All SharePoint Roles Can and Should be Virtualized
  • Virtualization Can Increase Availability
Let‟s All Get On The Same Page
• Assumptions:
    • You know how to deploy SharePoint on physical servers
    • You have done a basic install of Hyper-V and created a VM
    • You customers are currently working with Windows Server 2008R2 Hyper-V and/or VMware
• General Rules
    • Architecting SharePoint correctly means doing the right things for SharePoint whether on
      physical hardware or in virtual environments
    • Most of what I will be talking about applies to Hyper-V and VMware
• Hyper-V is the best platform to run SharePoint workloads!
    • AND IT GETS BETTER WITH WINDOWS SERVER 8 HYPER-V
Virtualization Software Best Practices
• Use latest operating system for guest OS
• Management tools make the difference
• Understand support and ensure software is certified via
  Windows Server Virtualization Validation Program (SVVP)
• Understand operating system licensing (Standard, Enterprise,
  Datacenter)
   • Applies to all virtualization software!
• Understand SharePoint Licensing – no change
Which SharePoint Role Should I
         Virtualize?
Role Virtualization Considerations
                         Virtualization
           Role                                           Considerations and Requirements
                           Decision

Web Role                                  • Easily provision additional servers for load balancing and fault
                             Ideal
Render Content                              tolerance

Query Role                                • For large indexes, use fixed sized VHD
                             Ideal
Process Search Queries                    • Requires propagated copy of local index

Application Role                          • Provision more servers as resource requirements for individual
                             Ideal
Excel Services, etc                         applications increase


Index Role                                • Environments where significant amount of content is not crawled
                           Consider
Crawl Index                               • Requires enough drive space to store the index corpus


                                          • Environments with lower resource usage requirements
Database Role              Consider       • Implement SQL Server® alias for the farm required
Web Role                                                                CPU       RAM


•   Responsible for rendering of content
    Low amount of disk activity
                                                         DISK    NETWORK
•
•   Multiple web role servers are common for redundancy and scalability
•   Best Practices
    • Be sure to keep all components, applications, and patch levels the same
    • Network Load Balancing (NLB)
        •   Hardware->Offload NLBto dedicated resources
        •   Software ->CPUand Network usage onWFE

    • For minimum availability split your load balanced virtual web servers over two
      physical hosts
Web Role - Using NLB in Hyper-V
• To configure VMs in a Network Load Balancing cluster, enable MAC address
  spoofing
• This ensures the virtual switch will not learn MAC addresses, a requirement for NLB
  to function correctly
• VMQ does not work with NLB
    • NLB changes the Virtual MAC Addresses which prevents Hyper-V from dispatching the
      packets directly to the guest’s queue
Query Role
• Process search queries                                             CPU      RAM


• Requires propagated copy of the index
   •   10%-30% of total size of documents indexed                    DISK   NETWORK

• Best Practice
   • Large Indexes – Prefer dedicated physical LUN on SAN over
     dynamic expanding virtual hard disk
   • Don’t put your query and index servers on the same underlying
     physical disk
• Combine or split Web/Query role?
   • It depends on your environment.
   • Web and Query performance requirements
Index Role                                            CPU     RAM


• Memory, CPU, Disk I/O and network intensive          DISK   NETWORK

• Best Practices
   • Give most amount of RAM out of front ends
   • Potentially keep as physical machine in larger
     environments
   • Use Index server to be dedicated crawl server.
     Avoids hop.
   • Use fixed-size VHDs or physical LUN on iSCSI
     SAN for best performance
Application Server Roles                           CPU      RAM




• Excel Services, PerformancePoint Services,       DISK   NETWORK

  Access Services, Visio Services, etc. are good
  candidates for virtualization
• Additional servers can simply be added into
  the farm
• No additional hardware investment required
Database role                                                  CPU      RAM


• SQL Server 2005/ 2008/2008R2 virtualization fully
  supported                                                    DISK   NETWORK

• Memory, CPU, Disk I/O and network intensive
• Assess first using Microsoft Assessment and Planning
  Toolkit (www.microsoft.com/map).
• SQL Alias flexibility
• Argument for Physical:
   •   SQL Server is already a consolidation layer
   •   Disk I/O activity
   •   Performance, performance, performance!
   •   Longer response times impacts ALL downstream roles in
       a SharePoint farm
SharePoint Farm – Database role                                  CPU     RAM



• If you decide to virtualize database                            DISK   NETWORK

  layer:
  • Assign as much RAM and CPU as possible
  • Offload the Disk I/O from the virtual machines
      • Use fixed-size VHDs or physical LUN on an iSCSI SAN
  • SQL Clustering: When virtualizing, consider making use of
    Guest Clustering in Hyper-V
  • SQL Database Mirroring: Fully supported in SharePoint 2010
    in physical or virtual database role environments
Performance Best Practices
CPU Best Practices
PHYSICAL                                          VIRTUAL
•   Performance is governed by processor          •   Configure a 1-to-1 mapping of virtual CPU to
    efficiency, power draw and heat output            physical CPU for best performance
•   Faster versus efficient processor – hidden    •   Be aware of the virtual processor limit for
    power consumption cost                            different guest operating systems and plan
•   Beware of built in processor software such as     accordingly
    performance throttle for thermal thresholds •     Beware of “CPU bound” issues, the ability of
•   Prefer higher number of processors and multi      processors to process information for virtual
    core                                              devices will determine the maximum
•   Prefer PCI Express to limit bus contention &      throughput of such a virtual device.
    CPU utilization                                   Example: Virtual NICS
Memory Best Practices
PHYSICAL                                           VIRTUAL
•   Ensure there is sufficient memory installed on •   Configure the correct amount of memory for
    the physical computer that hosts the Hyper-V       guests. (memory configuration is hardware
    virtual machines                                   specific).
•   Factor in Hypervisor memory overhead over •        NUMA Memory Considerations (see next
    and above standard virtual machine memory          slide)
    requirements.                                  •   Watch out for page file / swap file. Disk is
•   Use SLAT-based hardware for lowest                 always slower than RAM. Ensure enough
    memory management overhead                         memory is allocated to each virtual machine.
                                                   •   If using VMware, avoid over committing
                                                       memory as it may cause virtual machine to
                                                       swap to disk which is slower than RAM.
                                                   •   In Hyper-V consider whether or not to use
                                                       Dynamic Memory
NUMA Memory Limitations
    Non-Uniform Memory Access (NUMA) Boundaries exist at the hardware
     level.
    Virtual guests that are allocated more memory than exist within a single
     NUMA memory boundary have significantly impacted performance
    Example:
     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
      CPUs
     i.e. 4 CPU host with 32GB of RAM on the host would mean NUMA boundary is 32/4 or 8GB
     In this example, allocating more than 8GB for a single virtual machine would result in
      performance drops.
Physical NUMA
                                                NUMA node 1     NUMA node 2
• NUMA (Non-uniform memory access)
   – Helps hosts scale up the number of cores                                 Processors
     and memory access
   – Partitions cores and memory into “nodes”                                 Memory
   – Allocation and latency depends on the
     memory location relative to a processor
• High performance applications detect
  NUMA and minimize cross-node
  memory access


                                                        Host NUMA
Physical NUMA Implementation – GOOD!
                                NUMA node 1    NUMA node 2



• This is optimal…                                            Processors




  – System is balanced                                        Memory



  – Memory allocation and        NUMA node 3    NUMA node 4


    thread allocations within                                 Processors



    the same NUMA node                                        Memory


  – Memory populated in
    each NUMA node
Physical NUMA Implementation – BAD!!            NUMA node 1        NUMA node 2

                                                                                 Processors
• This isn‟t optimal…
   – System is imbalanced                                                        Memory

   – Memory allocation and thread allocations
     across different NUMA nodes
   – Multiple node hops                         NUMA node 3        NUMA node 4

   – NUMA Node 2 has an odd number of                                            Processors
     DUMMS
   – NUMA Node 3 doesn‟t have enough                                             Memory
   – NUMA Node 4 has no local memory
     (worst case)


                                                              Host NUMA
What NUMA Means to SharePoint
 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.
 This applies to any virtualization platform, as the
  limitation is hardware specific!
Disk Best Practices
PHYSICAL                                                             VIRTUAL
•   Ensure you are using the fastest SAN infrastructure:             •   Prefer SCSI controller to IDE controller.
    Attempt to provide each virtual machine with its own IO          •   Prefer fixed size to dynamically expanding (more info
    channel to shared storage using dual or quad ported                  here)
    HBAs and Gigabit Ethernet adapters.
                                                                     •   Prefer direct iSCSI SAN access for disk-bound roles
•   Use iSCSI SANs for if considering guest clustering
                                                                     •   Beware of underlying disk read write contention between
•   Ensure your disk infrastructure is as fast as it can be. (RAID       different virtual machines to their virtual hard disks
    10; 15000 RPM) –Slow disk causes CPU contention as
    Disk I/O takes longer to return data.                            •   Ensure SAN is configured and optimized for virtual disk
                                                                         storage. Understand that a number of LUNs can be
•   Put virtual hard disks on different physical disks than the          provisioned on the same underlying physical disks
    hard disk that the host operating system uses
Network Best Practices
PHYSICAL                                               VIRTUAL
•   Use Gigabit Ethernet adaptors and Gigabit switches •   Ensure that integration components (“enlightenments”)
•   Increasing network capacity –Add a number of NICs      are installed on the virtual machine
    to host.                                           •   Use the Network Adapter instead of the Legacy Network
                                                           Adapter when configuring networking for a virtual
                                                           machine
                                                       •   Prefer synthetic to emulated drivers as they are more
                                                           efficient, use a dedicated VMBusto communicate to the
                                                           Virtual NIC and result in lower CPU and network latency.
                                                       •   Use virtual switches and VLAN tagging for security and
                                                           performance improvement and create and internal
                                                           network between virtual machines in your SharePoint
                                                           farm. Associate SharePoint VMs to the same virtual
                                                           switch.
High-Availability Considerations
Failover Clustering + Hyper-V
• To increase the availability of VM‟s and the applications they host:
    •   Hardware health detection
    •   Host operating system health detection
    •   Virtual machine health detection
    •   Application/service health detection
    •   Automatic recovery
• VM mobility

          Clustering keeps you from putting all your VM
                        eggs in 1 basket
High Availability & Clustering
•    Consolidation Increases the importance of High Availability Features
•    Consolidation serves to increase cost for a single system failure
•    Increasing focus on planned outages vs. unplanned outages


                                  Guest
                                  Cluster



                                  Guest
                                  Cluster
                                                                                Live
                       1                       2                 1            Migration
                                                                 1                              2
                                                                                                2


                                                                             Host cluster
                              Shared Storage
                                   iSCSI                                     Shared Storage
      Redundant
                                                                            iSCSI, SAS, Fibre
    Paths to storage




                           Guest Clustering                    Live Migration & Host Clustering
What Host Clustering Delivers
•   Host Clustering Benefits:
     •   Avoids a single point of failure when consolidating
     •   Survive Host Crashes
           •   VMsrestarted onanothernode
     •   Restart VM Crashes
           •   VMOSrestarted onsame node
     •   Recover VM Hangs
           •   VMOSrestarted onsame node                             Cluster

     •   Zero Downtime Maintenance & Patching                        SAN
           •   Livemigrate VMs toother hosts
     •   Mobility & Load Distribution
           •   Livemigrate VMs todifferent servers to load balance
•   Ideal for most SharePoint server roles
What Guest Clustering Delivers
• Guest Clustering Benefits:
   • Application Health Monitoring
       • App or service within VM crashes or hangs and moves to another VM
   • Application Mobility
       • Apps or services moves to another VM for maintenance or patching of guest OS
• Ideal for SQL Server in SharePoint 2010 environments


                                         Cluster




                                         iSCSI
Combining Host & Guest Clustering
• Best of both worlds for flexibility and protection
      • VM high-availability & mobility between physical nodes
      • Application & service high-availability & mobility between VMs
• Increases complexity

                                  Guest Cluster



               CLUSTER                                 CLUSTER
                                      iSCSI

                SAN                                     SAN
Failover Cluster Support Policy
• Flexible cluster hardware support policy
• Use any hardware configuration
    • Each component has a Windows Server 2008 R2 logo
         • Servers, Storage, HBAs, MPIO, etc…
    • It passes Validate
• It‟s that simple!
    •   Commodity hardware
    •   No special list of proprietary hardware
    •   Connect your Windows Server 2008 R2 logo’d hardware
    •   Do not fail any test in Validate
         • It is now supported!
    • If you make a change, just re-run Validate
• Details: http://go.microsoft.com/fwlink/?LinkID=119949
Distribute VMs Across Hosts
• Cluster AntiAffinityClassNames property
    • Groups with same AACN try to avoid
      moving to same node
    • http://msdn.microsoft.com/en-
      us/library/aa369651(VS.85).aspx
• Enables VM distribution across host nodes
• Better utilization of host OS resources
• Failover behavior on large clusters: KB
  299631
• Scenarios
    • Keep similar VMs off the same host
        • Guest cluster nodes
        • DCs or infrastructure servers
    • Separate tenets
SQL Server HA/DR & SharePoint
• SQL Server High Availability
   • Database Mirroring
       • Supported in SharePoint 2010
       • Not an option if using FILESTREAM
   • Clustering (Host or Guest)

• Disaster Recovery
   • Easy to setup virtual DR farm!
   • Data: Log Shipping or SQL Mirroring
   • Use management tools to setup a disaster recovery farm
       • System Center Virtual Machine Manager 2008R2 or 2012
Key Takeaways
SharePoint Virtualization Best Practices
                                    Best Practices and Recommendations
          • Configure a 1-to-1 mapping of virtual processor to logical processors for best performance
CPU
          • Be aware of “CPU bound” issues

Memory    • Ensure enough memory is allocated to each virtual machine

          • Be aware of underlying disk read write contention between different virtual machines to their
Disk        virtual hard disks
          • Ensure SAN is configured correctly

          • Use VLAN tagging for security
Network
          • Associate SharePoint® virtual machines to the same virtual switch

          • Ensure that integration components are installed on the virtual machine
          • Do not use other host roles (use server core)
Others
          • Avoid single point of failure: load balance your virtual machines across hosts and cluster
            virtual machines
Really Important Stuff…
• Understand the impact of your virtualization vendor
  feature set!
• Don‟t let governance slip in your virtualized
  SharePoint environment
• Snapshots are not supported
• Beware of over subscribing host servers
• Do not exceed physical server RAM by more than
  15% if using Hyper-V‟s dynamic memory
• Host is a single point of failure
Even More Important Stuff..
• Don’t fight SharePoint, you’ll lose! 
• Virtualization allows you to cut costs, consolidate
  equipment, and take greatest advantage of hardware
  resources.
• Understand your hardware and use the correct
  processor architecture and operating system
• Plan for availability
• Continually measure and optimize configuration to
  achieve optimal performance of your SharePoint farm
Next Steps
• Download System Center 2012 Eval Software
  (http://technet.microsoft.com/en-
  us/evalcenter/hh505660)
• Join Microsoft Virtual Academy and take some
  courses (www.microsoftvirtualacademy.com)
• Download Windows Server “8” Beta
Session Resources
• Microsoft Virtual Academy
• TechNet: Virtualization for SharePoint Server 2010
• Download: Planning Guide for Server Farms & Environments
  for SharePoint Server 2010
• Microsoft „Virtualizing SQL Server‟ Whitepaper
• Optimizing SQL Server for Private Cloud
Session Resources (continued)
• Books:
   •   SharePoint 2007 Unleashed
   •   SharePoint 2010 Unleashed
   •   Windows Server 2008 R2 Unleashed
   •   Windows Server 2008 R2 Hyper-V: Insider’s Guide
• Licensing Microsoft Server Products in Virtual Environments
• SharePoint 2010 Advanced IT Pro Training
In Review: Session Objectives and Takeaways
• Session Objective(s):
  • Virtualization Performance Best Practices
  • High Availability Considerations
• Key Takeaways:
  • All SharePoint Roles Can and Should be Virtualized
  • Virtualization Can Increase Availability
Q&A
Virtualizing SharePoint for
Performance & Availability
Damir Bersinic
Senior Platform Advisor
Microsoft Canada Inc.
damirb@microsoft.com
Twitter: @DamirB
http://blogs.technet.com/b/canitpro
© 2011 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.

More Related Content

Virtualizing Sharepoint for Performance and Availability

  • 1. Virtualizing SharePoint for Performance & Availability Damir Bersinic Senior Platform Advisor Microsoft Canada Inc. damirb@microsoft.com Twitter: @DamirB http://blogs.technet.com/b/canitpro
  • 2. Session Objectives and Takeaways • Session Objective(s): • Configure virtualization environments properly to support SharePoint • Implement availability features in virtual environments, SQL Server, and SharePoint • Key Takeaways: • All SharePoint Roles Can and Should be Virtualized • Virtualization Can Increase Availability
  • 3. Let‟s All Get On The Same Page • Assumptions: • You know how to deploy SharePoint on physical servers • You have done a basic install of Hyper-V and created a VM • You customers are currently working with Windows Server 2008R2 Hyper-V and/or VMware • General Rules • Architecting SharePoint correctly means doing the right things for SharePoint whether on physical hardware or in virtual environments • Most of what I will be talking about applies to Hyper-V and VMware • Hyper-V is the best platform to run SharePoint workloads! • AND IT GETS BETTER WITH WINDOWS SERVER 8 HYPER-V
  • 4. Virtualization Software Best Practices • Use latest operating system for guest OS • Management tools make the difference • Understand support and ensure software is certified via Windows Server Virtualization Validation Program (SVVP) • Understand operating system licensing (Standard, Enterprise, Datacenter) • Applies to all virtualization software! • Understand SharePoint Licensing – no change
  • 5. Which SharePoint Role Should I Virtualize?
  • 6. Role Virtualization Considerations Virtualization Role Considerations and Requirements Decision Web Role • Easily provision additional servers for load balancing and fault Ideal Render Content tolerance Query Role • For large indexes, use fixed sized VHD Ideal Process Search Queries • Requires propagated copy of local index Application Role • Provision more servers as resource requirements for individual Ideal Excel Services, etc applications increase Index Role • Environments where significant amount of content is not crawled Consider Crawl Index • Requires enough drive space to store the index corpus • Environments with lower resource usage requirements Database Role Consider • Implement SQL Server® alias for the farm required
  • 7. Web Role CPU RAM • Responsible for rendering of content Low amount of disk activity DISK NETWORK • • Multiple web role servers are common for redundancy and scalability • Best Practices • Be sure to keep all components, applications, and patch levels the same • Network Load Balancing (NLB) • Hardware->Offload NLBto dedicated resources • Software ->CPUand Network usage onWFE • For minimum availability split your load balanced virtual web servers over two physical hosts
  • 8. Web Role - Using NLB in Hyper-V • To configure VMs in a Network Load Balancing cluster, enable MAC address spoofing • This ensures the virtual switch will not learn MAC addresses, a requirement for NLB to function correctly • VMQ does not work with NLB • NLB changes the Virtual MAC Addresses which prevents Hyper-V from dispatching the packets directly to the guest’s queue
  • 9. Query Role • Process search queries CPU RAM • Requires propagated copy of the index • 10%-30% of total size of documents indexed DISK NETWORK • Best Practice • Large Indexes – Prefer dedicated physical LUN on SAN over dynamic expanding virtual hard disk • Don’t put your query and index servers on the same underlying physical disk • Combine or split Web/Query role? • It depends on your environment. • Web and Query performance requirements
  • 10. Index Role CPU RAM • Memory, CPU, Disk I/O and network intensive DISK NETWORK • Best Practices • Give most amount of RAM out of front ends • Potentially keep as physical machine in larger environments • Use Index server to be dedicated crawl server. Avoids hop. • Use fixed-size VHDs or physical LUN on iSCSI SAN for best performance
  • 11. Application Server Roles CPU RAM • Excel Services, PerformancePoint Services, DISK NETWORK Access Services, Visio Services, etc. are good candidates for virtualization • Additional servers can simply be added into the farm • No additional hardware investment required
  • 12. Database role CPU RAM • SQL Server 2005/ 2008/2008R2 virtualization fully supported DISK NETWORK • Memory, CPU, Disk I/O and network intensive • Assess first using Microsoft Assessment and Planning Toolkit (www.microsoft.com/map). • SQL Alias flexibility • Argument for Physical: • SQL Server is already a consolidation layer • Disk I/O activity • Performance, performance, performance! • Longer response times impacts ALL downstream roles in a SharePoint farm
  • 13. SharePoint Farm – Database role CPU RAM • If you decide to virtualize database DISK NETWORK layer: • Assign as much RAM and CPU as possible • Offload the Disk I/O from the virtual machines • Use fixed-size VHDs or physical LUN on an iSCSI SAN • SQL Clustering: When virtualizing, consider making use of Guest Clustering in Hyper-V • SQL Database Mirroring: Fully supported in SharePoint 2010 in physical or virtual database role environments
  • 15. CPU Best Practices PHYSICAL VIRTUAL • Performance is governed by processor • Configure a 1-to-1 mapping of virtual CPU to efficiency, power draw and heat output physical CPU for best performance • Faster versus efficient processor – hidden • Be aware of the virtual processor limit for power consumption cost different guest operating systems and plan • Beware of built in processor software such as accordingly performance throttle for thermal thresholds • Beware of “CPU bound” issues, the ability of • Prefer higher number of processors and multi processors to process information for virtual core devices will determine the maximum • Prefer PCI Express to limit bus contention & throughput of such a virtual device. CPU utilization Example: Virtual NICS
  • 16. Memory Best Practices PHYSICAL VIRTUAL • Ensure there is sufficient memory installed on • Configure the correct amount of memory for the physical computer that hosts the Hyper-V guests. (memory configuration is hardware virtual machines specific). • Factor in Hypervisor memory overhead over • NUMA Memory Considerations (see next and above standard virtual machine memory slide) requirements. • Watch out for page file / swap file. Disk is • Use SLAT-based hardware for lowest always slower than RAM. Ensure enough memory management overhead memory is allocated to each virtual machine. • If using VMware, avoid over committing memory as it may cause virtual machine to swap to disk which is slower than RAM. • In Hyper-V consider whether or not to use Dynamic Memory
  • 17. NUMA Memory Limitations  Non-Uniform Memory Access (NUMA) Boundaries exist at the hardware level.  Virtual guests that are allocated more memory than exist within a single NUMA memory boundary have significantly impacted performance Example:  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 CPUs  i.e. 4 CPU host with 32GB of RAM on the host would mean NUMA boundary is 32/4 or 8GB  In this example, allocating more than 8GB for a single virtual machine would result in performance drops.
  • 18. Physical NUMA NUMA node 1 NUMA node 2 • NUMA (Non-uniform memory access) – Helps hosts scale up the number of cores Processors and memory access – Partitions cores and memory into “nodes” Memory – Allocation and latency depends on the memory location relative to a processor • High performance applications detect NUMA and minimize cross-node memory access Host NUMA
  • 19. Physical NUMA Implementation – GOOD! NUMA node 1 NUMA node 2 • This is optimal… Processors – System is balanced Memory – Memory allocation and NUMA node 3 NUMA node 4 thread allocations within Processors the same NUMA node Memory – Memory populated in each NUMA node
  • 20. Physical NUMA Implementation – BAD!! NUMA node 1 NUMA node 2 Processors • This isn‟t optimal… – System is imbalanced Memory – Memory allocation and thread allocations across different NUMA nodes – Multiple node hops NUMA node 3 NUMA node 4 – NUMA Node 2 has an odd number of Processors DUMMS – NUMA Node 3 doesn‟t have enough Memory – NUMA Node 4 has no local memory (worst case) Host NUMA
  • 21. What NUMA Means to SharePoint  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.  This applies to any virtualization platform, as the limitation is hardware specific!
  • 22. Disk Best Practices PHYSICAL VIRTUAL • Ensure you are using the fastest SAN infrastructure: • Prefer SCSI controller to IDE controller. Attempt to provide each virtual machine with its own IO • Prefer fixed size to dynamically expanding (more info channel to shared storage using dual or quad ported here) HBAs and Gigabit Ethernet adapters. • Prefer direct iSCSI SAN access for disk-bound roles • Use iSCSI SANs for if considering guest clustering • Beware of underlying disk read write contention between • Ensure your disk infrastructure is as fast as it can be. (RAID different virtual machines to their virtual hard disks 10; 15000 RPM) –Slow disk causes CPU contention as Disk I/O takes longer to return data. • Ensure SAN is configured and optimized for virtual disk storage. Understand that a number of LUNs can be • Put virtual hard disks on different physical disks than the provisioned on the same underlying physical disks hard disk that the host operating system uses
  • 23. Network Best Practices PHYSICAL VIRTUAL • Use Gigabit Ethernet adaptors and Gigabit switches • Ensure that integration components (“enlightenments”) • Increasing network capacity –Add a number of NICs are installed on the virtual machine to host. • Use the Network Adapter instead of the Legacy Network Adapter when configuring networking for a virtual machine • Prefer synthetic to emulated drivers as they are more efficient, use a dedicated VMBusto communicate to the Virtual NIC and result in lower CPU and network latency. • Use virtual switches and VLAN tagging for security and performance improvement and create and internal network between virtual machines in your SharePoint farm. Associate SharePoint VMs to the same virtual switch.
  • 25. Failover Clustering + Hyper-V • To increase the availability of VM‟s and the applications they host: • Hardware health detection • Host operating system health detection • Virtual machine health detection • Application/service health detection • Automatic recovery • VM mobility Clustering keeps you from putting all your VM eggs in 1 basket
  • 26. High Availability & Clustering • Consolidation Increases the importance of High Availability Features • Consolidation serves to increase cost for a single system failure • Increasing focus on planned outages vs. unplanned outages Guest Cluster Guest Cluster Live 1 2 1 Migration 1 2 2 Host cluster Shared Storage iSCSI Shared Storage Redundant iSCSI, SAS, Fibre Paths to storage Guest Clustering Live Migration & Host Clustering
  • 27. What Host Clustering Delivers • Host Clustering Benefits: • Avoids a single point of failure when consolidating • Survive Host Crashes • VMsrestarted onanothernode • Restart VM Crashes • VMOSrestarted onsame node • Recover VM Hangs • VMOSrestarted onsame node Cluster • Zero Downtime Maintenance & Patching SAN • Livemigrate VMs toother hosts • Mobility & Load Distribution • Livemigrate VMs todifferent servers to load balance • Ideal for most SharePoint server roles
  • 28. What Guest Clustering Delivers • Guest Clustering Benefits: • Application Health Monitoring • App or service within VM crashes or hangs and moves to another VM • Application Mobility • Apps or services moves to another VM for maintenance or patching of guest OS • Ideal for SQL Server in SharePoint 2010 environments Cluster iSCSI
  • 29. Combining Host & Guest Clustering • Best of both worlds for flexibility and protection • VM high-availability & mobility between physical nodes • Application & service high-availability & mobility between VMs • Increases complexity Guest Cluster CLUSTER CLUSTER iSCSI SAN SAN
  • 30. Failover Cluster Support Policy • Flexible cluster hardware support policy • Use any hardware configuration • Each component has a Windows Server 2008 R2 logo • Servers, Storage, HBAs, MPIO, etc… • It passes Validate • It‟s that simple! • Commodity hardware • No special list of proprietary hardware • Connect your Windows Server 2008 R2 logo’d hardware • Do not fail any test in Validate • It is now supported! • If you make a change, just re-run Validate • Details: http://go.microsoft.com/fwlink/?LinkID=119949
  • 31. Distribute VMs Across Hosts • Cluster AntiAffinityClassNames property • Groups with same AACN try to avoid moving to same node • http://msdn.microsoft.com/en- us/library/aa369651(VS.85).aspx • Enables VM distribution across host nodes • Better utilization of host OS resources • Failover behavior on large clusters: KB 299631 • Scenarios • Keep similar VMs off the same host • Guest cluster nodes • DCs or infrastructure servers • Separate tenets
  • 32. SQL Server HA/DR & SharePoint • SQL Server High Availability • Database Mirroring • Supported in SharePoint 2010 • Not an option if using FILESTREAM • Clustering (Host or Guest) • Disaster Recovery • Easy to setup virtual DR farm! • Data: Log Shipping or SQL Mirroring • Use management tools to setup a disaster recovery farm • System Center Virtual Machine Manager 2008R2 or 2012
  • 34. SharePoint Virtualization Best Practices Best Practices and Recommendations • Configure a 1-to-1 mapping of virtual processor to logical processors for best performance CPU • Be aware of “CPU bound” issues Memory • Ensure enough memory is allocated to each virtual machine • Be aware of underlying disk read write contention between different virtual machines to their Disk virtual hard disks • Ensure SAN is configured correctly • Use VLAN tagging for security Network • Associate SharePoint® virtual machines to the same virtual switch • Ensure that integration components are installed on the virtual machine • Do not use other host roles (use server core) Others • Avoid single point of failure: load balance your virtual machines across hosts and cluster virtual machines
  • 35. Really Important Stuff… • Understand the impact of your virtualization vendor feature set! • Don‟t let governance slip in your virtualized SharePoint environment • Snapshots are not supported • Beware of over subscribing host servers • Do not exceed physical server RAM by more than 15% if using Hyper-V‟s dynamic memory • Host is a single point of failure
  • 36. Even More Important Stuff.. • Don’t fight SharePoint, you’ll lose!  • Virtualization allows you to cut costs, consolidate equipment, and take greatest advantage of hardware resources. • Understand your hardware and use the correct processor architecture and operating system • Plan for availability • Continually measure and optimize configuration to achieve optimal performance of your SharePoint farm
  • 37. Next Steps • Download System Center 2012 Eval Software (http://technet.microsoft.com/en- us/evalcenter/hh505660) • Join Microsoft Virtual Academy and take some courses (www.microsoftvirtualacademy.com) • Download Windows Server “8” Beta
  • 38. Session Resources • Microsoft Virtual Academy • TechNet: Virtualization for SharePoint Server 2010 • Download: Planning Guide for Server Farms & Environments for SharePoint Server 2010 • Microsoft „Virtualizing SQL Server‟ Whitepaper • Optimizing SQL Server for Private Cloud
  • 39. Session Resources (continued) • Books: • SharePoint 2007 Unleashed • SharePoint 2010 Unleashed • Windows Server 2008 R2 Unleashed • Windows Server 2008 R2 Hyper-V: Insider’s Guide • Licensing Microsoft Server Products in Virtual Environments • SharePoint 2010 Advanced IT Pro Training
  • 40. In Review: Session Objectives and Takeaways • Session Objective(s): • Virtualization Performance Best Practices • High Availability Considerations • Key Takeaways: • All SharePoint Roles Can and Should be Virtualized • Virtualization Can Increase Availability
  • 41. Q&A
  • 42. Virtualizing SharePoint for Performance & Availability Damir Bersinic Senior Platform Advisor Microsoft Canada Inc. damirb@microsoft.com Twitter: @DamirB http://blogs.technet.com/b/canitpro
  • 43. © 2011 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.