Add Search Components to a SharePoint server

There are times when you want to add search components (or move components to a new server). The instructions below will show how to add the various search components. You can put the various components on the any SharePoint server. This can help speed up your crawls especially if you have a large amount of data to index.

  1. Add a Query Processing component on a SharePoint Server
    • Open up “SharePoint 2013 Management Shell” as an administrator.
    • Type in the following commands replacing <SERVER NAME> with the name of the server where you are placing the Query Processing Component.
      $ssi = Get-SPEnterpriseSearchServiceInstance -Identity “<SERVER NAME>”
      Start-SPEnterpriseSearchServiceInstance -Identity $ssi
      Start-SPEnterpriseSearchQueryAndSiteSettingsServiceInstance -Identity “SERVER NAME”
    • Then run the following command until the status show “Online”.
      Get-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Now run the following commands.
      $ssa = Get-SPEnterpriseSearchServiceApplication
      $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa –Active
      $clone = New-SPEnterpriseSearchTopology -SearchApplication $ssa –Clone –SearchTopology $active
      New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $clone -SearchServiceInstance $ssi
      Set-SPEnterpriseSearchTopology -Identity $clone
    • It will take a few minutes for the Set-SPEnterpriseSearchTopology to take effect. Once it does you should verify the Query Processing Component has been created by going to the “Search Service Application: Search Administration” page in Central Administration.
  2. Add a Crawler Component to the Search Service Application
    • Open up “SharePoint 2013 Management Shell” as an administrator.
    • Type in the following commands replacing <SERVER NAME> with the name of the server where you are placing the Crawler Processing Component.
      $ssi = Get-SPEnterpriseSearchServiceInstance -Identity “<SERVER NAME>”
      Start-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Then run the following command until the status shows “Online” as shown in the picture.
      Get-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Now run the following commands.
      $ssa = Get-SPEnterpriseSearchServiceApplication
      $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa –Active
      $clone = New-SPEnterpriseSearchTopology -SearchApplication $ssa –Clone –SearchTopology $active
      New-SPEnterpriseSearchCrawlComponent -SearchTopology $clone -SearchServiceInstance $ssi
      Set-SPEnterpriseSearchTopology -Identity $clone
    • It will take a few minutes for the Set-SPEnterpriseSearchTopology to take effect. Once it does you should verify the Query Processing Component has been created by going to the “Search Service Application: Search Administration” page in Central Administration.
  3. Add a Content Processing Component to the Search Service Application
    • Open up “SharePoint 2013 Management Shell” as an administrator.
    • Type in the following commands replacing <SERVER NAME> with the name of the server where you are placing the Content Processing Component.
      $ssi = Get-SPEnterpriseSearchServiceInstance -Identity “<SERVER NAME>”
      Start-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Then run the following command until the status shows “Online” .
      Get-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Now run the following commands.
      $ssa = Get-SPEnterpriseSearchServiceApplication
      $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa –Active
      $clone = New-SPEnterpriseSearchTopology -SearchApplication $ssa –Clone –SearchTopology $active
      New-SPEnterpriseSearchContentProcessingComponent -SearchTopology $clone -SearchServiceInstance $ssi
      Set-SPEnterpriseSearchTopology -Identity $clone
    • It will take a few minutes for the Set-SPEnterpriseSearchTopology to take effect. Once it does you should verify the Crawler Component has been created by going to the “Search Service Application: Search Administration” page in Central Administration.
  4. Add an Analytics Processing Component to the Search Service Application
    • Open up “SharePoint 2013 Management Shell” as an administrator.
    • Type in the following commands replacing <SERVER NAME> with the name of the server where you are placing the Analytics Processing Component.
      $ssi = Get-SPEnterpriseSearchServiceInstance -Identity “<SERVER NAME>”
      Start-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Then run the following command until the status show “Online” .
      Get-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Now run the following commands.
      $ssa = Get-SPEnterpriseSearchServiceApplication
      $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa –Active
      $clone = New-SPEnterpriseSearchTopology -SearchApplication $ssa –Clone –SearchTopology $active
      New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchTopology $clone -SearchServiceInstance $ssi
      Set-SPEnterpriseSearchTopology -Identity $clone
    • It will take a few minutes for the Set-SPEnterpriseSearchTopology to take effect. Once it does you should verify the Analytics Processing Component has been created by going to the “Search Service Application: Search Administration” page in Central Administration.
  5. Add an Index Replica to the Search Service Application
    • Create the path where you want the index replica to reside on the server that you are placing the Index Processing Component (i.e. E:\Index). If you are using an existing path you will want to make sure it is empty. You will want to place the path on a different disk drive than the operating system.
    • Open up “SharePoint 2013 Management Shell” as an administrator on the server where you want to create the index replica.
    • Type in the following commands replacing <SERVER NAME> with the name of the server where you are placing the Index Processing Component.
      $ssi = Get-SPEnterpriseSearchServiceInstance -Identity “<SERVER NAME>”
      Start-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Then run the following command until the status show “Online” .
      Get-SPEnterpriseSearchServiceInstance -Identity $ssi
    • Now run the following commands.
      $ssa = Get-SPEnterpriseSearchServiceApplication
      $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa –Active
      $clone = New-SPEnterpriseSearchTopology -SearchApplication $ssa -Clone –SearchTopology $active
    • Run the following command replacing <INDEX PARTITION> is the index you are making a replica of (normally this is the number 0) and <FILE PATH> with the location of the new index (i.e E:\Index).
      New-SPEnterpriseSearchIndexComponent –SearchTopology $clone -SearchServiceInstance $ssi -IndexPartition <INDEX PARTION> -RootDirectory <FILE PATH>
      Example:
      PS C:\Users\spfarm> New-SPEnterpriseSearchIndexComponent -SearchTopology $clone-SearchServiceInstance $ssi -IndexPartition 0 -RootDirectory E:\Index
    • Then you can activate the search topology by typing in the following command and waiting for it to finish. Once it does you should verify the Index Component has been created by going to the “Search Service Application: Search Administration” page in Central Administration.

      Set-SPEnterpriseSearchTopology -Identity $clone