Az Elasticsearch egy nyílt forráskódú és híres analitikai keresőmotor, amelyet gyakran használják a mesterséges intelligencia és a gépi tanulás területén. Általában strukturálatlan, félig strukturált és strukturált adatokat tárol. Sok felhasználónak telepítenie és használnia kell az Elasticsearch alkalmazást a Docker-tárolókban, hogy izolált környezetben is végrehajthassa.
Az Elasticsearch Linux alapú Docker tárolóban való futtatása közben azonban a felhasználók szembesülhetnek a „ Az Elasticsearch nem ment ki rendesen ' hiba ismeretlen okból, és javasoljuk, hogy ellenőrizze a ' docker-cluster.log ” fájlt.
Ez a cikk bemutatja, hogyan lehet megoldani a ' Az Elasticsearch nem ment ki rendesen ” hiba az Elasticsearch tároló futtatásakor a Dockerben.
Hogyan lehet megoldani az „Elasticsearch nem jött ki rendesen” hibát az Elasticsearch Docker Container futtatása közben?
Előfordulhat, hogy az Elasticsearch tároló nem fut rendesen, mert Linux-tárolóban fut, és alapértelmezés szerint a virtuális memória korlátja túl alacsony. Ez leállíthatja a tároló megfelelő végrehajtását, és a következő hibaüzenetet jelenítheti meg: ' Az Elasticsearch nem ment ki rendesen ” az alábbiak szerint:
A felsorolt problémák megoldása érdekében a felhasználó a következő lépésekkel növelheti a virtuális memória mmap-számát a Linux-tárolóhoz.
1. lépés: Indítsa el a Docker Desktop alkalmazást WSL-lel
Először indítsa el a Docker Desktopot WSL-lel. Lehetővé teszi számunkra a Linux-tárolók futtatását és kezelését Windows rendszeren:
wsl -d dokkoló-asztal
2. lépés: Növelje a virtuális memóriát
Ezután futtassa az alábbi parancsot a Linux-tárolók virtuális memóriakorlátjának növeléséhez:
sysctl -Ban ben vm.max_map_count= 262144
Ezután hajtsa végre az „exit” parancsot a WSL-ből való kilépéshez:
3. lépés: Hálózat létrehozása
Most hozzon létre egy hálózatot az Elasticsearch Docker tárolóhoz. Ez nem kötelező, de hasznos lehet biztonsági mentési célokra az Elasticsearch hálózatoknál:
dokkolóhálózat rugalmas létrehozása
4. lépés: Futtassa az Elasticsearch programot
Most futtassa az Elasticsearch képfájlt az Elastic keresés telepítéséhez és futtatásához a tárolóban:
dokkolófuttatás --név es01 --háló rugalmas -o 9200 : 9200 -o 9300 : 9300 -t docker.elastic.co / rugalmas keresés / rugalmas keresés:8.8.2
A fent megadott parancsban:
- ' -név ” az Elasticsearch tároló nevét adja meg.
- ' -háló ” jelzőt a külső hálózat beágyazására használják.
- ' -o ” opció határozza meg az Elasticsearch konténer portjait.
- ' -t ' a ' TTY-pszeudo ” terminál a konténerhez:
Az alábbi kimenet azt mutatja, hogy sikeresen végrehajtottuk az Elasticsearch tárolót, és megoldottuk a „ Az Elasticsearch nem ment ki rendesen ” hiba.
Itt a tároló létrehozza a „ rugalmas ” felhasználó jelszava. Ezekkel a hitelesítő adatokkal a felhasználó hozzáférhet az Elasticsearch alkalmazáshoz a böngészőben. Ezzel a tokent is létrehozza a Kibana konfigurálásához:
5. lépés: Ellenőrzés
Navigáljon a ' http://localhost:9200 ” a böngészőjében, és ellenőrizze, hogy a tároló a megadott porton fut-e vagy sem:
A fenti kimenet azt jelzi, hogy sikeresen végrehajtottuk a tárolót a ' porton 9200 ” és megoldotta a „ Az Elasticsearch nem ment ki rendesen ” hiba.
Következtetés
A ' Az Elasticsearch nem ment ki rendesen ” hiba esetén a felhasználóknak növelniük kell a Linux-tároló virtuális memóriakorlátját. Ehhez először indítsa el a Docker asztalt WSL-lel a „ wsl -d docker-desktop ” parancsot. Ezt követően növelje meg a virtuális memória korlátját a „ sysctl -w vm.max_map_count=262144 ” parancsot. Ezután futtassa újra a képet az Elasticsearch tároló létrehozásához és elindításához. Ez a bejegyzés bemutatja az „Elasticsearch nem jött ki rendesen” hiba javításának módszerét.