The document discusses the architecture and topologies of SharePoint 2010. It covers the physical and virtual server architectures, planning changes from previous versions, new service application model, database changes, and sample virtual farm architectures. Key points include the distributed database model for improved scalability, isolation of services into independently running service applications, and guidelines for properly architecting virtual SharePoint environments.
66. Can you Virtualize SharePoint 2010 Production Servers? Answer is yes, you can (it is supported), but with caveats Must architect the environment properly! Not taking into account Disk/Proc/Mem, and other host and guest environments can make a virtualized environment run slowly
85. Virtualization Performance MonitoringPerformance Counters and Thresholds on Hosts Network Bandwidth – Bytes Total/sec <40% Utilization = Good 41%-64% = Caution >65% = Trouble Network Latency - Output Queue Length 0 = Good 1-2= OK >2 = Trouble Processor <60% Utilization = Good 60%-90% = Caution >90% = Trouble Available Memory 50% and above = Good 10%-50% = OK <10% = Trouble Disk – Avg. Disk sec/Read or Avg. Disk sec/Write Up to 15ms = fine 15ms-25ms = Caution >25ms = Trouble
86. Virtualization Performance MonitoringPerformance Counters and Thresholds on Guests Network Bandwidth – Virtual NIC Bytes Total/sec <40% Utilization = Good 41%-64% = Caution >65% = Trouble Network Latency - Output Queue Length 0 = Good 1-2= OK >2 = Trouble Processor (N/A) Available Memory 50% and above = Good 10%-50% = OK <10% = Trouble Disk – Avg. Disk sec/Read or Avg. Disk sec/Write Up to 15ms = fine 15ms-25ms = Caution >25ms = Trouble
88. Microsoft Support of SharePoint Virtualization 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: 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. Hardware-enforced Data Execution Prevention (DEP) is available and enabled. 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
92. Virtualization Host and Guest Management Platform Part of the System Center Management Suite, which includes the following: System Center Operations Manager 2007 System Center Data Protection Manager 2007 System Center Configuration Manager 2007 R2 System Center Mobile Device Manager 2007 System Center Essentials 2007 System Center Capacity Planner 2007 System Center Service Manager 2010 System Center Virtual Machine Manager (VMM)
93. New version out (VMM 2008 R2) VMM 2008 R2 has P2V (Physical to virtual migration) and V2V (VMware Guest migration to Hyper-V) tools For SharePoint, allows for creation of SharePoint template servers that can be quickly provisioned for test farms or for new farm members in production Can manage both Hyper-V and VMware guests (though must ‘go through’ a Virtual Center server to manage VMware guests.) Self-Service Portal allows end users and remote admins to be able to provision their own virtual machines based on templates PowerShell support allows for scripted provisioning of SharePoint 2010 or other servers into a farm System Center Virtual Machine Manager (VMM) 2008 R2
94. Quick SP2010 Farm Provisioning with VMM 2008 R2 Create new Virtual Guest (Windows Server 2008 R2) Install SP2010 Binaries. Stop before running Config Wizard Turn Virtual Guest into Template, modify template to allow it to be added into domain Add PowerShell script to run on first login, allowing SP to be added into farm or to create new farm Voila! 15 minute entire farm provisioning…
96. Farm Provisioning Script(Thanks to Muhanad Omar, MVP) $configType = read-host "Do you wish to join an existing Farm? (Y/N)" if ($ConfigType -eq "Y") { $DatabaseServer = read-host "Sounds good. Please specify the name of your SQL Server"; $ConfigDB = read-host "Next, specify the name of your Farm Configuration Database"; $Passphrase = read-host "Finally, please enter your Farm passphrase" -assecurestring } else { $DatabaseServer = read-host "In that case, let's create a new Farm. Please specify the name of your SQL Server"; $FarmName = read-host "Please specify a name for your Farm (ex. SP2010Dev)"; $ConfigDB = $FarmName+"_ConfigDB"; $AdminContentDB = $FarmName+"_Admin_ContentDB"; Write-Host "Please enter the credentials for your Farm Account (ex. CONTOSOP_Farm)"; $FarmAcct = Get-Credential; $Passphrase = read-host "Enter a secure Farm passphrase" -assecurestring; $Port = read-host "Enter a port number for the Central Administration Web App"; $Authentication = read-host "Finally, specify your authentication provider (NTLM/Kerberos)"; } if ($ConfigType -eq "Y") { Add-PSSnapinMicrosoft.SharePoint.PowerShell; Connect-SPConfigurationDatabase -DatabaseName $ConfigDB -DatabaseServer $DatabaseServer -Passphrase $Passphrase } else { Add-PSSnapinMicrosoft.SharePoint.PowerShell; Write-Host "Your SharePoint Farm is being configured..." New-SPConfigurationDatabase -DatabaseName $ConfigDB -DatabaseServer $DatabaseServer -AdministrationContentDatabaseName $AdminContentDB -Passphrase $Passphrase -FarmCredentials $FarmAcct } Initialize-SPResourceSecurity Install-SPService Install-SPFeature -AllExistingFeatures New-SPCentralAdministration -Port $Port -WindowsAuthProvider $Authentication Install-SPHelpCollection -All Install-SPApplicationContent Write-Host "Your SharePoint 2010 Farm has been created!" if ($ConfigType -eq "N") { $WebAppCreation = read-host "Would you like to provision a Web Application using the default Team Site Template? (Y/N)"; if ($WebAppCreation -eq "Y") { $HostHeaderQ = read-host "Would you like to specify a host header? (Y/N)"; if ($HostHeaderQ -eq "Y") { $HostHeader = read-host "Please specify a host header for your Web Application (ex. intranet.contoso.com)"; $URL = "http://"+$HostHeader; Write-Host "Creating your Web Application..."; 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"; New-SPSite $URL -OwnerAlias $FarmAcct.UserName -Language 1033 -Template "STS#0" -Name "Team Site"; Write-Host "Configuration completed."; } else { Write-Host "Creating a Web Application using the default Team Site Template..." } } else { Write-Host "Configuration completed."; } } Write-Host "Press any key to continue..." $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
97. Summary Understand how to use the Service Application architecture of SharePoint 2010 Plan for a distributed data model, especially for document management enviroments If considering virtualization of SharePoint, make sure to architect host/guest environment properly
98. Dúvidas? Michael Noel Twitter: @MichaelTNoel www.cco.com Por favor preencha a avaliação
Step 1: Model – Modelling is the process by which you decide the key solutions you want your environment to support, and establish all important metrics and parameters. Step 2: Design – Once you have gathered the data from Step 1, you can design your farm. Outputs are detailed data architecture and physical and logical topologies.Step 3: Pilot, Test and Optimize – If you have designed a new deployment, you need to deploy a pilot environment for testing against your workload and expected usage characteristicsStep 4: Deploy – This step describes implementing the farm, or deploying changes to an existing farm. Step 5: Monitor and maintain – This step describes how to set up monitoring, and how to predict and identify bottlenecks, as well as perform regular maintenance and bottleneck mitigation activities.
As an example using this rough guideline, SQL Server would be expected to devote 75 IOPS to a 100GB content database, or 375 IOPS for five content databases. Analyzing one’s SQL Server, it may be necessary to split some content databases onto their own spindles in order to achieve this rate.