Elasticsearch常用操作:集群管理篇

[TOC]

成都創(chuàng)新互聯(lián)公司是一家專注于網站設計制作、網站設計與策劃設計,施甸網站建設哪家好?成都創(chuàng)新互聯(lián)公司做網站,專注于網站建設10多年,網設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:施甸等地區(qū)。施甸做網站價格咨詢:18982081108


0 說明

基于es 5.6,可以參考官方文檔:

  • cat API:https://www.elastic.co/guide/en/elasticsearch/reference/5.6/cat.html
  • Cluster API:https://www.elastic.co/guide/en/elasticsearch/reference/5.6/cluster.html

1 Cat API

1.1 cat aliases

顯示索引的別名信息、過濾器和路由信息。

GET _cat/aliases?v

?v是輸出表頭。

返回結果如下:

alias             index          filter routing.index routing.search
e3-commons-es     es-java-api    -      -             -
goods_index       my_index_new   -      -             -
alias_test        my_index3      -      -             -
alias_test2       my_index3      -      -             -
alias_test        my_index2      -      -             -
my_search_indices bank_news_news -      -             -
bank_alias        bank           -      -             -

1.2 cat allocation

查看每個節(jié)點的分片數(shù)量以及每個節(jié)點的磁盤空間使用情況。

GET _cat/allocation?v

返回結果如下:

shards disk.indices disk.used disk.avail disk.total disk.percent host         ip           node
   361       15.1gb     1.6tb      7.3tb      8.9tb           18 172.18.5.206 172.18.5.206 es01
   361       15.4gb     1.7tb      7.2tb      8.9tb           19 172.18.5.204 172.18.5.204 es02
   361         15gb     1.4tb      7.4tb      8.9tb           16 172.18.5.205 172.18.5.205 es03

1.3 cat count

查看索引或集群的文檔數(shù)量。

GET _cat/count?v

或:

GET _cat/count/books?v

返回結果如下:

epoch      timestamp count
1544437087 18:18:07  6754

1.4 cat fielddata

查看每個數(shù)據(jù)節(jié)點上被fielddata所使用的堆內存大小。

GET _cat/fielddata?v

返回結果如下:

id                     host      ip        node    field              size
jA22IcavSn6DU9RP3S081g 127.0.0.1 127.0.0.1 jA22Ica _uid              1.6kb
jA22IcavSn6DU9RP3S081g 127.0.0.1 127.0.0.1 jA22Ica _parent#rd_center 1.4kb
jA22IcavSn6DU9RP3S081g 127.0.0.1 127.0.0.1 jA22Ica _parent#country   1.4kb
jA22IcavSn6DU9RP3S081g 127.0.0.1 127.0.0.1 jA22Ica _parent           1.4kb

fielddata的相關原理知識可以自行查找文檔來學習。

1.5 cat health

顯示集群的健康狀態(tài)信息。

GET _cat/health?v

返回結果如下:

epoch      timestamp cluster       status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1544437302 18:21:42  elasticsearch yellow          1         1    186 186    0    0      179             0                  -                 51.0%

1.6 cat indices

查看索引信息,包括:健康狀態(tài)、索引開關狀態(tài)、分片數(shù)、副本數(shù)、文檔數(shù)量、標記為刪除的文檔數(shù)量、占用的存儲空間、索引的唯一標識等。

GET _cat/indices?v

或:

GET _cat/indices/forum?v

返回結果如下:

health status index          uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   twitter        ih6fzecDRFKHDoKPkAyQTg   5   1          3            0       15kb           15kb
yellow open   cat_shop       AALA-CWYREaLJUN8sMdbIg   5   1          1            0      5.1kb          5.1kb
yellow open   range_index    r8nh_ljRST-K4jztd0gHiw   5   1          1            0        4kb            4kb
yellow open   myblog         ZZEavPu9Q7uOH_QlXEcSQQ   5   1          2            0      7.4kb          7.4kb
yellow open   .kibana        d189HADjSKCy6fV1ogmRgg   1   1          1            0      3.1kb          3.1kb
yellow open   forum          JLUjf6LTRPylrayBIJgzbw   5   1          6            0     41.7kb         41.7kb

1.7 cat master

顯示master節(jié)點的id、ip和節(jié)點名。

GET _cat/master?v

返回結果如下:

id                     host           ip             node
-UobleMyQPmJOTAeEtoUdQ 192.168.10.102 192.168.10.102 es02

1.8 cat nodeattrs

返回節(jié)點的信息,但實際上測試并沒有返回結果。

GET _cat/nodeattrs?v

1.9 cat nodes

返回集群中各節(jié)點信息。

GET _cat/nodes?v

返回結果如下:

ip             heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
192.168.10.102            7          73   0    0.10    0.03     0.00 mdi       *      es02
192.168.10.103           10          73   0    0.00    0.00     0.00 mdi       -      es03
192.168.10.101            3          97   1    0.01    0.01     0.00 mdi       -      es01

1.10 cat pending tasks

查看正在執(zhí)行的任務列表。

GET /_cat/pending_tasks?v

返回結果如下:

GET /_cat/pending_tasks?v

1.11 cat plugins

查看節(jié)點所運行插件信息。

GET /_cat/plugins?v

返回結果如下:

name component       version
es02 repository-hdfs 5.6.8
es03 repository-hdfs 5.6.8
es01 repository-hdfs 5.6.8

1.12 cat recovery

查看索引分片恢復進度。

GET /_cat/recovery?v

返回結果如下:

index       shard time  type           stage source_host    source_node target_host    target_node repository          snapshot   files files_recovered files_percent files_total bytes bytes_recovered bytes_percent bytes_total translog_ops translog_ops_recovered translog_ops_percent
logs-000001 0     782ms peer           done  192.168.10.103 es03        192.168.10.101 es01        n/a                 n/a        1     1               100.0%        1           162   162             100.0%        162         0            0                      100.0%
logs-000001 0     35ms  empty_store    done  n/a            n/a         192.168.10.103 es03        n/a                 n/a        0     0               0.0%          0           0     0               0.0%          0           0            0                      100.0%
logs-000001 1     31ms  empty_store    done  n/a            n/a         192.168.10.101 es01        n/a                 n/a        0     0               0.0%          0           0     0               0.0%          0           0            0                      100.0%

1.13 cat repositories

查看集群中的快照庫。

GET /_cat/repositories?v

返回結果如下:

id                  type
my_hdfs_repository2 hdfs

快照庫用來做索引備份與恢復。

1.14 cat thread pool

查看集群每個節(jié)點的線程池統(tǒng)計信息。

GET /_cat/thread_pool?v

返回結果如下:

node_name name                active queue rejected
jA22Ica   bulk                     0     0        0
jA22Ica   fetch_shard_started      0     0        0
jA22Ica   fetch_shard_store        0     0        0
jA22Ica   flush                    0     0        0
jA22Ica   force_merge              0     0        0
jA22Ica   generic                  0     0        0
jA22Ica   get                      0     0        0
jA22Ica   index                    0     0        0
jA22Ica   listener                 0     0        0
jA22Ica   management               1     0        0
jA22Ica   refresh                  0     0        0
jA22Ica   search                   0     0        0
jA22Ica   snapshot                 0     0        0
jA22Ica   warmer                   0     0        0

1.15 cat shards

查看集群中每個節(jié)點的分片信息,包括分片名稱、編號、是否是主分片、狀態(tài)、文檔數(shù)據(jù)、空間大小、所有節(jié)點ip、節(jié)點名稱。

GET /_cat/shards?v

返回結果如下:

index       shard prirep state      docs store ip             node
my_index    2     r      STARTED       1 3.2kb 192.168.10.103 es03
my_index    2     p      STARTED       1 3.2kb 192.168.10.102 es02
my_index    1     p      STARTED       0  162b 192.168.10.103 es03
my_index    1     r      STARTED       0  162b 192.168.10.102 es02
my_index    3     p      STARTED       1 3.2kb 192.168.10.101 es01
my_index    3     r      STARTED       1 3.2kb 192.168.10.103 es03
my_index    4     r      STARTED       0  162b 192.168.10.101 es01
my_index    4     p      STARTED       0  162b 192.168.10.103 es03
my_index    0     p      STARTED       0  162b 192.168.10.101 es01
my_index    0     r      STARTED       0  162b 192.168.10.102 es02

1.16 cat segments

查看索引的segment信息,注意,索引數(shù)據(jù)實際上是以一個個segment的方式進行存儲的。

GET /_cat/segments?v

返回結果如下:

index       shard prirep ip             segment generation docs.count docs.deleted  size size.memory committed searchable version compound
logs-000001 2     p      192.168.10.103 _0               0          1            0 3.1kb        1498 true      true       6.6.1   true
logs-000001 2     r      192.168.10.102 _0               0          1            0 3.1kb        1498 true      true       6.6.1   true
logs-000001 3     p      192.168.10.101 _0               0          1            0 3.1kb        1498 true      true       6.6.1   true
logs-000001 3     r      192.168.10.103 _0               0          1            0 3.1kb        1498 true      true       6.6.1   true
logs-000001 4     r      192.168.10.101 _0               0          1            0 3.1kb        1498 true      true       6.6.1   true
logs-000001 4     p      192.168.10.102 _0               0          1            0 3.1kb        1498 true      true       6.6.1   true
.kibana     0     p      192.168.10.101 _0               0          1            0 2.9kb        1737 true      true       6.6.1   true
.kibana     0     r      192.168.10.102 _0               0          1            0 2.9kb        1737 true      true       6.6.1   true
my_index    2     r      192.168.10.103 _0               0          1            0 2.9kb        1497 true      true       6.6.1   true
my_index    2     p      192.168.10.102 _0               0          1            0 2.9kb        1497 true      true       6.6.1   true
my_index    3     p      192.168.10.101 _2               2          1            0 2.9kb        1497 true      true       6.6.1   true
my_index    3     r      192.168.10.103 _2               2          1            0 2.9kb        1497 true      true       6.6.1   true

