Elasticsearchi maksimaalne mälumaht

Elasticsearchi Maksimaalne Malumaht



'Mälu on Elasticsearchiga töötamisel oluline, kuid piiratud ressurss. Seda seetõttu, et Lucene kasutab ära kõiki saadaolevaid mälumahtusid. Valesti konfigureeritud mäluseaded võivad aga põhjustada madala jõudluse ja ebatõhusa mälukasutuse.

Selles õpetuses näitame teile Elasticsearchiga töötamisel maksimaalset ja minimaalset JVM-i kuhja suuruse konfiguratsiooni.







Alustame.



Mis on kuhjamälu?

Elasticsearchi kontekstis viitab kuhjamälu Java virtuaalmasinale Elasticsearchi sõlmes eraldatud mälu kogumahule.



Elasticsearch määrab vaikimisi JVM-i kuhja suuruse põhisüsteemi kogumälu ja sõlme rolli põhjal. See tähendab, et kuhja mälumahu jaotus võib varieeruda olenevalt sellest, kas see on põhisõlm, andmed, sisestus, data_cold jne.





Enamiku tootmiskeskkondade puhul on soovitatav ja enam kui piisav lubada Elasticsearchil kuhja suurust hallata.

MÄRGE : Kui kasutate Dockeris Elasticsearchi, põhineb kuhja kogumälu dockeri konteineri kogumahul, mitte Dockeri hostil.



Kuhja minimaalse ja maksimaalse suuruse seadistamine

Kuhja minimaalse ja maksimaalse suuruse konfigureerimiseks saame kasutada parameetreid Xms ja Xmx. Elasticsearch probits seab maksimaalseks mäluks mitte rohkem kui 50% kogumälust. Selle põhjuseks on asjaolu, et peale JVM Heap vajab Elasticsearch rohkem mälu muude toimingute jaoks, nagu failisüsteemi vahemälu, võrgusuhtlus jne. Samamoodi kasutab JVM osa ülejäänud 50% mälust.

Teiseks ärge määrake xms- ja xmx-väärtusi suuremaks kui oopse lävi. Ohutuks konfigureerimiseks piirake seda mõnes süsteemis 26 GB või 30 GB-ni.

Läve saate kontrollida Elasticsearchi logist.

kass elasticsearch.log | grep 'objekti osutid'

Peaksite nägema kirjet nagu näidatud:

[2022-08-19T20:01:50,275][INFO ][o.e.e.NodeEnvironment    ] [debian11] kuhja suurus [1,9 GB], tihendatud tavalised objektinäitajad [true]
[2022-08-19T20:08:07,207][INFO ][o.e.e.NodeEnvironment    ] [debian11] kuhja suurus [1,9 GB], tihendatud tavalised objektinäitajad [true]
[2022-08-19T20:36:47,244][INFO ][o.e.e.NodeEnvironment    ] [debian11] kuhja suurus [1,9 GB], tihendatud tavalised objektinäitajad [true]

Xms- ja xmx-väärtuste jaoks saate päringuid teha ka sõlmede teabe API-lt:

curl -X GET localhost:9200/_nodes/_all/jvm?pretty

Peaksite nägema väljundit, nagu näidatud:

Määrake minimaalne ja maksimaalne kuhja suurus

JVM-i kuhja suuruse väärtuste muutmiseks peate kataloogi /etc/elasticsearch/jvm.options.d lisama konfiguratsioonifaili. See fail peaks lõppema laiendiga .options.

Näiteks:

$ sudo touch /etc/elasticsearch/jvm.options.d/heap.options

Redigeeri faili

$ sudo nano /etc/elasticsearch/jvm.options.d/heap.options

Lisage soovitud minimaalne ja maksimaalne kuhja mälumaht.

Näiteks konfigureerib allolev kirje kuhja minimaalseks ja maksimaalseks suuruseks 4 GB.

Salvestage fail ja taaskäivitage teenus Elasticsearch.

Järeldus

Selles õpetuses õppisite Elasticsearchi kontekstis JVM-hunnikut, seda, kuidas Elasticsearch JVM-hunnikut konfigureerib ja kuidas saate kuhja suurust muuta.

Aitäh lugemast!!