Archive

Posts Tagged ‘Search’

Alto consumo CPU e memória noderunner.exe – SharePoint 2013

February 1, 2018 Leave a comment

CENÁRIO:

Olá!

Apesar de ter montando uma máquina virtual de desenvolvimento com um hardware razoável (gastar menos $$) sofri com consumo excessivo de CPU e memória em um servidor com SharePoint 2013, SQL Server 2008 R2 e Visual Studio 2017 instalado.

ERRO:

Não é um erro, mas é um comportamento pesado para um ambiente de desenvolvimento.

Picture1

SOLUÇÃO:

Analisando um pouco o comportamento do servidor para descobrir o “vilão” da jogada… notei que o processo “noderunner.exe” estava consumindo muita memória e CPU considerável.

Picture2

Noderunner.exe é um componente do serviço de busca do SharePoint 2013.

Para ambientes de Dev, podemos reduzir o consumo desse serviço. Principalmente se não estamos usando a busca do SharePoint 2013 no desenvolvimento. Inclusive, desabilitar o serviço.

No caso, eu precisava de um “pouco” de busca… :/

Então, utilizei os passos a seguir para reduzir o impacto da busca no consumo de recursos do servidor.

  1. Rode o cmdlet Powershell abaixo para reduzir o consumo de CPU

Set-SPEnterpriseSearchService -PerformanceLevel Reduced

  1. Altere o parâmetro “memoryLimitMegabytes” do arquivo “exe.config”. Por padrão, a configuração é “0” – ilimitado.

C:\Program Files\Microsoft Office Servers\15.0\Search\Runtime\1.0\noderunner.exe.config

Picture3

  1. Reinicie o serviço de busca do SharePoint com o cmdlet a seguir

Restart-Service SPSearchHostController

Picture4

Agora o servidor ganhou “algum” fôlego.

Informações adicionais: https://docs.microsoft.com/en-us/powershell/module/sharepoint-server/Set-SPEnterpriseSearchService?view=sharepoint-ps

Reduced: Total number of threads = number of processors, Max Threads/host = number of processors

Partly Reduced: Total number of threads = 4 times the number of processors , Max Threads/host = 16 time the number of processors

Maximum: Total number of threads = number of processors

Abraço!

 

Search has encountered a problem that prevents results from being returned. If the issue persists, please contact your administrator

September 8, 2014 Leave a comment

Olá! J

Cenário:

 

Após aplicar o SP1 no SharePoint 2013 e começar a validar os sites e serviços existentes da FARM encontrei um problema ao validar o funcionamento da busca/pesquisa dos sites que usam o serviço de busca do SharePoint.

 

ERRO:

Ao tentar utilizar a busca do site era apresentado o seguinte erro:

 

“Search has encountered a problem that prevents results from being returned. If the issue persists, please contact your administrator”

 

E ao pesquisar nos eventos gerados nos logs do SharePoint (ULS), encontrei o seguinte:

 

“SearchServiceApplicationProxy::Execute–Error occured: System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: Tried IMS endpoints for operation Execute: Operation sent to IMS failed:

 

