Come risolvere l'errore 'Elasticsearch non è uscito normalmente' durante l'esecuzione del contenitore Docker di Elasticsearch?

Come Risolvere L Errore Elasticsearch Non E Uscito Normalmente Durante L Esecuzione Del Contenitore Docker Di Elasticsearch



Elasticsearch è un famoso motore di ricerca analitico open source ed è spesso utilizzato nei campi dell'intelligenza artificiale e dell'apprendimento automatico. Di solito memorizza dati non strutturati, semi-strutturati e strutturati. Molti utenti devono installare e utilizzare Elasticsearch nei container Docker per eseguirlo in ambienti isolati.

Tuttavia, durante l'esecuzione di Elasticsearch in un contenitore Docker basato su Linux, gli utenti potrebbero trovarsi di fronte al ' Elasticsearch non è uscito normalmente ” errore dovuto a un motivo sconosciuto e suggeriamo di controllare il “ docker-cluster.log ' file.







Questo articolo dimostrerà il metodo per risolvere il ' Elasticsearch non è uscito normalmente ” errore durante l'esecuzione del contenitore Elasticsearch in Docker.



Come risolvere l'errore 'Elasticsearch non è uscito normalmente' durante l'esecuzione del contenitore Docker di Elasticsearch?

A volte, il contenitore Elasticsearch non è stato eseguito normalmente a causa dell'esecuzione in un contenitore Linux e, per impostazione predefinita, il suo limite di memoria virtuale è troppo basso. Ciò può impedire l'esecuzione corretta del contenitore e visualizzare il messaggio di errore ' Elasticsearch non è uscito normalmente ' come mostrato di seguito:







Per risolvere i problemi indicati, l'utente può aumentare il conteggio mmap della memoria virtuale per il contenitore Linux utilizzando i seguenti passaggi.



Passaggio 1: avviare l'applicazione desktop Docker con WSL

Innanzitutto, avvia Docker Desktop con WSL. Ci consente di eseguire e gestire i container Linux su Windows:

wsl -D finestra mobile-desktop

Passaggio 2: aumentare la memoria virtuale

Successivamente, esegui il comando seguente per aumentare il limite di memoria virtuale per i contenitori Linux:

sysctl -In vm.max_map_count= 262144

Successivamente, esegui il comando 'exit' per uscire dal WSL:

Passaggio 3: creare una rete

Ora crea una rete per il contenitore Elasticsearch Docker. È facoltativo ma può essere utile ai fini del backup per le reti Elasticsearch:

la rete docker crea elastico

Passaggio 4: eseguire Elasticsearch

Ora, esegui l'immagine Elasticsearch per installare ed eseguire la ricerca elastica nel contenitore:

corsa del docker --nome es01 --netto elastico -P 9200 : 9200 -P 9300 : 9300 -T docker.elastic.co / elasticsearch / ricerca elastica:8.8.2

Nel comando sopra indicato:

  • -nome ” sta specificando il nome del contenitore Elasticsearch.
  • -netto Il flag ” viene utilizzato per incorporare la rete esterna.
  • -P L'opzione 'sta definendo le porte del contenitore Elasticsearch.
  • -T ” è usato per assegnare il “ TTY-pseudo ” terminale al contenitore:

L'output seguente mostra che abbiamo eseguito correttamente il contenitore Elasticsearch e risolto il problema ' Elasticsearch non è uscito normalmente ” errore.

Qui, il contenitore genererà il ' elastico ” password dell'utente. Utilizzando queste credenziali, l'utente può accedere a Elasticsearch sul browser. Questo genererà anche il token per configurare Kibana:

Passaggio 5: verifica

Navigare verso ' http://localhost:9200 ” nel tuo browser e verifica che, indipendentemente dal fatto che il contenitore venga eseguito sulla porta specificata o meno:

L'output sopra indica che abbiamo eseguito correttamente il contenitore sulla porta ' 9200 ” e risolto il “ Elasticsearch non è uscito normalmente ” errore.

Conclusione

Per risolvere il “ Elasticsearch non è uscito normalmente ” errore, gli utenti devono aumentare il limite di memoria virtuale per il contenitore Linux. Per fare ciò, prima avvia il desktop Docker con WSL usando ' wsl -d finestra mobile-desktop ” comando. Successivamente, aumenta il limite di memoria virtuale utilizzando il ' sysctl -w vm.max_map_count=262144 ” comando. Quindi, esegui nuovamente l'immagine per creare e avviare il contenitore Elasticsearch. Questo post ha illustrato il metodo per correggere l'errore 'Elasticsearch non è uscito normalmente'.