1.17 cat templates

查看集群中的模板。

GET /_cat/templates?v

返回結果如下:

name     template   order version
logstash logstash-* 0     50001

search template,可以參考文檔:<https://www.elastic.co/guide/en/elasticsearch/reference/5.6/search-template.html>

2 Cluster API

2.1 Cluster Health

查看集群的健康狀態(tài)。

GET /_cluster/health

返回結果如下:

{
  "cluster_name": "es-prd",
  "status": "yellow",
  "timed_out": false,
  "number_of_nodes": 3,
  "number_of_data_nodes": 3,
  "active_primary_shards": 20,
  "active_shards": 37,
  "relocating_shards": 0,   // 正在發(fā)生遷移的分片
  "initializing_shards": 0, // 正在初始化的分片
  "unassigned_shards": 6,   // 沒有被分配的分片
  "delayed_unassigned_shards": 0,   // 延遲未被分配的分片
  "number_of_pending_tasks": 0,     // 節(jié)點隊列中的任務數(shù)
  "number_of_in_flight_fetch": 0,   // 正在進行遷移的分片數(shù)量
  "task_max_waiting_in_queue_millis": 0,    // 隊列中任務的最大等待時間
  "active_shards_percent_as_number": 86.04651162790698  // 活動分片的百分比
}

另外,關于status的說明如下:

status說明
green 不是所有索引的primary shard都是active狀態(tài),部分索引有數(shù)據(jù)丟失了(因為如果只是primary shard不可用了,replica shard會提升,此時說明是有部分數(shù)據(jù)丟失了)
yellow 每個索引的primary shard都是active狀態(tài),但是部分replica shard不是active狀態(tài),處于不可用的狀態(tài)
red 每個索引的primary shard和replica shard都是active狀態(tài)

2.2 Cluster State

返回集群的完整狀態(tài)信息。

GET /_cluster/state

返回的數(shù)據(jù)非常多,這里不進行展示,但是可以只返回部分數(shù)據(jù),如:

GET /_cluster/state/version

2.3 Cluster Stats

獲取各種統(tǒng)計數(shù)據(jù)。包括兩部分數(shù)據(jù):

  • 索引層面:分片數(shù)、存儲大小、內存使用等;
  • 節(jié)點層面:節(jié)點數(shù)量、節(jié)點角色、操作系統(tǒng)、jvm信息、內存、CPU、插件等;
GET /_cluster/stats

2.4 Pending Cluster Tasks

返回一個正在添加到集群狀態(tài)的任務列表。

GET /_cluster/pending_tasks

返回結果如下:

{
  "tasks": []
}

2.5 Cluster Reroute

明確地執(zhí)行集群重新路由分配命令。

POST /_cluster/reroute

當然還可以添加其它的可選參數(shù),這個可以自行參考官方文檔。

2.6 Cluster Update Settings

更新集群中的配置,如果是永久配置,需要重啟集群;臨時配置的訞 不不需要重啟集群。

PUT /_cluster/settings
{
  "persistent": {
    "discovery.zen.minimum_master_nodes":1
  }
}

如果是臨時修改,則使用transient。

2.7 Nodes Stats

統(tǒng)計集群中一個或多個節(jié)點的統(tǒng)計信息。

GET /_nodes

或:

GET /_nodes/es01,es02

也可以只返回部分信息:

GET /_nodes/es01,es02/os,jvm

2.8 Nodes Info

參考2.7.

2.9 Task Management API

獲取集群中正在節(jié)點中執(zhí)行的任務信息。

GET /_tasks

2.10 Cluster Allocation Explain API

查看分片沒有被分配的原因,比如通過GET /_cat/shards?v看到某個索引沒有被分配,就可以使用下面的命令來查看沒有被分配的原因。

GET /_cluster/allocation/explain
{
  "index":"twitter",
  "shard":0,
  "primary":true
}

新聞標題:Elasticsearch常用操作:集群管理篇
轉載源于:http://bm7419.com/article32/gocgpc.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供外貿網站建設、網站策劃、靜態(tài)網站、ChatGPT小程序開發(fā)、定制開發(fā)

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

外貿網站建設