Eu tenho um servidor Windows 2008R2 executando o NSClient ++. Por alguma razão, o serviço alterou suas calcinhas e parou de responder às pesquisas do Nagios.
Quando tentei reiniciar o serviço, o gerente de serviço leva muito tempo para tentar matá-lo e, em seguida, desiste de uma mensagem parecida com "o serviço demorou muito para responder". Mas ... também inicia uma nova instância do serviço.
Se eu procurar no Gerenciador de tarefas ou tasklistagora posso ver duas instâncias de nsclient++.exeexecução.
Eu tentei matar os dois usando:
clique direito e "Finalizar processo" no gerenciador de tarefas - finge interromper o processo e não reporta erros (por exemplo, Acesso negado), mas o processo ainda está lá.
taskkill /PID <proc id> /F- relatórios,SUCCESS: The process with PID 6672 has been terminated.mas o processo ainda está em execução.baixou o SysInternals PsTools e executou
pskill <PID>- relatóriosProcess <PID> killed- mas o processo ainda está lá.execute
at hh:mm pskill <PID>parapskillfazer isso como aSYSTEMconta ... e você adivinhou que o processo ainda está em execução.
Todos os itens acima foram executados em um prompt de comando do administrador.
Além de uma reinicialização que não é realmente ideal (a caixa é um servidor de produção bastante crítico), o que mais posso tentar?
O servidor não está sob nenhuma pressão de recurso (memória, CPU, disco, etc.) e tudo o que está sendo executado está funcionando perfeitamente.
Uma rápida olhada na guia de threads no SysInternals Process Explorer mostra que todas essas nsclient++.exeinstâncias estão descarregando emperradas:

Além disso, eu também tentei matar todas as conexões TCP para esses processos zumbi (?) (Com TCPView) na esperança de poder iniciar uma nova instância e poder pegar a porta 5666. Em seguida, poderíamos reiniciar o servidor quando as coisas estão mais calmas, mas infelizmente isso não funcionou.
Stack, como é a pilha dos threads presos?