Elasticsearch uzdevumu pārvaldība

Elasticsearch Uzdevumu Parvaldiba



'Šajā ziņojumā mēs apskatīsim vienu no Elasticsearch eksperimentālajām API (šīs rokasgrāmatas rakstīšanas laikā), kas ļauj mums skatīt informāciju par klasterī pašlaik palaistajiem uzdevumiem.

Uzdevumu pārvaldība ir milzīgs faktors jebkuram administratoram, un, strādājot ar sarežģītu sistēmu, piemēram, Elasticsearch, jums būs jāveic kāda uzdevumu uzraudzība.

Apskatīsim, ko ietver šī API un kā tā var jums palīdzēt kā sistēmas administratoram.







PIEZĪME. Atkarībā no jūsu klastera konfigurācijas un drošības iestatījumiem šai API var būt nepieciešamas monitora privilēģijas.



Pieprasīt sintakse

Tālāk ir parādīta sintakse pieprasījuma nosūtīšanai uz uzdevumu pārvaldības API.



GŪT / _uzdevumi /< uzdevuma_id >

GŪT / _uzdevumi

Kad esat pieprasījis API, komandai ir jāatgriež detalizēta informācija par pašreizējiem uzdevumiem vai uzdevumu ar norādīto ID.





Pieprasīt ceļa parametrus

Pieprasījums atbalsta vienu ceļa parametru:

  • – unikāla ID vērtība uzdevumam, kura informāciju vēlaties izgūt. Uzdevuma ID seko modelim node_id:task_number.

Pieprasīt vaicājuma parametrus

Lai pielāgotu vaicājuma darbību un atgriešanas formātu, varat norādīt šādus parametrus:



  1. Darbības — tas definē darbību kopu, ko izmanto, lai ierobežotu pieprasījumu. Šeit jūs varat definēt darbības kā ar komatu atdalītu vērtību sarakstu.
  2. Detalizēti — šis ir Būla parametrs, kas nosaka, vai pieprasījumā tiek rādīta detalizēta informācija par shardu atkopšanu. Šīs opcijas noklusējuma vērtība ir nepatiesa
  3. Group_by – iestata atslēgas, ko izmanto, lai grupētu uzdevumus no atbildes. Pieņemtās vērtības ietver:
    • Mezgli – mezgla ID.
    • Vecāki – vecāku ID.
    • Mezgls – negrupēt.
  4. Node_id — nosaka mezglu vai mezglu sarakstu, no kuriem iegūt informāciju.
  5. parent_task_id — definē vecāku ID, ko izmanto atbildes informācijas filtrēšanai. Lai parādītu visus uzdevumus, norādiet vecāku_uzdevuma_id kā -1.
  6. master_timeout — norāda ilgumu, kurā pieprasījums gaida savienojumu ar galveno mezglu. Ja pieprasījums nesaņem atbildi no galvenā, pēc master_timeout ilguma beigām, tas neizdodas un atgriež kļūdu. Noklusējuma ilgums ir iestatīts uz 30 sek.
  7. Taimauts — līdzīgi kā master_timeout, taču šī vērtība nosaka ilgumu, kurā jāgaida jebkura atbilde.
  8. Wait_for_completion — ja ir taisnība, pieprasījums tiek bloķēts, līdz darbība tiek pārtraukta. Noklusējuma vērtība ir false.

Atbilde

Ja tas būs veiksmīgs, pieprasījums atgriezīs detalizētu informāciju par norādīto uzdevumu vai uzdevumiem. Ja uzdevums netiek atrasts, pieprasījums atgriež 404 statusa kodu.

Lietošanas piemērs

Šajā piemērā parādīts, kā izmantot uzdevumu pārvaldības API, lai parādītu informāciju par visiem klasterī (visiem mezgliem) izpildītajiem uzdevumiem.

čokurošanās -XGET “http://localhost:9200/_tasks” -H 'kbn-xsrf: ziņošana'

Pieprasījumā ir jāsniedz informācija par uzdevumiem klasterī, kā parādīts tālāk esošajā izvadā:

2. piemērs

Nākamajā piemērā mēs izmantojam mezglu parametru, lai ierobežotu atbildi tikai uz uzdevumiem, kas darbojas mezglā slave_1.

čokurošanās -XGET “http://localhost:9200/_tasks?nodes=slave_1” -H 'kbn-xsrf: ziņošana'

Tam vajadzētu atgriezt uzdevumus norādītajā mezglā, kā parādīts tālāk esošajā izvadā:

'uzdevumi' : {
'Fit416fGR1GJefJxOxLurw:1651265' : {
'mezgls' : 'vergs_1' ,
'id' : 1651265 ,
'tips' : 'transports' ,
'darbība' : 'indeksi: monitors/flote/globālie_kontrolpunkti' ,
'start_time_in_millis' : 1664214054489 ,
'running_time_in_nanos' : 94450056094 ,
'atceļams' : viltus,
'galvenes' : {
'X-elastīgā produkta izcelsme' : 'flote'
}
}

3. piemērs

3. piemērā mēs izmantojam uzdevumu pārvaldības API, lai parādītu informāciju par uzdevumu ar norādīto ID:

čokurošanās -XGET “http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310” -H 'kbn-xsrf: ziņošana'

Izvades uzdevuma informācija ir šāda:

4. piemērs

Lai parādītu detalizētu informāciju par uzdevumu, pievienojiet pieprasījumam detalizētu parametru, kā parādīts:
[cc lang=”apache” width=”100%” height=”100%” escaped=”true” theme=”blackboard” nowrap=”0″]
čokurošanās -XGET “http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]c
Tam vajadzētu sniegt papildu informāciju par uzdevumiem:

Secinājums

Šī ziņa tika izpētīta kā izmantot uzdevumu pārvaldības API programmā Elasticsearch. Šis API ļauj mums izgūt informāciju par pašlaik izpildāmajiem uzdevumiem klasterī.

Priekā!! & es tevi pieķeršu nākamajā.