Iniciar e parar os nós de pesquisa elasticasno windows
estou a tentar iniciar a pesquisa elastica como um processo e pará-lo sem fechar o prompt de comando. Para criar um novo processo, estou usando:
C:\Users\User1\Desktop\Work\ElasticSearch\elasticsearch-1.3.1\bin>start /B elasticsearch
C:\Users\User1\Desktop\Work\ElasticSearch\elasticsearch-1.3.1\bin>start /B elasticsearch
C:\Users\User1\Desktop\Work\ElasticSearch\elasticsearch-1.3.1\bin>[2014-08-19 15:23:26,351][WARN ][bootstrap ] jvm uses the c
lient vm, make sure to run `java` with the server vm for best performance by adding `-server` to the command line
[2014-08-19 15:23:26,433][INFO ][node ] [Batroc the Leaper] version[1.3.1], pid[5800], build[2de6dc5/2014-07-28T14:45:15
Z]
o processo funciona no Porto 9200.
Como É Que Consigo que o PID do processo ou o nome usem o taskkill para matar este processo usando este comando ou algo semelhante quer a linha de comandos já aberta quer a linha de comandos existente na qual o processo do nó elasticsearch está a correr:
taskkill /PID <pid>
Pid de 5800(mostrado em o registo do processo na consola acima) não funcionou. O Gerenciador de tarefas do Windows não tinha um processo pelo nome elasticsearch. Ele só tem um processo cmd para o comando prompt no qual a busca elastica está em execução e quando eu matar esse processo, a busca elastica também é morta.
2 answers
Eu instalaria e executaria a pesquisa elastica como um serviço Windows:
Os utilizadores do Windows podem configurar a pesquisa elastica a executar como um serviço a executar em segundo plano ou iniciar automaticamente no arranque sem qualquer utilizador interaccao. Isto pode ser conseguido através do serviço.programa bat sob bin / pasta que permite instalar, remover, gerir ou configurar o serviço e, potencialmente, Iniciar e parar o serviço, Tudo a partir do comando.
Http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/setup-service-win.html
Deixe-nos executar comandos como iniciar e parar para executar e terminar a pesquisa elastica de um programa sem ter de seguir os ids do processo ou manter a mesma linha de comandos aberta.
Actualização:
Para executar várias instâncias de pesquisa elastica ao mesmo tempo que os serviços que você terá de passar em um serviceid único ao instalar o serviço:
O programa necessita de um parâmetro (o comando a executar) seguido de um opcional que indique o ID do serviço (útil ao instalar vários serviços de pesquisa elastica).
Em relação ao porto e endereço IP que o ES está a correr nele não deve ser diferente-mas eu verificaria os seus ficheiros de configuração (elasticsearch.yml) e a sua configuração de registo(registo.yml). Mais detalhes sobre as opções de configuração toma.
Http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/setup-configuration.html
Se você instalar a Elasticsearch como um serviço no Windows , poderá iniciar/parar no painel de controlo dos serviços, mais informações como iniciar/parar usar o CMD ver na ligação.
O caminho acima é conveniente e correto. Eu tento outras maneiras de parar a busca elastica e gravar aqui,
Antes de conhecer o método acima, primeiro acho que ElasticSearch pode ser um processo no Gestor de Tarefas, então eu encontrei pelo nome e realmente encontrei um nome de processo {[[0]}, mas depois de matar esse processo, ainda posso obter informações de ElasticSearch de {[[1]} que é a porta de ElasticSearch no meu computador, o que significa que a ElasticSearch ainda está em execução.
Mais tarde, pensei que talvez pudesse matá-lo até port
, encontrei um artigo a usar o PowerShell para matar o processo pelo porto , por isso comecei uma PowerShell, depois executei Stop-Process -Id (Get-NetTCPConnection -LocalPort 9200).OwningProcess -Force
, e ela diz-me:
Processo de paragem: Não pode parar "java (22356)" processo de Acesso negado. + Stop-Process-Id (Get-NetTCPConnection-LocalPort 9200).Processo de posse ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : CloseError: (System.Diagnostico.Process (java):Process) [Stop-Process],ProcessCommandException
Isso pode ser causado por não ser executado como administrador, mas a partir da informação que posso dizer que o processo real executando ElasticSearch é java.exe
, e seu ID de Processo é 22356, depois de matar java.exe a usar o Gestor de Tarefas, não consigo ligue-se a http://localhost:9200/
, o que significa que parei com sucesso a pesquisa elastica.