Kuinka ratkaista 'Elasticsearch ei poistunut normaalisti' -virheestä Elasticsearch Docker Container -säilöä suoritettaessa?

Kuinka Ratkaista Elasticsearch Ei Poistunut Normaalisti Virheesta Elasticsearch Docker Container Sailoa Suoritettaessa



Elasticsearch on avoimen lähdekoodin ja kuuluisa analyyttinen hakukone, ja sitä käytetään usein tekoäly- ja koneoppimisen aloilla. Se tallentaa yleensä jäsentämätöntä, puolirakenteista ja strukturoitua dataa. Monien käyttäjien on asennettava Elasticsearch ja käytettävä sitä Docker-säilöissä sen suorittamiseksi eristetyissä ympäristöissä.

Suorittaessaan Elasticsearchia Linux-pohjaisessa Docker-säiliössä käyttäjät voivat kuitenkin kohdata ' Elasticsearch ei poistunut normaalisti tuntemattomasta syystä johtuvan virheen ja suosittelen tarkistamaan docker-cluster.log ”tiedosto.





Tämä artikkeli näyttää tavan ratkaista ' Elasticsearch ei poistunut normaalisti ' -virhe suoritettaessa Elasticsearch-säilöä Dockerissa.



Kuinka ratkaista 'Elasticsearch ei poistunut normaalisti' -virheestä Elasticsearch Docker Container -säilöä suoritettaessa?

Joskus Elasticsearch-säilö ei toiminut normaalisti, koska se suoritettiin Linux-säilössä, ja oletuksena sen virtuaalisen muistin raja on liian pieni. Tämä voi estää säilöä toimimasta oikein ja näyttää virheilmoituksen ' Elasticsearch ei poistunut normaalisti ' kuten alla:







Ilmoitettujen ongelmien ratkaisemiseksi käyttäjä voi lisätä virtuaalimuistin mmap-määrää Linux-säilön osalta seuraavien vaiheiden avulla.



Vaihe 1: Käynnistä Docker Desktop -sovellus WSL:llä

Käynnistä ensin Docker Desktop WSL:llä. Sen avulla voimme suorittaa ja hallita Linux-säilöjä Windowsissa:

wsl -d Docker-työpöytä

Vaihe 2: Lisää virtuaalimuistia

Suorita seuraavaksi alla oleva komento lisätäksesi virtuaalisen muistin rajaa Linux-säilöille:

sysctl -Sisään vm.max_map_count= 262144

Suorita sen jälkeen 'exit'-komento poistuaksesi WSL:stä:

Vaihe 3: Luo verkko

Luo nyt verkko Elasticsearch Docker -säilölle. Se on valinnainen, mutta siitä voi olla hyötyä Elasticsearch-verkkojen varmuuskopiointitarkoituksiin:

telakointiverkosto luo elastisuutta

Vaihe 4: Suorita Elasticsearch

Asenna nyt Elasticsearch-kuva ja suorita Elastic-haku säilössä:

telakkajuoksu --nimi es01 --netto elastinen -s 9200 : 9200 -s 9300 : 9300 -t docker.elastic.co / elastinen haku / elastinen haku:8.8.2

Yllä annetussa komennossa:

  • ' -nimi ” määrittää Elasticsearch-säilön nimen.
  • ' -netto ” -lippua käytetään ulkoisen verkon upottamiseen.
  • ' -s ” -vaihtoehto määrittää Elasticsearch-kontin portit.
  • ' -t ' käytetään määrittämään ' TTY-pseudo ” terminaali konttiin:

Alla oleva tulos osoittaa, että olemme suorittaneet Elasticsearch-säilön onnistuneesti ja ratkaisseet ' Elasticsearch ei poistunut normaalisti ”virhe.

Täällä säilö luo ' elastinen ”käyttäjän salasana. Näiden tunnistetietojen avulla käyttäjä voi käyttää Elasticsearchia selaimessa. Tämä luo myös tunnuksen Kibanan määrittämistä varten:

Vaihe 5: Vahvistus

Navigoida johonkin ' http://localhost:9200 ” selaimessasi ja tarkista, suoritetaanko säilö määritetyssä portissa vai ei:

Yllä oleva tulos osoittaa, että olemme suorittaneet kontin onnistuneesti portissa ' 9200 ' ja ratkaisi' Elasticsearch ei poistunut normaalisti ”virhe.

Johtopäätös

ratkaistaksesi ' Elasticsearch ei poistunut normaalisti ' -virhe, käyttäjien on lisättävä Linux-säilön virtuaalisen muistin rajaa. Käynnistä ensin Docker-työpöytä WSL:llä käyttämällä ' wsl -d docker-desktop ”komento. Suurenna sen jälkeen virtuaalimuistin rajaa käyttämällä ' sysctl -w vm.max_map_count=262144 ”komento. Suorita sitten kuva uudelleen luodaksesi ja käynnistääksesi Elasticsearch-säilön. Tämä viesti on havainnollistanut tapaa korjata 'Elasticsearch ei poistunut normaalisti' -virheestä.