Поделиться через


Управление компонентами поиска в SharePoint Server

 

**Применимо к:**SharePoint Server 2013, SharePoint Server 2016

**Последнее изменение раздела:**2017-09-08

Сводка. Узнайте, как использовать Windows PowerShell для управления компонентами поиска в существующей топологии поиска, содержащей контент в индексе поиска SharePoint Server. Приведенные здесь процедуры позволяют выполнить горизонтальное или вертикальное масштабирование топологии поиска для приложения службы поиска.

В процедурах и примерах данной статьи предполагается, что установлены SharePoint Server (SharePoint Server 2016) и приложение службы поиска, а также что существует топология поиска, а в индексе поиска SharePoint Server есть элементы. Если SharePoint Server и приложение службы поиска установлены недавно и в индексе поиска SharePoint Server нет элементов, следуйте процедурам, описанным в статье Изменение топологии поиска по умолчанию в SharePoint Server.

Процедуры в этой статье применимы к следующим компонентам поиска:

  • Компонент обработки аналитических данных

  • Компонент обработки контента

  • Компонент обхода

  • Компонент администрирования поиска

  • Компонент обработки запросов

Дополнительные сведения о процедурах управления компонентом индекса см. в статье Управление компонентом индекса в SharePoint Server.

В этой статье

  • Перед началом работы

  • Запуск экземпляра службы поиска на сервере

  • Извлечение активной топологии поиска

  • Клонирование активной топологии поиска

  • Добавление компонента поиска

  • Удаление компонента поиска

  • Перемещение компонента поиска

  • Активация топологии поиска

Перед началом работы

Перед началом работы убедитесь, что соблюдаются следующие требования.

  • Установлен SharePoint Server, и создано приложение службы поиска с топологией поиска. Приложения-служба поиска находится в работоспособном состоянии и не приостановлено.

  • Учетная запись, используемая для выполнения процедур в этой статье, входит в группу администраторов фермы.

  • Вы спланировали целевую топологию поиска.

  • Выполнена установка SharePoint Server на всех серверах, на которых будут размещаться компоненты поиска. Серверы добавлены в ферму, и вы являетесь администратором на этих серверах. Вы можете создать новые серверы приложений или назначить серверы приложений в существующем развертывании.

Важно!

Процедуры в данной статье используют Microsoft PowerShell. Можно выполнять команды Microsoft PowerShell на любом сервере в ферме. Но если выполняется несколько процедур топологии поиска, следует использовать одну версию командной консоли Командная консоль SharePoint 2016 для всех команд Microsoft PowerShell, чтобы можно было совместно использовать ссылки на объекты Microsoft PowerShell в командах.

Запуск экземпляра службы поиска на сервере

Перед добавлением компонентов поиска на новый сервер необходимо запустить экземпляр службы поиска на сервере. Экземпляр службы поиска запускает все необходимые службы Windows, используемые службой поиска (OSearch16 и SPSearchHostController).

Запуск экземпляра службы поиска

  1. Убедитесь, что учетная запись пользователя, с помощью которой выполняется данная процедура, является участником группы администраторов фермы.

  2. Запустите командную консоль Командная консоль SharePoint на одном из серверов в ферме.

  3. В командной строке Microsoft PowerShell введите следующие команды:

    $<host n> = Get-SPEnterpriseSearchServiceInstance -Identity "<Server name>"
    Start-SPEnterpriseSearchServiceInstance -Identity $<host n>
    

    Где:

    • $<host n> указывает ссылку на объект PowerShell для экземпляра службы поиска.

    • <Server name> определяет сервер, на который нужно добавить компонент индекса. Значение должно быть допустимым идентификатором GUID в формате 12345678-90ab-cdef-1234-567890bcdefgh, допустимым именем сервера (например, myserver1) или экземпляром допустимого объекта SearchServiceInstance.

    Например:

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

    Ссылки ($<host n>) используются для указания целевого сервера при добавлении компонентов поиска.

  4. Дождитесь запуска всех экземпляров служб поиска. Для каждого из них в командной строке Microsoft PowerShell введите следующую команду, пока не будет возвращено состояние В сети (Online).

    Get-SPEnterpriseSearchServiceInstance -Identity $<host n>
    

    Например:

    Get-SPEnterpriseSearchServiceInstance -Identity $hostA
    TypeName    : SharePoint Server Search
    Description : Index content and serve search queries
    Id          : 82ce8815-ecbd-4cf3-a98e-33f20bd86039
    Server      : SPServer Name=myserver1.example.com
    Service     : SearchService Name=OSearch16
    Role        : None
    Status      : Online
    

Извлечение активной топологии поиска

Чтобы просмотреть активную топологию поиска для приложения службы поиска, необходимо извлечь ее с помощью Microsoft PowerShell.

