Nodes info

Introduced 1.0

The nodes info API represents mostly static information about your cluster’s nodes, including but not limited to:

  • Host system information
  • JVM
  • Processor Type
  • Node settings
  • Thread pools settings
  • Installed plugins

Path and HTTP methods

  1. GET /_nodes
  2. GET /_nodes/<nodeId>
  3. GET /_nodes/<metrics>
  4. GET /_nodes/<nodeId>/<metrics>
  5. # or full path equivalent
  6. GET /_nodes/<nodeId>/info/<metrics>

Path parameters

The following table lists the available path parameters. All path parameters are optional.

ParameterTypeDescription
nodeIdStringA comma-separated list of nodeIds used to filter results. Supports node filters. Defaults to _all.
metricsStringA comma-separated list of metric groups that will be included in the response. For example, jvm,thread_pool. Defaults to all metrics.

The following table lists all available metric groups.

MetricDescription
settingsA node’s settings. This is a combination of the default settings, custom settings from the configuration file, and dynamically updated settings.
osStatic information about the host OS, including version, processor architecture, and available/allocated processors.
processContains the process ID.
jvmDetailed static information about the running JVM, including arguments.
thread_poolConfigured options for all individual thread pools.
transportMostly static information about the transport layer.
httpMostly static information about the HTTP layer.
pluginsInformation about installed plugins and modules.
ingestInformation about ingest pipelines and available ingest processors.
aggregationsInformation about available aggregations.
indicesStatic index settings configured at the node level.

Query parameters

You can include the following query parameters in your request. All query parameters are optional.

ParameterTypeDescription
flat_settingsBooleanSpecifies whether to return the settings object of the response in flat format. Default is false.
timeoutTimeSets the time limit for node response. Default value is 30s.

Example request

The following query requests the process and transport metrics from the cluster manager node:

  1. GET /_nodes/cluster_manager:true/process,transport

copy

To get thread pool information about the cluster manager node only, use the following query:

  1. GET /_nodes/master:true/thread_pool

copy

Example response

The response contains the metric groups specified in the <metrics> request parameter (in this case, process and transport):

  1. {
  2. "_nodes": {
  3. "total": 1,
  4. "successful": 1,
  5. "failed": 0
  6. },
  7. "cluster_name": "opensearch",
  8. "nodes": {
  9. "VC0d4RgbTM6kLDwuud2XZQ": {
  10. "name": "node-m1-23",
  11. "transport_address": "127.0.0.1:9300",
  12. "host": "127.0.0.1",
  13. "ip": "127.0.0.1",
  14. "version": "1.3.1",
  15. "build_type": "tar",
  16. "build_hash": "c4c0672877bf0f787ca857c7c37b775967f93d81",
  17. "roles": [
  18. "data",
  19. "ingest",
  20. "master",
  21. "remote_cluster_client"
  22. ],
  23. "attributes": {
  24. "shard_indexing_pressure_enabled": "true"
  25. },
  26. "process" : {
  27. "refresh_interval_in_millis": 1000,
  28. "id": 44584,
  29. "mlockall": false
  30. },
  31. "transport": {
  32. "bound_address": [
  33. "[::1]:9300",
  34. "127.0.0.1:9300"
  35. ],
  36. "publish_address": "127.0.0.1:9300",
  37. "profiles": { }
  38. }
  39. }
  40. }
  41. }

Response body fields

The response contains the basic node identification and build info for every node matching the <nodeId> request parameter. The following table lists the response fields.

FieldDescription
nameThe node’s name.
transport_addressThe node’s transport address.
hostThe node’s host address.
ipThe node’s host IP address.
versionThe node’s OpenSearch version.
build_typeThe node’s build type, like rpm, docker, tar, etc.
build_hashThe git commit hash of the build.
total_indexing_bufferThe maximum heap size in bytes used to hold newly indexed documents. Once this heap size is exceeded, the documents are written to disk.
rolesThe list of the node’s roles.
attributesThe node’s attributes.
osInformation about the OS, including name, version, architecture, refresh interval, and the number of available and allocated processors.
processInformation about the currently running process, including PID, refresh interval, and mlockall, which specifies whether the process address space has been successfully locked in memory.
jvmInformation about the JVM, including PID, version, memory information, garbage collector information, and arguments.
thread_poolInformation about the thread pool.
transportInformation about the transport address, including bound address, publish address, and profiles.
httpInformation about the HTTP address, including bound address, publish address, and maximum content length, in bytes.
pluginsInformation about the installed plugins, including name, version, OpenSearch version, Java version, description, class name, custom folder name, a list of extended plugins, and has_native_controller, which specifies whether the plugin has a native controller process.
modulesInformation about the modules, including name, version, OpenSearch version, Java version, description, class name, custom folder name, a list of extended plugins, and has_native_controller, which specifies whether the plugin has a native controller process. Modules are different from plugins because modules are loaded into OpenSearch automatically, while plugins have to be installed manually.
ingestInformation about ingest pipelines and processors.
aggregationsInformation about the available aggregation types.

Required permissions

If you use the Security plugin, make sure you have the appropriate permissions: cluster:monitor/nodes/info.