Manajemen Tugas Elasticsearch

Manajemen Tugas Elasticsearch



“Dalam posting ini, kita akan melihat salah satu API eksperimental Elasticsearch (pada saat menulis panduan ini) yang memungkinkan kita untuk melihat informasi tentang tugas yang sedang berjalan di sebuah cluster.

Manajemen tugas adalah faktor besar bagi administrator mana pun, dan ketika bekerja dengan sistem yang kompleks seperti Elasticsearch, Anda perlu melakukan pemantauan tugas.”

Mari kita bahas apa yang diperlukan API ini dan bagaimana API ini dapat membantu Anda sebagai admin sistem.







CATATAN: Bergantung pada konfigurasi klaster dan pengaturan keamanan Anda, API ini mungkin memerlukan hak monitor.



Sintaks Permintaan

Berikut ini menunjukkan sintaks untuk mengirim permintaan ke API manajemen tugas.



DAPATKAN / _tugas /< tugas_id >

DAPATKAN / _tugas

Setelah Anda meminta API, perintah harus mengembalikan informasi mendetail tentang tugas saat ini atau tugas dengan ID yang ditentukan.





Parameter Jalur Permintaan

Permintaan mendukung satu parameter jalur:

  • – nilai ID unik untuk tugas yang informasinya ingin Anda ambil. ID tugas mengikuti pola node_id:task_number.

Permintaan Parameter Kueri

Untuk mengkustomisasi perilaku dan format pengembalian kueri, Anda dapat menentukan parameter berikut:



  1. Tindakan – ini mendefinisikan serangkaian tindakan yang digunakan untuk membatasi permintaan. Di sini, Anda dapat menentukan tindakan sebagai daftar nilai yang dipisahkan koma.
  2. Terperinci – ini adalah parameter Boolean yang menentukan apakah permintaan menampilkan informasi terperinci tentang pemulihan pecahan atau tidak. Opsi ini default ke false
  3. Group_by – mengatur kunci yang digunakan untuk mengelompokkan tugas dari respons. Nilai yang diterima meliputi:
    • Node – ID node.
    • Orang tua - ID orang tua.
    • Node – jangan dikelompokkan.
  4. Node_id – mendefinisikan node atau daftar node untuk mengambil informasi.
  5. parent_task_id – mendefinisikan ID induk yang digunakan untuk memfilter informasi respons. Untuk menampilkan semua tugas, tentukan parent_task_id sebagai -1.
  6. master_timeout – menentukan durasi di mana permintaan menunggu koneksi ke node master. Jika permintaan tidak menerima respons dari master setelah durasi master_timeout berlalu, permintaan akan gagal dan mengembalikan kesalahan. Durasi default diatur ke 30 detik.
  7. Timeout – mirip dengan master_timeout, tetapi nilai ini menentukan durasi menunggu respons apa pun.
  8. Wait_for_completion – jika benar, permintaan akan diblokir hingga operasi selesai. Default ke salah.

Tanggapan

Jika berhasil, permintaan akan mengembalikan informasi terperinci tentang tugas atau tugas yang ditentukan. Jika tugas tidak ditemukan, permintaan mengembalikan kode status 404.

Contoh Penggunaan

Contoh berikut menunjukkan cara menggunakan API manajemen tugas untuk menampilkan informasi tentang semua tugas yang berjalan di kluster (semua node).

ikal -XGET “http://localhost:9200/_tasks” -H 'kbn-xsrf: pelaporan'

Permintaan harus memberikan informasi tentang tugas di cluster, seperti yang ditunjukkan pada output di bawah ini:

Contoh 2

Pada contoh berikutnya, kami menggunakan parameter node untuk membatasi respons hanya pada tugas yang berjalan di node slave_1

ikal -XGET “http://localhost:9200/_tasks?nodes=slave_1” -H 'kbn-xsrf: pelaporan'

Ini harus mengembalikan tugas di node yang ditentukan seperti yang ditunjukkan pada output di bawah ini:

'tugas' : {
'Fit416fGR1GJefJxOxLurw:1651265' : {
'simpul' : 'budak_1' ,
'Indo' : 1651265 ,
'Tipe' : 'mengangkut' ,
'tindakan' : 'indeks: monitor/armada/global_checkpoints' ,
'start_time_in_milis' : 1664214054489 ,
'running_time_in_nanos' : 94450056094 ,
'dapat dibatalkan' : Salah,
'tajuk' : {
'X-elastis-produk-asal' : 'armada'
}
}

Contoh 3

Dalam contoh 3, kami menggunakan API manajemen tugas untuk menampilkan informasi tentang tugas dengan ID yang ditentukan:

ikal -XGET “http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310” -H 'kbn-xsrf: pelaporan'

Output informasi tugas adalah seperti yang ditunjukkan:

Contoh 4

Untuk menampilkan informasi terperinci tentang tugas, tambahkan parameter terperinci ke permintaan seperti yang ditunjukkan:
[cc lang=”apache” width=”100%” height=”100%” escape=”true” theme=”blackboard” nowrap=”0″]
curl -XGET “http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]c
Ini harus memberikan informasi tambahan tentang tugas:

Kesimpulan

Posting ini dieksplorasi cara menggunakan API manajemen tugas di Elasticsearch. API ini memungkinkan kami untuk mengambil informasi tentang tugas yang sedang dijalankan di cluster.

Bersulang!! & Saya akan menangkap Anda di yang berikutnya.