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: