Elasticsearch - API Cluster

API cluster digunakan untuk mendapatkan informasi tentang cluster dan node-nya dan untuk membuat perubahan di dalamnya. Untuk memanggil API ini, kita perlu menentukan nama node, alamat atau _local.

GET /_nodes/_local

Saat menjalankan kode di atas, kami mendapatkan respons seperti yang ditunjukkan di bawah ini -

………………………………………………
cluster_name" : "elasticsearch",
   "nodes" : {
      "FKH-5blYTJmff2rJ_lQOCg" : {
         "name" : "ubuntu",
         "transport_address" : "127.0.0.1:9300",
         "host" : "127.0.0.1",
         "ip" : "127.0.0.1",
         "version" : "7.0.0",
         "build_flavor" : "default",
         "build_type" : "tar",
         "build_hash" : "b7e28a7",
         "total_indexing_buffer" : 106502553,
         "roles" : [
            "master",
            "data",
            "ingest"
         ],
         "attributes" : {
………………………………………………

Kesehatan Cluster

API ini digunakan untuk mendapatkan status kesehatan cluster dengan menambahkan kata kunci 'kesehatan'.

GET /_cluster/health

Saat menjalankan kode di atas, kami mendapatkan respons seperti yang ditunjukkan di bawah ini -

{
   "cluster_name" : "elasticsearch",
   "status" : "yellow",
   "timed_out" : false,
   "number_of_nodes" : 1,
   "number_of_data_nodes" : 1,
   "active_primary_shards" : 7,
   "active_shards" : 7,
   "relocating_shards" : 0,
   "initializing_shards" : 0,
   "unassigned_shards" : 4,
   "delayed_unassigned_shards" : 0,
   "number_of_pending_tasks" : 0,
   "number_of_in_flight_fetch" : 0,
   "task_max_waiting_in_queue_millis" : 0,
   "active_shards_percent_as_number" : 63.63636363636363
}

Status Cluster

API ini digunakan untuk mendapatkan informasi status tentang sebuah cluster dengan menambahkan URL kata kunci 'negara bagian'. Informasi negara berisi versi, node master, node lain, tabel routing, metadata dan blok.

GET /_cluster/state

Saat menjalankan kode di atas, kami mendapatkan respons seperti yang ditunjukkan di bawah ini -

………………………………………………
{
   "cluster_name" : "elasticsearch",
   "cluster_uuid" : "IzKu0OoVTQ6LxqONJnN2eQ",
   "version" : 89,
   "state_uuid" : "y3BlwvspR1eUQBTo0aBjig",
   "master_node" : "FKH-5blYTJmff2rJ_lQOCg",
   "blocks" : { },
   "nodes" : {
      "FKH-5blYTJmff2rJ_lQOCg" : {
      "name" : "ubuntu",
      "ephemeral_id" : "426kTGpITGixhEzaM-5Qyg",
      "transport
   }
………………………………………………

Statistik Cluster

API ini membantu untuk mengambil statistik tentang cluster dengan menggunakan kata kunci 'statistik'. API ini mengembalikan nomor pecahan, ukuran penyimpanan, penggunaan memori, jumlah node, peran, OS, dan sistem file.

GET /_cluster/stats

Saat menjalankan kode di atas, kami mendapatkan respons seperti yang ditunjukkan di bawah ini -

………………………………………….
"cluster_name" : "elasticsearch",
"cluster_uuid" : "IzKu0OoVTQ6LxqONJnN2eQ",
"timestamp" : 1556435464704,
"status" : "yellow",
"indices" : {
   "count" : 7,
   "shards" : {
      "total" : 7,
      "primaries" : 7,
      "replication" : 0.0,
      "index" : {
         "shards" : {
         "min" : 1,
         "max" : 1,
         "avg" : 1.0
      },
      "primaries" : {
         "min" : 1,
         "max" : 1,
         "avg" : 1.0
      },
      "replication" : {
         "min" : 0.0,
         "max" : 0.0,
         "avg" : 0.0
      }
………………………………………….

Pengaturan Pembaruan Cluster

API ini memungkinkan Anda untuk memperbarui pengaturan cluster dengan menggunakan kata kunci 'pengaturan'. Ada dua jenis pengaturan - persisten (diterapkan saat restart) dan sementara (tidak bertahan saat cluster restart penuh).

Statistik Node

API ini digunakan untuk mengambil statistik dari satu node cluster lagi. Statistik node hampir sama dengan cluster.

GET /_nodes/stats

Saat menjalankan kode di atas, kami mendapatkan respons seperti yang ditunjukkan di bawah ini -

{
   "_nodes" : {
      "total" : 1,
      "successful" : 1,
      "failed" : 0
   },
   "cluster_name" : "elasticsearch",
   "nodes" : {
      "FKH-5blYTJmff2rJ_lQOCg" : {
         "timestamp" : 1556437348653,
         "name" : "ubuntu",
         "transport_address" : "127.0.0.1:9300",
         "host" : "127.0.0.1",
         "ip" : "127.0.0.1:9300",
         "roles" : [
            "master",
            "data",
            "ingest"
         ],
         "attributes" : {
            "ml.machine_memory" : "4112797696",
            "xpack.installed" : "true",
            "ml.max_open_jobs" : "20"
         },
………………………………………………………….

Node hot_threads

API ini membantu Anda mengambil informasi tentang hot thread saat ini di setiap node dalam cluster.

GET /_nodes/hot_threads

Saat menjalankan kode di atas, kami mendapatkan respons seperti yang ditunjukkan di bawah ini -

:::{ubuntu}{FKH-5blYTJmff2rJ_lQOCg}{426kTGpITGixhEzaM5Qyg}{127.0.0.1}{127.0.0.1:9300}{ml.machine_memory=4112797696,
xpack.installed=true, ml.max_open_jobs=20}
 Hot threads at 2019-04-28T07:43:58.265Z, interval=500ms, busiestThreads=3,
ignoreIdleThreads=true: