Thursday, March 14, 2013

Installing SP2013 Updates with HA Search Enabled

The March Public Update (PU) for SharePoint Server 2013 and SharePoint Foundation
2013 is available. 
For servers that include search components, you have to follow specific steps to ensure that you install the PU correctly. For a high availability search topology, you use Windows PowerShell cmdlets to patch a Search service application.

Install the SharePoint March PU on servers running search components

For each server running search components, follow these steps:
  • On the server running SharePoint Server 2013, stop the following Windows Services in this order:
    1. SPTimerV4
    2. OSearch15
    3. SPSearchHostController
Note: The reason why you need to stop the SPTimerV4 service first is because the SPTimerV4 service monitors the SPSearchHostController service. The SPTimerV4 service will start the SPSearchHostController service it if it finds that the SPSearchHostController is stopped. Therefore, if the SPTimerV4 service is running after you stop the SPSearchHostController service, the SPTimerV4 service might start the SPSearchHostController without you noticing it.
  • Install the update package on the server by following the instructions that come with the update package.
  • Restart the Windows Services in the following order:

  1. SPSearchHostController
  2. OSearch15
  3. SPTimerV4

Mission-critical multiple-server search topology

To perform server patching on a high availability search topology, use Windows PowerShell.

1. Verify that you have the following memberships and roles:
    • securityadmin fixed server role on the SQL Server instance.
    • db_owner fixed database role on all databases that are to be updated.
    • Administrators group on the server on which you are running the Windows PowerShell cmdlets.

Note: An administrator can use the Add-SPShellAdmin cmdlet to grant permissions to use SharePoint 2013 cmdlets. If you do not have permissions, contact your Setup administrator or SQL Server administrator to request permissions. For additional information about Windows PowerShell permissions, see Add-SPShellAdmin
 2. Start the SharePoint 2013 Management Shell.
  • For Windows Server 2008 R2: On the Start menu, click All Programs, click Microsoft SharePoint 2013 Products, and then click SharePoint 2013 Management Shell.
  • For Windows Server 2012: On the Start screen, click SharePoint 2013 Management Shell.
If SharePoint 2013 Management Shell is not on the Start screen:
  • Right-click Computer, click All apps, and then click SharePoint 2013 Management Shell.
For more information about how to interact with Windows Server 2012, see Common Management Tasks and Navigation in Windows Server 2012.
3. Assign a variable for the Search service application. 
  • At the Windows PowerShell command prompt, type the following command:
$ssa=Get-SPEnterpriseSearchServiceApplication
4. Determine the server groups for patching. 
  • You split the servers associated with the search topology into three groups, where there is a checkpoint between each group of servers.
  • To determine the primary search administration component and the server where the component runs, type the following command at the Windows PowerShell command prompt:
Get-SPEnterpriseSearchStatus -SearchApplication $ssa | where { (($_.State-ne "Unknown") -and ($_.Name -match "Admin")) } | ForEach {if (Get-SPEnterpriseSearchStatus -SearchApplication $ssa -Component $_.Name-Primary) { Get-SPEnterpriseSearchTopology -SearchApplication $ssa -active | Get-SPEnterpriseSearchComponent -identity $($_.Name) } }
  • Determine the servers in group 1.
The set of servers must fulfill the following requirements:
The set must contain one or more, but not all, of the following types of Search components:
    • Content processing component 
    • Crawl component
    • Index component
    • The set must contain one or more, but not all, of the index components for each index partition.
    • The set must contain the non-primary search administration component
    • Query processing component
    • Analytics processing component 
  • Determine the servers in group 2. 
This group must contain all remaining servers except the server that hosts the primary search administration component.
  • Group 3 consists of the server that hosts the primary search administration component.
5. Perform the required patching of servers in group 1. 
See the procedure “Install the SharePoint March PU on servers running search components” earlier in this article.
6. After you complete the patching, wait until all search components are running.
  • From a Windows PowerShell command prompt, type the following command until the output no longer lists any search components . The command will only list search components that are not in the “Active” state:
Get-SPEnterpriseSearchStatus -SearchApplication $ssa | where {$_.State -ne "Active"} | fl
7. Perform the required patching of servers in group 2. 
  • See the procedure “Install the SharePoint March PU on servers running search components” earlier in this article.
8. After you complete the patching, wait until all search components are running.
  • From a Windows PowerShell command prompt, type the following command until the output no longer lists any search components. The command will only list search components that are not in the “Active” state:
Get-SPEnterpriseSearchStatus -SearchApplication $ssa | where {$_.State -ne "Active"} | fl
9. Perform the required patching of servers in group 3. 
  • See the procedure “Install the SharePoint March PU on servers running search components” earlier in this article.
Note: During this step, you will experience a few minutes of query downtime while a search administration component failover takes place.
10. After you complete the patching, wait until all search components are running.
  • From a Windows PowerShell command prompt, type the following command until the output no longer lists any search components. The command will only list search components that are not in the “Active” state:
Get-SPEnterpriseSearchStatus -SearchApplication $ssa | where {$_.State -ne "Active"} | fl

Article Source: http://blogs.technet.com/b/tothesharepoint/archive/2013/03/13/how-to-install-update-packages-on-a-sharepoint-farm-where-search-component-and-high-availability-search-topologies-are-enabled.aspx

1 comment: