★★★★★FireGrass★★★★★

※※※※※ΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞΞジ
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

SharePoint 2013 从默认搜索拓扑更改为小型企业级搜索拓扑

Posted on 2013-08-06 09:39  火草  阅读(195)  评论(0)    收藏  举报

正如目标搜索拓扑表中所规划的,以下过程将在多台服务器上创建和激活一个小型企业级搜索拓扑。该小型企业级搜索拓扑可满足包含多达 1000 万个项目的搜索索引的需要。目标搜索拓扑使用物理应用程序服务器上的虚拟机。本示例中的所有搜索组件均设置为具有容错能力,这意味着可跨多个物理机在不同的故障域中部署所有搜索组件和索引分区。

本示例中的过程说明如何扩展到建议的小型企业级搜索拓扑。如果要扩展到更大型企业级搜索拓扑或 Internet 网站搜索拓扑,则可以使用不同的变量执行相同的过程。

目标搜索拓扑

虚拟机 A(在物理应用程序服务器 X 上) myserver1.example.com虚拟机 B(在物理应用程序服务器 X 上) myserver2.example.com虚拟机 C(在物理应用程序服务器 Y 上) myserver3.example.com虚拟机 D(在物理应用程序服务器 Y 上) myserver4.example.com

管理组件 1

爬网组件 1

内容处理组件 1

分析处理组件 1

 

查询处理组件 1

索引组件 1(属于索引分区 0)

 

 

管理组件 2

爬网组件 2

内容处理组件 2

分析处理组件 2

 

查询处理组件 2

索引组件 2(属于索引分区 0)

 

 

 

  1. 确保承载管理中心的服务器上没有启动任何爬网且搜索索引为空。

    1. 确认执行此过程的用户帐户是 Search Service 应用程序的管理员。

    2. 在管理中心的“应用程序管理”部分,单击“管理服务应用程序”。

    3. 在“管理服务应用程序”页上的服务应用程序列表中,单击“Search Service 应用程序”。

    4. 确认搜索索引为空。在“搜索管理”页上的“系统状态”下,确认“可搜索项”中显示“0”。

      Warning警告:

      如果搜索索引中包含项目,请不要继续此过程。

       

    5. 确保未启动任何爬网。在“搜索管理”页上的“爬网”下,单击“内容源”。在“管理内容源”页上,确保任何现有内容源的“状态”列中显示“空闲”。

  2. 在服务器场中的某个服务器上启动 SharePoint 2013 Management Shell。

    • 对于 Windows Server 2008 R2:

      • 在“开始”菜单上,单击“所有程序”,单击“Microsoft SharePoint 2013 产品”,然后右键单击“SharePoint 2013 Management Shell”,最后单击“以管理员身份运行”。

    • 对于 Windows Server 2012:

      1. 在“开始”屏幕上,右键单击“SharePoint 2013 Management Shell”,然后单击“以管理员身份运行”。

        如果“SharePoint 2013 Management Shell”不在“开始”屏幕上:

      2. 右键单击“计算机”,单击“所有应用程序”,然后右键单击“SharePoint 2013 Management Shell”,最后单击“以管理员身份运行”。

    有关如何与 Windows Server 2012 进行交互的详细信息,请参阅常见管理任务和 Windows Server 2012 中的导航

  3. 指定要向其中添加搜索组件的新服务器,在这些服务器上启动搜索服务实例 (ssi) 并创建对这些搜索服务实例的引用。如目标搜索拓扑表中所示,我们对这些服务器使用示例主机名“myserver<n>.example.com”。在 Windows PowerShell 命令提示符处,键入以下命令:

    $hostA = Get-SPEnterpriseSearchServiceInstance -Identity "myserver1.example.com"
    $hostB = Get-SPEnterpriseSearchServiceInstance -Identity "myserver2.example.com"
    $hostC = Get-SPEnterpriseSearchServiceInstance -Identity "myserver3.example.com"
    $hostD = Get-SPEnterpriseSearchServiceInstance -Identity "myserver4.example.com"
    Start-SPEnterpriseSearchServiceInstance -Identity $hostA
    Start-SPEnterpriseSearchServiceInstance -Identity $hostB
    Start-SPEnterpriseSearchServiceInstance -Identity $hostC
    Start-SPEnterpriseSearchServiceInstance -Identity $hostD
    
    
  4. 稍等片刻,直到所有搜索服务实例开始运行。在 Windows PowerShell 命令提示符处,键入以下命令,直到这些命令为每个搜索服务实例返回状态“联机”:

    Get-SPEnterpriseSearchServiceInstance -Identity $hostA
    Get-SPEnterpriseSearchServiceInstance -Identity $hostB
    Get-SPEnterpriseSearchServiceInstance -Identity $hostC
    Get-SPEnterpriseSearchServiceInstance -Identity $hostD
    
  5. 创建一个新搜索拓扑以及对该新搜索拓扑的引用。在 Windows PowerShell 命令提示符处,键入以下命令:

    $ssa = Get-SPEnterpriseSearchServiceApplication
    $newTopology = New-SPEnterpriseSearchTopology -SearchApplication $ssa
    
    
  6. 将所有搜索组件添加到新搜索拓扑中。以下 Windows PowerShell 命令将创建新拓扑的搜索组件并将这些组件分配到新服务器。在此小型企业级搜索拓扑中,有一个索引分区(索引分区 0)可容纳多达 1000 万个项目。它在命令 New-SPEnterpriseSearchIndexComponent 中表示为 -IndexPartition 参数。该索引分区在虚拟机 B 和虚拟机 D 上分别有一个索引副本。每个索引副本都将包含完全相同的搜索索引且将托管在不同的物理服务器上以实现容错。在 Windows PowerShell 命令提示符处,键入以下命令:

    New-SPEnterpriseSearchAdminComponent -SearchTopology $newTopology -SearchServiceInstance $hostA
    New-SPEnterpriseSearchCrawlComponent -SearchTopology $newTopology -SearchServiceInstance $hostA
    New-SPEnterpriseSearchContentProcessingComponent -SearchTopology $newTopology -SearchServiceInstance $hostA
    New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchTopology $newTopology -SearchServiceInstance $hostA
    New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $newTopology -SearchServiceInstance $hostB
    New-SPEnterpriseSearchIndexComponent -SearchTopology $newTopology -SearchServiceInstance $hostB -IndexPartition 0
    New-SPEnterpriseSearchAdminComponent -SearchTopology $newTopology -SearchServiceInstance $hostC
    New-SPEnterpriseSearchCrawlComponent -SearchTopology $newTopology -SearchServiceInstance $hostC
    New-SPEnterpriseSearchContentProcessingComponent -SearchTopology $newTopology -SearchServiceInstance $hostC
    New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchTopology $newTopology -SearchServiceInstance $hostC
    New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $newTopology -SearchServiceInstance $hostD
    New-SPEnterpriseSearchIndexComponent -SearchTopology $newTopology -SearchServiceInstance $hostD -IndexPartition 0 
    
    
  7. 激活新的搜索拓扑。在 Windows PowerShell 命令提示符处,键入以下命令:

    Set-SPEnterpriseSearchTopology -Identity $newTopology
    
  8. 如果激活失败,删除搜索拓扑命令:

    Remove-SPEnterpriseSearchTopology -Identity $newTopology
    
  9. 确认新搜索拓扑处于活动状态。在 Windows PowerShell 命令提示符处,键入以下命令:

    Get-SPEnterpriseSearchTopology -SearchApplication $ssa
    
    

    该命令返回活动和非活动拓扑的概述,在本例中:

    TopologyId     : fce8507d-61c6-4498-8038-4fd2d0a62c6e
    CreationDate   : 1/30/2012 2:52:00 AM
    State          : Inactive
    ComponentCount : 6
    
    TopologyId     : b63d48b2-df5c-41be-a7f4-9abaee483611
    CreationDate   : 1/30/2012 4:30:00 AM
    State          : Active
    ComponentCount : 12
    

    以前的拓扑(本例中的默认拓扑)列为非活动。本例中的新活动拓扑将具有 12 个组件。

  10. 确认新搜索拓扑的所有组件均正常运行。在 Windows PowerShell 命令提示符处,键入以下命令:

    Get-SPEnterpriseSearchStatus -SearchApplication $ssa -Text
    

    此命令应返回所有活动搜索组件的列表。活动搜索组件的状态应显示为“活动”。。

  11. 异常:Topology activation failed. Each partition must have at least one index component from the previous topology in the new topology, in the same host.

    确认HostA是承载管理中心的服务器