Elasticsearch - API cụm

API cụm được sử dụng để nhận thông tin về cụm và các nút của nó và thực hiện các thay đổi trong chúng. Để gọi API này, chúng ta cần chỉ định tên nút, địa chỉ hoặc _local.

GET /_nodes/_local

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

………………………………………………
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" : {
………………………………………………

Tình trạng cụm

API này được sử dụng để nhận trạng thái về tình trạng của cụm bằng cách thêm từ khóa 'sức khỏe'.

GET /_cluster/health

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{
   "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
}

Trạng thái cụm

API này được sử dụng để nhận thông tin trạng thái về một cụm bằng cách thêm URL từ khóa 'trạng thái'. Thông tin trạng thái chứa phiên bản, nút chính, các nút khác, bảng định tuyến, siêu dữ liệu và các khối.

GET /_cluster/state

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

………………………………………………
{
   "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
   }
………………………………………………

Thống kê cụm

API này giúp lấy thống kê về cụm bằng cách sử dụng từ khóa 'thống kê'. API này trả về số phân đoạn, kích thước lưu trữ, mức sử dụng bộ nhớ, số lượng nút, vai trò, hệ điều hành và hệ thống tệp.

GET /_cluster/stats

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

………………………………………….
"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
      }
………………………………………….

Cài đặt cập nhật cụm

API này cho phép bạn cập nhật cài đặt của một cụm bằng cách sử dụng từ khóa 'cài đặt'. Có hai loại cài đặt - liên tục (áp dụng khi khởi động lại) và tạm thời (không tồn tại khi khởi động lại toàn bộ cụm).

Số liệu thống kê về nút

API này được sử dụng để truy xuất số liệu thống kê của một nút nữa của cụm. Số liệu thống kê của nút gần giống như cụm.

GET /_nodes/stats

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

{
   "_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"
         },
………………………………………………………….

Nút hot_threads

API này giúp bạn truy xuất thông tin về các luồng nóng hiện tại trên mỗi nút trong cụm.

GET /_nodes/hot_threads

Khi chạy đoạn mã trên, chúng tôi nhận được phản hồi như hình dưới đây:

:::{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: