Elasticsearch 集群 API

2025年3月17日 | 阅读 7 分钟

在 Elasticsearch 中,集群 API 获取有关集群及其节点的信息。它还对其进行进一步的更改。借助集群 API,我们可以在集群级别执行 21 个操作。我们可以使用此 API 来管理我们的集群。我们需要指定节点名称、地址或 _local 关键字以及 GET 方法来调用此 API

正如我们所说,这是一个分布式环境,我们有很多节点,这个 Elasticsearch 环境也可以是多节点部署。因此,在这种情况下,集群 API 为我们提供了与集群相关的信息。以下是集群 API 的一些要点 -

  • 大多数集群 API 允许指定要执行的节点。
  • 在 API 中,我们可以使用其内部节点名称、节点 ID、自定义属性、地址或仅接收 _local 节点请求来标识节点。

例如

响应

您将获得与以下响应相同的输出。

以下是一些可以执行的命令,用于获取有关集群的更多信息

  1. 集群健康
  2. 集群状态
  3. 集群统计信息
  4. 待处理的集群任务
  5. 节点统计信息
  6. 节点 hot_thread

集群健康

使用此 API,我们可以检查集群的运行状况。集群健康 API 有助于获取集群的运行状况。它分别返回集群状态为红色、黄色或绿色,表示停止、运行或就绪。

URL 中附加 _clusterhealth 关键字,并在集群运行状况上获取状态。执行以下代码并获取响应

复制代码

响应

您将获得类似以下响应的输出。

截图

Elasticsearch Cluster APIs

集群状态

此 API 用于获取有关集群状态的信息。状态信息包含集群名称、state_uuid、版本、主节点、元数据、路由表、块等等。

在 URL 中附加 _clusterstate 关键字,并获取有关集群状态的信息。执行以下代码并获取状态信息

复制代码

响应

您将获得类似以下响应的输出。

截图

Elasticsearch Cluster APIs

集群统计信息

统计信息代表 statistics。通过使用 stats 关键字,我们可以检索有关集群的统计信息。它返回有关集群的统计信息,以及分片数量、内存使用情况、存储大小、角色、操作系统、节点数量和文件系统。

在 URL 中附加 _clusterstats 关键字,并获取有关集群统计信息的信息。执行以下代码并获取集群的统计信息

复制代码

响应

您将获得类似以下响应的输出。

截图

Elasticsearch Cluster APIs

待处理的集群任务

待处理的集群任务 API 管理任何集群中的所有待处理任务。它监控任务,如创建索引、分配或失败分片以及更新映射等。要监控这些任务,请在 URL 中附加 _clusterpending_tasks,并获取集群中所有剩余/待处理的任务。复制以下代码并执行查询

复制代码

响应

如果集群中没有待处理任务,您将获得类似以下响应的输出。

截图

Elasticsearch Cluster APIs

集群重新路由

集群重新路由 API 负责将分片从一个节点移动到另一个节点。它还可以分配任何未分配的分片并取消任何分片的分配。为了成功执行此查询,我们需要使用 POST 请求方法。查看下面的示例并在您的系统上执行它

复制代码

响应

您将获得类似以下响应的输出。

截图

Elasticsearch Cluster APIs

集群更新设置

此 API 有助于更新集群的设置。使用 settings 关键字更新集群设置。大多数集群级别 API 允许用户指定要执行的节点。设置有两种类型 -

  1. 持久 - 适用于重启。
  2. 临时 - 不会在完整的集群重启后继续存在。

执行以下代码并获取响应

复制代码

响应

通过执行上述查询,您将获得类似以下响应的输出。

截图

Elasticsearch Cluster APIs

持久 API

我们可以更新设置以使其成为持久设置。以下是持久更新的示例

复制代码

响应

通过执行上述查询,您将获得类似以下响应的输出。

截图

Elasticsearch Cluster APIs

临时 API

我们可以更新设置以使其成为临时设置。以下是持久更新的示例

复制代码

响应

通过执行上述查询,您将获得类似以下响应的输出。

截图

Elasticsearch Cluster APIs

节点统计信息

节点统计信息 API 有助于检索有关集群节点的统计信息。节点统计信息和集群统计信息几乎相同。我们可以检索任意数量节点的统计信息。要检索节点的统计信息,请在 URL 中附加 _stats 关键字以及 _nodes 关键字。

复制以下代码并在您的系统上执行查询

复制代码

响应

通过执行上述查询,您将获得类似以下响应的输出。

截图

您将获得与以下屏幕截图相同的输出。

Elasticsearch Cluster APIs

节点 hot_threads

此 API 负责检索有关集群中每个节点当前热线程的信息。要检索每个节点上热线程的信息,请在 URL 中附加 hot_threads 关键字以及 _nodes 关键字,并在响应正文中获取响应。 GET 方法用于发送此 http 请求。

复制以下代码并在您的系统上执行查询。它将需要一些时间才能完全执行。

复制代码

响应

通过执行上述查询,您将获得类似以下响应的输出。


下一篇主题版本之间的迁移