mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-06 21:18:31 +00:00
This fixes a bug in the sensing of the current OS family in the test cluster formation code. Previously all builds would assume every environment was windows and would jump to using the windows zip build. This fixes the OS sensing code as well as updates some tests to account for different build flavors. Backport of #38457
296 lines
8.3 KiB
Plaintext
296 lines
8.3 KiB
Plaintext
[[cluster-nodes-info]]
|
|
== Nodes Info
|
|
|
|
The cluster nodes info API allows to retrieve one or more (or all) of
|
|
the cluster nodes information.
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
GET /_nodes
|
|
GET /_nodes/nodeId1,nodeId2
|
|
--------------------------------------------------
|
|
// CONSOLE
|
|
|
|
The first command retrieves information of all the nodes in the cluster.
|
|
The second command selectively retrieves nodes information of only
|
|
`nodeId1` and `nodeId2`. All the nodes selective options are explained
|
|
<<cluster-nodes,here>>.
|
|
|
|
By default, it just returns all attributes and core settings for a node:
|
|
|
|
[float]
|
|
[[core-info]]
|
|
|
|
`build_hash`::
|
|
Short hash of the last git commit in this release.
|
|
|
|
`host`::
|
|
The node's host name.
|
|
|
|
`ip`::
|
|
The node's IP address.
|
|
|
|
`name`::
|
|
The node's name.
|
|
|
|
`total_indexing_buffer`::
|
|
Total heap allowed to be used to hold recently indexed
|
|
documents before they must be written to disk. This size is
|
|
a shared pool across all shards on this node, and is
|
|
controlled by <<indexing-buffer,Indexing Buffer settings>>.
|
|
|
|
`total_indexing_buffer_in_bytes`::
|
|
Same as `total_indexing_buffer`, but expressed in bytes.
|
|
|
|
`transport_address`::
|
|
Host and port where transport HTTP connections are accepted.
|
|
|
|
`version`::
|
|
Elasticsearch version running on this node.
|
|
|
|
It also allows to get only information on `settings`, `os`, `process`, `jvm`,
|
|
`thread_pool`, `transport`, `http`, `plugins`, `ingest` and `indices`:
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
# return just process
|
|
GET /_nodes/process
|
|
|
|
# same as above
|
|
GET /_nodes/_all/process
|
|
|
|
# return just jvm and process of only nodeId1 and nodeId2
|
|
GET /_nodes/nodeId1,nodeId2/jvm,process
|
|
|
|
# same as above
|
|
GET /_nodes/nodeId1,nodeId2/info/jvm,process
|
|
|
|
# return all the information of only nodeId1 and nodeId2
|
|
GET /_nodes/nodeId1,nodeId2/_all
|
|
--------------------------------------------------
|
|
// CONSOLE
|
|
|
|
The `_all` flag can be set to return all the information - or you can simply omit it.
|
|
|
|
[float]
|
|
[[os-info]]
|
|
==== Operating System information
|
|
|
|
The `os` flag can be set to retrieve information that concern
|
|
the operating system:
|
|
|
|
`os.refresh_interval_in_millis`::
|
|
Refresh interval for the OS statistics
|
|
|
|
`os.name`::
|
|
Name of the operating system (ex: Linux, Windows, Mac OS X)
|
|
|
|
`os.arch`::
|
|
Name of the JVM architecture (ex: amd64, x86)
|
|
|
|
`os.version`::
|
|
Version of the operating system
|
|
|
|
`os.available_processors`::
|
|
Number of processors available to the Java virtual machine
|
|
|
|
`os.allocated_processors`::
|
|
The number of processors actually used to calculate thread pool size. This number can be set
|
|
with the `processors` setting of a node and defaults to the number of processors reported by the OS.
|
|
In both cases this number will never be larger than 32.
|
|
|
|
[float]
|
|
[[process-info]]
|
|
==== Process information
|
|
|
|
The `process` flag can be set to retrieve information that concern
|
|
the current running process:
|
|
|
|
`process.refresh_interval_in_millis`::
|
|
Refresh interval for the process statistics
|
|
|
|
`process.id`::
|
|
Process identifier (PID)
|
|
|
|
`process.mlockall`::
|
|
Indicates if the process address space has been successfully locked in memory
|
|
|
|
[float]
|
|
[[plugins-info]]
|
|
==== Plugins information
|
|
|
|
`plugins` - if set, the result will contain details about the installed plugins and modules per node:
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
GET /_nodes/plugins
|
|
--------------------------------------------------
|
|
// CONSOLE
|
|
// TEST[setup:node]
|
|
|
|
The result will look similar to:
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
{
|
|
"_nodes": ...
|
|
"cluster_name": "elasticsearch",
|
|
"nodes": {
|
|
"USpTGYaBSIKbgSUJR2Z9lg": {
|
|
"name": "node-0",
|
|
"transport_address": "192.168.17:9300",
|
|
"host": "node-0.elastic.co",
|
|
"ip": "192.168.17",
|
|
"version": "{version}",
|
|
"build_flavor": "{build_flavor}",
|
|
"build_type": "{build_type}",
|
|
"build_hash": "587409e",
|
|
"roles": [
|
|
"master",
|
|
"data",
|
|
"ingest"
|
|
],
|
|
"attributes": {},
|
|
"plugins": [
|
|
{
|
|
"name": "analysis-icu",
|
|
"version": "{version}",
|
|
"description": "The ICU Analysis plugin integrates Lucene ICU module into elasticsearch, adding ICU relates analysis components.",
|
|
"classname": "org.elasticsearch.plugin.analysis.icu.AnalysisICUPlugin",
|
|
"has_native_controller": false
|
|
}
|
|
],
|
|
"modules": [
|
|
{
|
|
"name": "lang-painless",
|
|
"version": "{version}",
|
|
"description": "An easy, safe and fast scripting language for Elasticsearch",
|
|
"classname": "org.elasticsearch.painless.PainlessPlugin",
|
|
"has_native_controller": false
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
--------------------------------------------------
|
|
// TESTRESPONSE[s/"_nodes": \.\.\./"_nodes": $body.$_path,/]
|
|
// TESTRESPONSE[s/"elasticsearch"/$body.cluster_name/]
|
|
// TESTRESPONSE[s/"USpTGYaBSIKbgSUJR2Z9lg"/\$node_name/]
|
|
// TESTRESPONSE[s/"name": "node-0"/"name": $body.$_path/]
|
|
// TESTRESPONSE[s/"transport_address": "192.168.17:9300"/"transport_address": $body.$_path/]
|
|
// TESTRESPONSE[s/"host": "node-0.elastic.co"/"host": $body.$_path/]
|
|
// TESTRESPONSE[s/"ip": "192.168.17"/"ip": $body.$_path/]
|
|
// TESTRESPONSE[s/"build_hash": "587409e"/"build_hash": $body.$_path/]
|
|
// TESTRESPONSE[s/"roles": \[[^\]]*\]/"roles": $body.$_path/]
|
|
// TESTRESPONSE[s/"attributes": \{[^\}]*\}/"attributes": $body.$_path/]
|
|
// TESTRESPONSE[s/"plugins": \[[^\]]*\]/"plugins": $body.$_path/]
|
|
// TESTRESPONSE[s/"modules": \[[^\]]*\]/"modules": $body.$_path/]
|
|
|
|
The following information are available for each plugin and module:
|
|
|
|
* `name`: plugin name
|
|
* `version`: version of Elasticsearch the plugin was built for
|
|
* `description`: short description of the plugin's purpose
|
|
* `classname`: fully-qualified class name of the plugin's entry point
|
|
* `has_native_controller`: whether or not the plugin has a native controller process
|
|
|
|
|
|
[float]
|
|
[[ingest-info]]
|
|
==== Ingest information
|
|
|
|
`ingest` - if set, the result will contain details about the available
|
|
processors per node:
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
GET /_nodes/ingest
|
|
--------------------------------------------------
|
|
// CONSOLE
|
|
// TEST[setup:node]
|
|
|
|
The result will look similar to:
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
{
|
|
"_nodes": ...
|
|
"cluster_name": "elasticsearch",
|
|
"nodes": {
|
|
"USpTGYaBSIKbgSUJR2Z9lg": {
|
|
"name": "node-0",
|
|
"transport_address": "192.168.17:9300",
|
|
"host": "node-0.elastic.co",
|
|
"ip": "192.168.17",
|
|
"version": "{version}",
|
|
"build_flavor": "{build_flavor}",
|
|
"build_type": "{build_type}",
|
|
"build_hash": "587409e",
|
|
"roles": [],
|
|
"attributes": {},
|
|
"ingest": {
|
|
"processors": [
|
|
{
|
|
"type": "date"
|
|
},
|
|
{
|
|
"type": "uppercase"
|
|
},
|
|
{
|
|
"type": "set"
|
|
},
|
|
{
|
|
"type": "lowercase"
|
|
},
|
|
{
|
|
"type": "gsub"
|
|
},
|
|
{
|
|
"type": "convert"
|
|
},
|
|
{
|
|
"type": "remove"
|
|
},
|
|
{
|
|
"type": "fail"
|
|
},
|
|
{
|
|
"type": "foreach"
|
|
},
|
|
{
|
|
"type": "split"
|
|
},
|
|
{
|
|
"type": "trim"
|
|
},
|
|
{
|
|
"type": "rename"
|
|
},
|
|
{
|
|
"type": "join"
|
|
},
|
|
{
|
|
"type": "append"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
--------------------------------------------------
|
|
// TESTRESPONSE[s/"_nodes": \.\.\./"_nodes": $body.$_path,/]
|
|
// TESTRESPONSE[s/"elasticsearch"/$body.cluster_name/]
|
|
// TESTRESPONSE[s/"USpTGYaBSIKbgSUJR2Z9lg"/\$node_name/]
|
|
// TESTRESPONSE[s/"name": "node-0"/"name": $body.$_path/]
|
|
// TESTRESPONSE[s/"transport_address": "192.168.17:9300"/"transport_address": $body.$_path/]
|
|
// TESTRESPONSE[s/"host": "node-0.elastic.co"/"host": $body.$_path/]
|
|
// TESTRESPONSE[s/"ip": "192.168.17"/"ip": $body.$_path/]
|
|
// TESTRESPONSE[s/"build_hash": "587409e"/"build_hash": $body.$_path/]
|
|
// TESTRESPONSE[s/"roles": \[[^\]]*\]/"roles": $body.$_path/]
|
|
// TESTRESPONSE[s/"attributes": \{[^\}]*\}/"attributes": $body.$_path/]
|
|
// TESTRESPONSE[s/"processors": \[[^\]]*\]/"processors": $body.$_path/]
|
|
|
|
The following information are available for each ingest processor:
|
|
|
|
* `type`: the processor type
|