Просмотр активной топологии поиска

  1. Убедитесь, что учетная запись пользователя, с помощью которой выполняется данная процедура, является участником группы администраторов фермы.

  2. Запустите командную консоль Командная консоль SharePoint. Если вы уже открыли командную консоль Командная консоль SharePoint, из которой были созданы ссылки на объекты Microsoft PowerShell с возможностью многократного использования, применяйте ее.

  3. В командной строке Microsoft PowerShell введите следующую команду.

    $ssa = Get-SPEnterpriseSearchServiceApplication
    $active = Get-SPEnterpriseSearchTopology -Active -SearchApplication $ssa 
    $active
    

Эта команда возвращает сведения об активной топологии, например: TopologyId : 2d7bb046-1ad4-43a9-9984-754c4551a3ec CreationDate : 25.01.2016 03:06:00 State : Active ComponentCount : 6

Извлечение списка компонентов поиска

Чтобы просмотреть список и свойства компонентов поиска в активной топологии поиска, следует использовать Microsoft PowerShell. Одно из свойств компонента поиска — идентификатор компонента поиска. Он потребуется только для удаления компонента поиска.

Просмотр списка всех компонентов поиска

  1. Убедитесь, что учетная запись пользователя, с помощью которой выполняется данная процедура, является участником группы администраторов фермы.

  2. Запустите командную консоль Командная консоль SharePoint. Если вы уже открыли командную консоль Командная консоль SharePoint 2016, из которой были созданы ссылки на объекты Командная консоль SharePoint с возможностью многократного использования, применяйте ее.

  3. В командной строке Microsoft PowerShell введите следующие команды:

    $ssa = Get-SPEnterpriseSearchServiceApplication
    $active = Get-SPEnterpriseSearchTopology -SearchApplication $ssa -Active
    Get-SPEnterpriseSearchComponent -SearchTopology $active
    

    Команда возвращает список компонентов поиска в активной топологии поиска и их свойства.

Клонирование активной топологии поиска

Чтобы внести изменения в топологию поиска в установке поиска с элементами в индексе, сначала требуется создать объект топологии. Этот объект, клон активной топологии, изменяется за счет добавления или удаления компонентов поиска. После изменения клона объекта топологии клон нужно сделать активной топологией.

Клонирование активной топологии

  1. Убедитесь, что учетная запись пользователя, с помощью которой выполняется данная процедура, является участником группы администраторов фермы.

  2. Запустите командную консоль Командная консоль SharePoint. Если вы уже открыли командную консоль Командная консоль SharePoint, из которой были созданы ссылки на объекты Microsoft PowerShell с возможностью многократного использования, применяйте ее.

  3. В командной строке Microsoft PowerShell введите следующие команды:

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

    Эта команда создает клон топологии поиска, на который можно ссылаться с помощью переменной $clone, если вы продолжите использовать ту же командную консоль Командная консоль SharePoint для добавления и удаления компонентов поиска и активации топологии поиска.

  4. (Необязательно) Если вам нужно удалить компоненты поиска из топологии поиска, потребуется извлечь идентификатор компонента поиска. В командной строке Microsoft PowerShell введите следующие команды:

    Get-SPEnterpriseSearchComponent -SearchTopology $clone
    

    Команда возвращает список компонентов поиска в клонированной топологии поиска и их свойства, в том числе идентификатор компонента поиска.

Добавление компонента поиска

Нельзя изменить активную топологию поиска напрямую. Эта процедура предполагает, что вы создали клон объекта топологии, как описано в разделе Клонирование активной топологии поиска. Для каждого компонента можно использовать следующие командлеты Microsoft PowerShell:

  • New-SPEnterpriseSearchAdminComponent;

  • New-SPEnterpriseSearchAnalyticsProcessingComponent;

  • New-SPEnterpriseSearchContentProcessingComponent;

  • New-SPEnterpriseSearchCrawlComponent;

  • New-SPEnterpriseSearchQueryProcessingComponent.

Примечание

Процедура добавления компонента индекса отличается от этой процедуры. Дополнительные сведения см. в статье Управление компонентом индекса в SharePoint Server.

