Не запускается служба SharePoint Search Host Controller

Проблема: постоянно перезапускается служба SharePoint Search Host Controller

На одном из моих серверов в ферме SharePoint 2013 неожиданно стала наблюдаться следующая проблема. Служба SharePoint Search Host Controller стала постоянно рестартовать, а в логах сервера присутствовали следующие ошибки:


The SharePoint Search Host Controller service terminated unexpectedly.  It has done this 132 time(s).  The following corrective action will be taken in 30000 milliseconds: Restart the service.
Faulting application name: hostcontrollerservice.exe, version: 15.0.4521.1000, time stamp: 0x519e34b4
Faulting module name: KERNELBASE.dll, version: 6.3.9600.17415, time stamp: 0x54505736
Exception code: 0xe0434352
Fault offset: 0x0000000000008b9c
Faulting process id: 0x390c
Faulting application start time: 0x01d1ead8402a927c
Faulting application path: C:\Program Files\Microsoft Office Servers\15.0\Search\HostController\hostcontrollerservice.exe
Faulting module path: C:\Windows\system32\KERNELBASE.dll

Application: hostcontrollerservice.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: Microsoft.Ceres.HostController.Controller.HostControllerException
Stack:
at Microsoft.Ceres.HostController.WcfServer.WcfService.StartService()
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.ThreadHelper.ThreadStart()
In Search Administration -> Search Application Topology there are only Admin and Crawler components run on problematic server.

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

Способ 1

Попробуйте на проблемном сервере открыть файл node.ini, который расположен в
С:\Program Files\Microsoft Office Server\15.0\Data\Office Server\Applications\Search\Nodes\XXXXXX\ContentProcessingComponent1\Configuration\Local\.
Примечание: Вместо диска «C» может быть другая буква.  Вместо «XXXXXX» у вас будет свой каталог.
Если файл node.ini пустой, то это означает, что он поврежден. Нужно скопировать его с любого другого рабочего сервера в ферме и перезапустить службу Search Host Controller в Sharepoint Central Administration.

Способ 2

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

  1. Отключите запуск службы SharePoint Search Host Controller.
  2. Удалите все содержимое каталога С:\Program Files\Microsoft Office Server\15.0\Data\Office Server\Applications\Search\Nodes\XXXXXX\.
  3. Запустите службу SharePoint Search Host Controller.
    После этого приложение поиска SharePoint самостоятельно пересоздаст все содержимое в этой папке, используя текущую топологию поиска.
  4. В конце рекомендую почистить кэш конфигурации на серверах.

Для очистки кэша выполните следующие шаги:

  • Остановите службу SharePoint 2010 Time.
  • Откройте в проводнике каталог С:\ProgramData\Microsoft\SharePoint\Config\<GUID>. Если у вас больше одного GUID в каталоге Config, то выберите тот, у которого дата изменения последняя.
  • Сделайте резервные копию содержимого и затем удалите все файлы с расширением xml.
  • Откройте файл cache.ini в любом редакторе. Удалите все и запишите одну цифру 1, затем сохраните файл.
  • Запустите службу SharePoint 2010 Timer.
  • Проверьте, что в каталоге начали появляться файлы xml.

Также для очистки кэша конфигурации можно воспользоваться следующим скриптом.

Через какое-то время проверьте состояние топологии поиска в SharePoint Central Administration.

Тимлид команды системных администраторов Windows-инфраструктуры с 20-летним опытом. Специализация: сопровождение серверов Windows, Active Directory, Hyper-V, PowerShell-автоматизация, мониторинг.