Resource saturation, try again later. (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: Microsoft.SharePoint.SPException:

Tried IMS endpoints for operation Execute: Operation sent to IMS failed: Resource saturation, try again later.”

 

SOLUÇÃO:

 

O erro do ULS cita, talvez, um problema de “recursos disponíveis”… quando fala de “resource saturation”, mas ao checar a condição do servidor vi que só estava consumindo 10% de memória de RAM e o CPU estava uma utilização bem baixa. Então não pode ser falta de recurso.

 

Ao pesquisar um pouco mais, percebi que um dos serviços do SharePoint estava “congelado” no estado “Starting”… Ou seja, não conseguiu subir. Tentei reiniciar o serviço, mas sem sucesso. Continuou no estado “Starting”.

 

Nome do Serviço: Search Host Controller Service


 

Para corrigir, re-provisione o serviço com esse script powershell:

 

$sh = Get-SPServiceInstance | ? {$_.TypeName -eq “Search Host Controller Service”}
$sh.Unprovision()
$sh.Provision($true)

 

Ou este:

 

$SA = Get-SPServiceInstance | Where {$_.Status -like “Provisioning”}

$SA.Unprovision()

$SA.Provision()

 

Depois que executar com sucesso, o resultado esperado será o serviço iniciado corretamente e a busca voltará a funcionar.


Abraço!

Erros comuns ao configurar Serviço de Busca do SharePoint 2010

Olá! Smile

Cenário:

Post rápido com dois erros comuns na configuração do serviço de busca (Search) do SharePoint 2010.

Antes de se descabelar, percebam que as soluções desses dois erros são bem simples.

ERRO 1:

CoreResultsWebPart::OnInit: Exception initializing: System.NullReferenceException: Referência de objeto não definida para uma instância de um objeto. em Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart.SetPropertiesOnQueryReader() em Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart.OnInit(EventArgs e)

Se procurar no ULS do SharePoint poderá encontrar esse erro, quando estiver configurando o serviço de busca.

SOLUÇÃO 1:

Bem simples! Dê um IISRESET.

Como você acabou de configurar parte do serviço e o SharePoint já havia carregado os assemblies, agora precisamos fazer com que ele atualizar os assemblies.

ERRO 2:

Error: Access to the path ‘Global\Microsoft.SharePoint.SPIisProvisioningLock’ is denied

Se procurar no ULS do SharePoint poderá encontrar esse erro, quando estiver configurando o serviço de busca.

SOLUÇÃO 2:

Bem simples também! Reinicie os serviços de Timer (SPTimerV4) e Administration (SPAdminV4) do SharePoint.

Abraço!

Iniciando os serviços de Pesquisa do Windows SharePoint Services 3.0

September 2, 2009 Leave a comment

Overview

Neste artigo vamos explicar um pouco sobre o serviço de pesquisa presente no Windows SharePoint Services 3.0 e demonstrar como iniciar o serviço de pesquisa no site desejado.

O serviço de pesquisa do Windows SharePoint Services 3.0 melhorou muito em relação a sua versão anterior, agora ele usa a mesma engine que é utilizada no MOSS 2007 e não depende tanto de funções de pesquisa do SQL Server.

Um fato importante para se tomar nota, o serviço de pesquisa do WSS atende apenas um único conjunto de sites, ou seja, se você tiver diversos conjuntos de sites, cada um terá a sua própria pesquisa e não haverá cruzamento das informações. Outro fato, é que apenas podemos fazer busca no site atual e subsites, não sendo possível pesquisar um conteúdo que está em um site nível acima do atual.

Embora utilize a mesma engine de pesquisa do MOSS 2007, ele tem um escopo mais restrito de pesquisa, voltado apenas para pesquisa ao conteúdo do site. Diferente do WSS, a pesquisa do MOSS 2007 pode fazer pesquisas sem servidores de E-mail, servidores de aplicativos, sites da Web e/ou servidores de arquivos.

Informações adicionais sobre cada recurso presente nas edições do WSS e MOSS, assim como as funcionalidades de Search presentes em cada um, acesse: http://office.microsoft.com/en-us/sharepointserver/HA101978031033.aspx (Microsoft Office SharePoint Server 2007 products comparison download).

Solução

Para essa solução vou trabalhar com os seguintes produtos e tecnologias:

· Windows Server 2003 R2 com SP2;

· Windows SharePoint Services 3.0 com SP2;

· SQL Server 2005 com SP2;

A maioria dos recursos de pesquisa são configurados automaticamente durante a instalação do WSS.

Uma fonte de conteúdo (Content Source) é criada automaticamente para todo o conteúdo dos usuários da Web application. Nenhum detalhe de administração é exposto aos administradores do site. Quando é criado um novo site, a URL do site é adicionada aos endereços de início para a fonte de conteúdo.

Uma fonte de conteúdo é criada automaticamente para a Central Administration Web application. Assim garantimos que as informações de administração não serão listadas na pesquisa feita dentro do site.

Rastreamentos completos ocorrem conforme especificado no agendamento de rastreamento, como mostrado no passo 1.8, controlado pelo administrador na página de configuração da Central Administration.

Você deve iniciar o serviço Windows SharePoint Services Search em cada servidor que você deseja pesquisar conteúdo. Você deve iniciá-lo em pelo menos um dos seus servidores. Afinal, depois de instalar o Windows SharePoint Services, este serviço não está ativo.

Vamos aos passos:

1. Iniciar o serviço de pesquisa do Windows SharePoint Services:

1.1. Em Administrative Tools, abra o SharePoint Central Administration;

image

1.2. Na página home da Central Administration, clique em Operations;

1.3. Na página Operations, na seção Topology and Services, clique em Server in farm;

image

1.4. Na página Servers in Farm, clique no servidor em que você deseja iniciar o serviço de pesquisa do Windows SharePoint Services;

image

1.5. Depois de Windows SharePoint Services Search, clique em Start;

image

1.6. Na página de configuração do Windows SharePoint Services Search, na seção Service Account, especifique o usuário e senha no qual o serviço irá rodar;

1.7. Na seção Content Access Account, especifique o usuário e senha para conta que o serviço de busca irá utilizar para buscar o conteúdo no site. Esta conta deve ter acesso de leitura para todo o conteúdo que você quer buscar com o serviço. Se não entrar com credenciais, a mesma conta utilizada para o serviço de busca (especificada no passo anterior) será utilizada;

image

1.8. Na seção Indexing Schedule, aceite as configurações padrões, ou especifique a agenda em que o serviço irá indexar o conteúdo do site;

image

1.9. Depois que você configurou tudo, clique em Start.

image

1.9.1. Se retornar uma página de erro, informando que não foi possível configurar o serviço, como esta abaixo, provavelmente o usuário que você especificou não possui permissões de acesso ao banco de dados de conteúdo. Certifique-se de atribuir às permissões corretas ao usuário que você especificou para que o serviço funcione corretamente.

image

Pronto, neste ponto, configuramos o serviço de pesquisa do Windows SharePoint Services 3.0. Agora precisamos associar o Content Database para utilizar este servidor para buscas. Vamos aos passos:

2. Associando o Content Database com o serviço de pesquisa:

2.1. Na página home da Central Administration, clique em Application Management;

2.2. Na página Application Management, na seção SharePoint Web Application Management, clique em Content Databases;

image

2.3. Na página Manage Content Databases, clique na base de dados de conteúdo em que você deseja associar o serviço de pesquisa do Windows SharePoint Services;

image

2.4. Na página de configurações do Content Database, na seção Search Server, escolha o servidor de pesquisa que você quer associar com este Content Database, e clique em OK;

image

Agora o serviço de buscas do Windows SharePoint Services 3.0 já está ativo e configurado para realizar as buscas de conteúdo no site. De acordo com a agenda de indexação que estabelecemos no passo 1.8, o Windows SharePoint Services irá indexar o conteúdo. Depois do tempo estabelecido, faça os testes de busca.

Aqui vou colocar duas telas de pesquisa, uma feita Antes e outra Depois de configurar o serviço de buscas, percebam que pesquisei o mesmo termo “adicionado”:

image

image

Conclusão

Nesse artigo nós apresentamos como habilitar e configurar o serviço de buscas do Windows SharePoint Services 3.0.

Agora os usuários do site já conseguem utilizar o serviço de buscas no topo à direita do site para buscar conteúdo no site atual e níveis abaixo do site em que se encontra, ressaltando que o serviço não faz buscas em sites acima do atual.