Sp2019 Search HA topology

vincent manzari 41 Reputation points
2022-03-26T13:58:39.353+00:00

Hello,

for a customer project we have added a second node of an SP19 farm to provide HA (also during the ZDP process).
The final architecure provide

  • 2 SQL AlwaysOn
  • 2 App + Search server
  • 2 WFE + Distr. Cache

For the Search application, we need to configure a new topology to include the second App Server.
The idea is to configure all search component on the 2 App servers

  • Query -> App1/App2
  • Crawl -> App1/App2
  • Admin -> App1/App2
  • Analytics -> App1/App2
  • Content Process -> App1/App

For the Index component, I'm not sure which type of topology will be better between the two below:

  • Index Partition 0 -> primary App1 - replica App2
  • Index Partition 0 -> primary App1 - replica App2 / Index Partition 1 -> primary App2 - replica App1

If I understand well, in case we have a lot of items (>20Mil) is better the second, but for functional perspective the 2 are equal. If is right, I think that the first solution will be better and easier to implement.
I have a question abount the HA; when the rimary node fails, the second node provide all search functionallity, but for the Index, can the second node manage indexes? if so, how does it replicate the indexes created at node 1 when it was offline? or is it necessary to have the first one up to restore indexes updates?

Last question, can I add the replica index on an existing search with indexes or I need to reset the indexes?

Thanks

SharePoint Server
SharePoint Server
A family of Microsoft on-premises document management and storage systems.
2,271 questions
SharePoint Server Management
SharePoint Server Management
SharePoint Server: A family of Microsoft on-premises document management and storage systems.Management: The act or process of organizing, handling, directing or controlling something.
2,864 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. CaseyYang-MSFT 10,326 Reputation points
    2022-03-28T07:43:05.597+00:00

    Hi @vincent manzari ,

    Per my knowledge, the index will wait for the master to promote one of the replicas to be a new primary.

    You could add the replica index with PowerShell:

    1.Start a search service instance on the server that you want to create the index replica on and create a reference to the search service instance Id:

    $hostA = Get-SPEnterpriseSearchServiceInstance -Identity "myserver1"  
    Start-SPEnterpriseSearchServiceInstance -Identity $hostA  
    

    2.Wait until the search service instance is running. At the Microsoft PowerShell command prompt, type the following command until the command returns the status Online:

    Get-SPEnterpriseSearchServiceInstance -Identity $<host n >  
    

    3.Clone the active search topology. At the Microsoft PowerShell command prompt, type the following command(s):

    $ssa = Get-SPEnterpriseSearchServiceApplication  
    $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa -Active  
    $clone = New-SPEnterpriseSearchTopology -SearchApplication $ssa -Clone -SearchTopology $active  
    

    4.Add a new index component and associate it with a partition. At the Windows PowerShell command prompt, type the following command(s):

    New-SPEnterpriseSearchIndexComponent -SearchTopology $clone -SearchServiceInstance <host n > -IndexPartition <Index partition number>  
    

    5.Activate the clone topology. At the Microsoft PowerShell command prompt, type the following command(s):

    Set-SPEnterpriseSearchTopology -Identity $clone  
    

    6.Verify that your new topology is active and that the index component representing the new index replica is added. At the Microsoft PowerShell command prompt, type the following command(s):

    Get-SPEnterpriseSearchTopology -Active -SearchApplication $ssa  
    

    7.Monitor the distribution of the existing index to the new replica. The added index replica will have the state Degraded until the distribution is finished. At the Microsoft PowerShell command prompt, type the following command(s):

    Get-SPEnterpriseSearchStatus -SearchApplication $ssa -Text  
    

    For Reference: Add an index replica to an existing index partition


    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.