Добавление компонента поиска

  1. Убедитесь, что учетная запись пользователя, с помощью которой выполняется данная процедура, является участником группы администраторов фермы.

  2. Запустите командную консоль Командная консоль SharePoint. Если вы уже открыли командную консоль Командная консоль SharePoint, из которой были созданы ссылки на объекты Microsoft PowerShell с возможностью многократного использования, применяйте ее.

  3. В командной строке Microsoft PowerShell введите следующие команды:

    New-SPEnterpriseSearch<SearchComponent> -SearchTopology $clone -SearchServiceInstance $<host n>
    

    Где:

    • <SearchComponent> — имя добавляемого типа компонента поиска.

    • $clone — это клонированная топология, которую вы изменяете. См. раздел Клонирование активной топологии поиска.

    • $<host n> — это ссылка на объект PowerShell на запущенный экземпляр службы поиска, в который нужно добавить компонент поиска. См. раздел Запуск экземпляра службы поиска на сервере.

    Например, следующая команда добавляет компонент обработки контента в клонированную топологию на сервере, заданную ссылкой на экземпляр службы поиска $hostA.

    New-SPEnterpriseSearchContentProcessingComponent -SearchTopology $clone -SearchServiceInstance $hostA
    
  4. Убедитесь, что новый компонент поиска был добавлен в клонированную топологию. В командной строке Microsoft PowerShell введите следующую команду:

    Get-SPEnterpriseSearchComponent -SearchTopology $clone
    

Удаление компонента поиска

Чтобы удалить компонент поиска, используется Windows PowerShell. Нельзя изменить активную топологию поиска напрямую. Эта процедура предполагает, что вы создали клон объекта топологии, как описано в разделе Клонирование активной топологии поиска.

Примечание

Процедура удаления компонента индекса отличается от этой процедуры. Дополнительные сведения см. в статье Управление компонентом индекса в SharePoint Server.

Удаление компонента поиска

  1. Убедитесь, что учетная запись пользователя, с помощью которой выполняется данная процедура, является участником группы администраторов фермы.

  2. Запустите командную консоль Командная консоль SharePoint. Если вы уже открыли командную консоль Командная консоль SharePoint, из которой были созданы ссылки на объекты Microsoft PowerShell с возможностью многократного использования, применяйте ее.

  3. Убедитесь, что текущая активная топология функционирует и что компонент поиска, который вы собираетесь удалить, активен. Просмотрите состояние топологии поиска на странице "Администрирование поиска" в Центре администрирования или выполните командлет Windows PowerShell Get-SPEnterpriseSearchStatus.

  4. В командной строке Microsoft PowerShell введите следующие команды:

    Remove-SPEnterpriseSearchComponent -Identity <Search component id> -SearchTopology $clone
    

    Где:

    • <Search component id> — идентификатор компонента поиска, который вы хотите удалить. Используйте идентификатор компонента поиска из клонированной топологии. Извлечение идентификатора компонента поиска рассматривается на шаге 4 раздела Клонирование активной топологии поиска.

    • $clone — это клонированная топология, которую вы изменяете. См. раздел Клонирование активной топологии поиска.

  5. При появлении соответствующего запроса подтвердите удаление компонента поиска.

Перемещение компонента поиска

Если вы хотите переместить компонент поиска с одного сервера на другой, рекомендуется добавить новый компонент поиска в топологию поиска перед удалением старого компонента.

Перемещение компонента поиска

  1. Клонируйте активную топологию поиска. См. раздел Клонирование активной топологии поиска.

  2. Добавьте новый компонент поиска на сервер, на котором он будет размещаться. См. раздел Добавление компонента поиска.

  3. Активируйте топологию поиска. Она будет содержать один лишний компонент поиска. См. раздел Активация топологии поиска.

  4. Убедитесь, что текущая активная топология функционирует. Просмотрите состояние топологии поиска на странице "Администрирование поиска" в Центре администрирования или выполните командлет Windows PowerShell Get-SPEnterpriseSearchStatus.

  5. Клонируйте активную топологию поиска еще раз. См. раздел Клонирование активной топологии поиска.

  6. Удалите лишний компонент поиска. См. раздел Удаление компонента поиска.

  7. Активируйте топологию поиска еще раз. См. раздел Активация топологии поиска.

Активация топологии поиска

Чтобы активировать топологию поиска, используется Windows PowerShell.

Активация топологии поиска

  1. Убедитесь, что учетная запись пользователя, с помощью которой выполняется данная процедура, является участником группы администраторов фермы.

  2. Запустите командную консоль Командная консоль SharePoint. Если вы уже открыли командную консоль Командная консоль SharePoint, из которой были созданы ссылки на объекты Microsoft PowerShell с возможностью многократного использования, применяйте ее.

  3. В командной строке Microsoft PowerShell введите следующие команды:

    Set-SPEnterpriseSearchTopology -Identity $clone
    

    Где:

    • $clone — это клонированная топология, которую вы изменяете. См. раздел Клонирование активной топологии поиска.
  4. Убедитесь, что новая топология активна. В командной строке Windows PowerShell введите следующие команды:

    Get-SPEnterpriseSearchTopology -Active -SearchApplication $ssa
    

    Эта команда возвращает общие сведения об активных и неактивных топологиях, например:

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

    Вы увидите, что число компонентов активной топологии отражает внесенные изменения.