107 lines
3.9 KiB
Plaintext
107 lines
3.9 KiB
Plaintext
[[cluster]]
|
|
= Cluster APIs
|
|
|
|
[partintro]
|
|
--
|
|
["float",id="cluster-nodes"]
|
|
== Node specification
|
|
|
|
Some cluster-level APIs may operate on a subset of the nodes which can be
|
|
specified with _node filters_. For example, the <<tasks,Task Management>>,
|
|
<<cluster-nodes-stats,Nodes Stats>>, and <<cluster-nodes-info,Nodes Info>> APIs
|
|
can all report results from a filtered set of nodes rather than from all nodes.
|
|
|
|
_Node filters_ are written as a comma-separated list of individual filters,
|
|
each of which adds or removes nodes from the chosen subset. Each filter can be
|
|
one of the following:
|
|
|
|
* `_all`, to add all nodes to the subset.
|
|
* `_local`, to add the local node to the subset.
|
|
* `_master`, to add the currently-elected master node to the subset.
|
|
* a node id or name, to add this node to the subset.
|
|
* an IP address or hostname, to add all matching nodes to the subset.
|
|
* a pattern, using `*` wildcards, which adds all nodes to the subset
|
|
whose name, address or hostname matches the pattern.
|
|
* `master:true`, `data:true`, `ingest:true` or `coordinating_only:true`, which
|
|
respectively add to the subset all master-eligible nodes, all data nodes,
|
|
all ingest nodes, and all coordinating-only nodes.
|
|
* `master:false`, `data:false`, `ingest:false` or `coordinating_only:false`,
|
|
which respectively remove from the subset all master-eligible nodes, all data
|
|
nodes, all ingest nodes, and all coordinating-only nodes.
|
|
* a pair of patterns, using `*` wildcards, of the form `attrname:attrvalue`,
|
|
which adds to the subset all nodes with a custom node attribute whose name
|
|
and value match the respective patterns. Custom node attributes are
|
|
configured by setting properties in the configuration file of the form
|
|
`node.attr.attrname: attrvalue`.
|
|
|
|
NOTE: node filters run in the order in which they are given, which is important
|
|
if using filters that remove nodes from the set. For example
|
|
`_all,master:false` means all the nodes except the master-eligible ones, but
|
|
`master:false,_all` means the same as `_all` because the `_all` filter runs
|
|
after the `master:false` filter.
|
|
|
|
NOTE: if no filters are given, the default is to select all nodes. However, if
|
|
any filters are given then they run starting with an empty chosen subset. This
|
|
means that filters such as `master:false` which remove nodes from the chosen
|
|
subset are only useful if they come after some other filters. When used on its
|
|
own, `master:false` selects no nodes.
|
|
|
|
Here are some examples of the use of node filters with the
|
|
<<cluster-nodes-info,Nodes Info>> APIs.
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
# If no filters are given, the default is to select all nodes
|
|
GET /_nodes
|
|
# Explicitly select all nodes
|
|
GET /_nodes/_all
|
|
# Select just the local node
|
|
GET /_nodes/_local
|
|
# Select the elected master node
|
|
GET /_nodes/_master
|
|
# Select nodes by name, which can include wildcards
|
|
GET /_nodes/node_name_goes_here
|
|
GET /_nodes/node_name_goes_*
|
|
# Select nodes by address, which can include wildcards
|
|
GET /_nodes/10.0.0.3,10.0.0.4
|
|
GET /_nodes/10.0.0.*
|
|
# Select nodes by role
|
|
GET /_nodes/_all,master:false
|
|
GET /_nodes/data:true,ingest:true
|
|
GET /_nodes/coordinating_only:true
|
|
# Select nodes by custom attribute (e.g. with something like `node.attr.rack: 2` in the configuration file)
|
|
GET /_nodes/rack:2
|
|
GET /_nodes/ra*:2
|
|
GET /_nodes/ra*:2*
|
|
--------------------------------------------------
|
|
// CONSOLE
|
|
--
|
|
|
|
include::cluster/health.asciidoc[]
|
|
|
|
include::cluster/state.asciidoc[]
|
|
|
|
include::cluster/stats.asciidoc[]
|
|
|
|
include::cluster/pending.asciidoc[]
|
|
|
|
include::cluster/reroute.asciidoc[]
|
|
|
|
include::cluster/update-settings.asciidoc[]
|
|
|
|
include::cluster/get-settings.asciidoc[]
|
|
|
|
include::cluster/nodes-stats.asciidoc[]
|
|
|
|
include::cluster/nodes-info.asciidoc[]
|
|
|
|
include::cluster/nodes-usage.asciidoc[]
|
|
|
|
include::cluster/remote-info.asciidoc[]
|
|
|
|
include::cluster/tasks.asciidoc[]
|
|
|
|
include::cluster/nodes-hot-threads.asciidoc[]
|
|
|
|
include::cluster/allocation-explain.asciidoc[]
|