Com resoldre l'error 'Elasticsearch no ha sortit normalment' mentre s'executa Elasticsearch Docker Container?

Com Resoldre L Error Elasticsearch No Ha Sortit Normalment Mentre S Executa Elasticsearch Docker Container



Elasticsearch és un motor de cerca analític de codi obert i famós i s'utilitza amb freqüència en camps d'IA i aprenentatge automàtic. Normalment emmagatzema dades no estructurades, semiestructurades i estructurades. Molts usuaris han d'instal·lar i utilitzar Elasticsearch als contenidors Docker per executar-lo en entorns aïllats.

Tanmateix, mentre executeu Elasticsearch al contenidor Docker basat en Linux, els usuaris poden enfrontar-se al ' Elasticsearch no ha sortit amb normalitat ” error per un motiu desconegut i us suggerim que comproveu “ docker-cluster.log ' dossier.







Aquest article mostrarà el mètode de com resoldre el ' Elasticsearch no ha sortit amb normalitat ” error en executar el contenidor Elasticsearch a Docker.



Com resoldre l'error 'Elasticsearch no ha sortit normalment' mentre s'executa Elasticsearch Docker Container?

De vegades, el contenidor Elasticsearch no s'executava amb normalitat perquè s'executava en un contenidor Linux i, per defecte, el seu límit de memòria virtual és massa baix. Això pot impedir que el contenidor s'executi correctament i mostrar el missatge d'error ' Elasticsearch no ha sortit amb normalitat ” com es mostra a continuació:







Per resoldre els problemes indicats, l'usuari pot augmentar el recompte de mmap de la memòria virtual per al contenidor Linux mitjançant els passos següents.



Pas 1: inicieu l'aplicació d'escriptori Docker amb WSL

Primer, inicieu l'escriptori Docker amb WSL. Ens permet executar i gestionar contenidors Linux a Windows:

wsl -d docker-escriptori

Pas 2: augmenta la memòria virtual

A continuació, executeu l'ordre següent per augmentar el límit de memòria virtual per als contenidors Linux:

sysctl -En vm.max_map_count= 262144

Després d'això, executeu l'ordre 'sortir' per sortir del WSL:

Pas 3: creeu una xarxa

Ara, creeu una xarxa per al contenidor Elasticsearch Docker. És opcional, però pot ser beneficiós per a finalitats de còpia de seguretat per a xarxes Elasticsearch:

Docker network crea elasticitat

Pas 4: executeu Elasticsearch

Ara, executeu la imatge Elasticsearch per instal·lar i executar la cerca Elastic al contenidor:

Docker Run --nom es01 --net elàstic -p 9200 : 9200 -p 9300 : 9300 -t docker.elastic.co / elasticsearch / elasticsearch:8.8.2

A l'ordre anterior:

  • -nom ” està especificant el nom del contenidor Elasticsearch.
  • -net ” s'utilitza per incrustar la xarxa externa.
  • -p ” és definir els ports del contenidor Elasticsearch.
  • -t ' s'utilitza per assignar el ' TTY-pseudo ” terminal al contenidor:

La sortida següent mostra que hem executat correctament el contenidor Elasticsearch i hem resolt el ' Elasticsearch no ha sortit amb normalitat ” error.

Aquí, el contenidor generarà el ' elàstic ” contrasenya de l'usuari. Mitjançant aquestes credencials, l'usuari pot accedir a Elasticsearch al navegador. Això també generarà el testimoni per configurar Kibana:

Pas 5: verificació

Navegueu a ' http://localhost:9200 ” al vostre navegador i verifiqueu que, tant si el contenidor s'executa al port especificat com si no:

La sortida anterior indica que hem executat correctament el contenidor al port ' 9200 ' i va resoldre el ' Elasticsearch no ha sortit amb normalitat ” error.

Conclusió

Per resoldre el ' Elasticsearch no ha sortit amb normalitat ”, els usuaris han d'augmentar el límit de memòria virtual per al contenidor Linux. Per fer-ho, primer inicieu l'escriptori Docker amb WSL mitjançant ' wsl -d docker-desktop ' comandament. Després d'això, augmenta el límit de memòria virtual utilitzant el ' sysctl -w vm.max_map_count=262144 ' comandament. A continuació, torneu a executar la imatge per crear i iniciar el contenidor Elasticsearch. Aquesta publicació ha il·lustrat el mètode per solucionar l'error 'Elasticsearch no ha sortit normalment'.