Správa úloh Elasticsearch

Sprava Uloh Elasticsearch



„V tomto príspevku sa pozrieme na jedno z experimentálnych API Elasticsearch (v čase písania tejto príručky), ktoré nám umožňuje zobraziť informácie o aktuálne spustených úlohách v klastri.

Správa úloh je obrovským faktorom pre každého správcu a pri práci so zložitým systémom, akým je Elasticsearch, budete musieť vykonávať určité monitorovanie úloh.“

Pozrime sa, čo toto API obnáša a ako vám môže pomôcť ako správcovi systému.







POZNÁMKA: V závislosti od konfigurácie klastra a nastavení zabezpečenia môže toto rozhranie API vyžadovať oprávnenia monitora.



Požiadať o syntax

Nasleduje syntax na odoslanie požiadavky do API na správu úloh.



GET / _úlohy /< task_id >

GET / _úlohy

Keď požiadate o API, príkaz by mal vrátiť podrobné informácie o aktuálnych úlohách alebo úlohe so zadaným ID.





Požiadať o parametre cesty

Požiadavka podporuje jeden parameter cesty:

  • – jedinečná hodnota ID pre úlohu, ktorej informácie chcete získať. ID úlohy sa riadi vzorom node_id:task_number.

Vyžiadať parametre dopytu

Ak chcete prispôsobiť správanie a návratový formát dotazu, môžete zadať nasledujúce parametre:



  1. Akcie – definuje množinu akcií používaných na obmedzenie požiadavky. Tu môžete definovať akcie ako zoznam hodnôt oddelených čiarkou.
  2. Detailed – ide o boolovský parameter, ktorý definuje, či požiadavka zobrazuje podrobné informácie o obnove fragmentov alebo nie. Táto možnosť je predvolená na hodnotu false
  3. Group_by – nastavuje kľúče používané na zoskupovanie úloh z odpovede. Akceptované hodnoty zahŕňajú:
    • Uzly – ID uzla.
    • Rodičia – ID rodiča.
    • Uzol – nezoskupovať.
  4. Node_id – definuje uzol alebo zoznam uzlov, z ktorých sa majú získať informácie.
  5. parent_task_id – definuje rodičovské ID používané na filtrovanie informácií o odpovedi. Ak chcete zobraziť všetky úlohy, zadajte parent_task_id ako -1.
  6. master_timeout – určuje dobu, počas ktorej požiadavka čaká na spojenie s hlavným uzlom. Ak požiadavka nedostane odpoveď od mastera po uplynutí doby master_timeout, zlyhá a vráti chybu. Predvolená doba trvania je nastavená na 30 sekúnd.
  7. Timeout – podobne ako master_timeout, ale táto hodnota definuje dobu, počas ktorej sa má čakať na akúkoľvek odpoveď.
  8. Wait_for_completion – ak je pravda, požiadavka je zablokovaná, kým sa operácia neukončí. Predvolená hodnota je nepravda.

odpoveď

Ak je žiadosť úspešná, vráti podrobné informácie o zadanej úlohe alebo úlohách. Ak sa úloha nenájde, požiadavka vráti 404-stavový kód.

Príklad použitia

Nasledujúci príklad ukazuje, ako použiť API na správu úloh na zobrazenie informácií o všetkých úlohách spustených v klastri (všetky uzly).

curl -XGET “http://localhost:9200/_tasks” -H 'kbn-xsrf: reporting'

Žiadosť by mala poskytnúť informácie o úlohách v klastri, ako je uvedené vo výstupe nižšie:

Príklad 2

V ďalšom príklade použijeme parameter nodes na obmedzenie odpovede iba na úlohy, ktoré sú spustené v uzle slave_1

curl -XGET „http://localhost:9200/_tasks?nodes=slave_1“ -H 'kbn-xsrf: reporting'

Toto by malo vrátiť úlohy v zadanom uzle, ako je znázornené na výstupe nižšie:

'úlohy' : {
'Fit416fGR1GJefJxOxLurw:1651265' : {
'uzol' : 'slave_1' ,
'id' : 1651265 ,
'typ' : 'doprava' ,
'akcia' : 'indexy:monitor/fleet/global_checkpoints' ,
'start_time_in_millis' : 1664214054489 ,
'running_time_in_nanos' : 94450056094 ,
'zrušiteľné' : nepravda,
'hlavičky' : {
'X-elastic-product-origin' : 'flotila'
}
}

Príklad 3

V príklade 3 používame rozhranie API na správu úloh na zobrazenie informácií o úlohe so zadaným ID:

curl -XGET „http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310“ -H 'kbn-xsrf: reporting'

Výstupné informácie o úlohe vyzerajú takto:

Príklad 4

Ak chcete zobraziť podrobné informácie o úlohe, pridajte do požiadavky podrobný parameter, ako je znázornené:
[cc lang=”apache” width=”100%” height=”100%” escaped=”true” theme=”blackboard” nowrap=”0″]
curl -XGET “http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]c
To by malo poskytnúť ďalšie informácie o úlohách:

Záver

Tento príspevok bol preskúmaný ako používať API na správu úloh v Elasticsearch. Toto API nám umožňuje získať informácie o aktuálne vykonávaných úlohách v klastri.

Na zdravie!! & Chytím ťa v ďalšom.