ElasticSearch的集群管理命令

news2024/10/7 2:30:05

ElasticSearch版本

{
  "name" : "data-slave1",
  "cluster_name" : "data-es",
  "cluster_uuid" : "xxxxxxxxxx-eMwxw",
  "version" : {
    "number" : "7.2.1",
    "build_flavor" : "default",
    "build_type" : "rpm",
    "build_hash" : "fkg6eb20",
    "build_date" : "2021-07-24T17:58:29.979462Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

集群管理命令

Cat API

cat aliases

cat aliases 命令用于显示索引的别名,也包括过滤器和路由信息。

GET /_cat/aliases?v

在这里插入图片描述

  • alias 别名
  • index 索引别名指向
  • filter 过滤规则
  • routing.index 索引路由
  • routing.search 搜索路由

cat allocation

cat allocation命令可以查看每个节点分配的分配数量以及它们所使用的硬盘空间大小

GET /_cat/allocation?v

在这里插入图片描述

  • shards 分片数
  • disk.indices 索引index占用的空间大小
  • disk.used 已用磁盘空间
  • disk.avail 可用磁盘空间
  • disk.total 磁盘空间总量
  • disk.percent 磁盘已使用百分比
  • host 节点主机地址
  • ip 节点ip
  • node 节点名称

cat count

cat count 命令可以快速查询整个集群或者单个索引的文档数量。

GET /_cat/count?v

在这里插入图片描述

  • epoch 自标准时间(1970-01-01 00:00:00)以来的秒数
  • timestamp 时间,存在8小时时间差问题
  • count 文档总数
GET /_cat/count/[索引名称]?v

cat fielddata

cat fielddata命令用于查看当前集群中每个数据节点上被fielddata所使用的堆内存大小。

GET /_cat/fielddata?v

在这里插入图片描述
在Elasticsearch中,Field Data是用于在聚合(aggregation)和排序(sorting)操作中对文档字段进行分析和处理的一种数据结构。它是一个缓存在内存中的数据结构,用于快速访问和处理字段值。

Field Data可以被认为是对文档字段进行预处理的一种形式,它将字段值从原始的文本形式转换成可供聚合和排序操作使用的数据类型。例如,将一个字符串形式的日期字段转换成一个时间戳,或将一个字符串形式的数字字段转换成一个数字。

使用Field Data可以有效地提高聚合和排序操作的性能,因为它可以避免在每次操作中都对原始字段值进行解析和转换。此外,Field Data还可以通过使用缓存来进一步提高性能,以便更快地访问和处理字段值。

然而,Field Data也有一些限制和注意事项。首先,Field Data需要占用一定的内存空间,因此在处理大量数据时可能会导致内存消耗过高。其次,Field Data只能在不可变的字段上使用,因为一旦字段值发生变化,就需要重新生成Field Data。

为了使用Field Data,可以在字段映射中将字段的fielddata属性设置为true。例如,以下是一个将timestamp字段设置为可使用Field Data的映射示例:

{
  "mappings": {
    "properties": {
      "timestamp": {
        "type": "date",
        "fielddata": true
      }
    }
  }
}

需要注意的是,在大多数情况下,Elasticsearch会自动选择合适的字段数据存储方式。因此,只有在确实需要对字段进行聚合和排序操作时,才需要显式地启用Field Data。

cat health

cat health 命令用于显示集群的健康信息。

GET /_cat/health?v

在这里插入图片描述

  • epoch 自标准时间(1970-01-01 00:00:00)以来的秒数
  • timestamp 时间
  • cluster 集群名称
  • status 集群状态
  • node.total 节点总数
  • node.data 数据节点总数
  • shards 分片总数
  • pri 主分片总数
  • repo 复制节点的数量
  • init 初始化节点的数量
  • unassign 未分配分片的数量
  • pending_tasks 待定任务数
  • max_task_wait_time 等待最长任务的等待时间
  • active_shards_percent 活动分片百分比

cat indices

cat indices命令可以查看索引信息,包括索引健康状态、索引开关状态、分片数、副本数、文档数量、标记为删除的文档数量、占用的存储空间等信息

GET /_cat/indices?v

在这里插入图片描述

  • health 索引的健康状态
  • status 索引的开启状态
  • index 索引名字
  • uuid 索引的uuid
  • pri 索引的主分片数量
  • rep 索引的复制分片数量
  • docs.count 索引下的文档总数
  • docs.deleted 索引下删除状态的文档数
  • store.size 主分片+复制分片的大小
  • pri.store.size 主分片的大小

cat master

cat master命令可以显示master节点的节点ID、绑定的IP和节点名

GET /_cat/master?v

在这里插入图片描述

cat nodeattrs

cat nodeattrs命令可以显示指定节点的属性信息。

GET /_cat/nodeattrs?v

在这里插入图片描述

cat nodes

cat nodes命令可以查看集群拓扑结构

GET /_cat/nodes?v

在这里插入图片描述

  • ip es节点ip
  • heap.percent 堆内存占比
  • ram.percent 内存使用占比
  • cpu cpu使用率
  • load_1m 1分钟内平均load情况,单位ms
  • load_5m 5分钟内平均load情况,单位ms
  • load_15m 15分钟内平均load情况,单位ms
  • node.role 节点权限
  • master 是否master节点,*为master节点
  • name 节点名称

cat pending_tasks

cat pending_tasks命令用于查看正在执行的任务列表。

GET /_cat/pending_tasks?v

在这里插入图片描述

  • insertOrder 任务插入顺序
  • timeInQueue 任务排队了多长时间
  • priority 任务优先级
  • source 任务源

cat plugins

cat plugins命令用于查看每一个节点所运行插件的信息

GET /_cat/plugins?v

在这里插入图片描述

cat recovery

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操作数
  • translog_ops_recovered 已恢复的translog操作数
  • translog_ops_percent 恢复的translog操作的百分比

cat repositories

cat repositories 命令用于展示集群中注册的快照库

GET /_cat/repositories?v

在这里插入图片描述

cat thread_pool

cat thread_pool命令用于展示集群中每一个节点线程池的统计信息。默认情况下返回所有线程池的active、queue和rejected的统计信息

GET /_cat/thread_pool?v

在这里插入图片描述
由结果发现有很多种类的线程池,询问了一下AI

elasticsearch的线程池很多种类吗?

是的,Elasticsearch的线程池名字有很多个。每个线程池都有自己的名称,用于标识和区分不同的线程池。以下是一些常见的线程池名称:

  • index:用于执行索引操作的线程池。
  • search:用于执行搜索操作的线程池。
  • bulk:用于执行批量操作的线程池。
  • get:用于执行获取操作的线程池。
  • suggest:用于执行自动补全操作的线程池。
  • snapshot:用于执行快照和恢复操作的线程池。

此外,Elasticsearch还支持自定义线程池,可以根据需要创建自己的线程池并提供相应的名称。可以通过Elasticsearch的管理接口查看和监控线程池的状态和性能指标。

Elasticsearch中的线程池是用于处理各种任务的线程池。线程池是一种管理和复用线程的机制,可以提高系统的效率和性能。

Elasticsearch中有几种不同类型的线程池,每种类型都用于处理特定类型的任务。以下是一些常见的线程池类型:

线程池类型:用于处理索引操作。这种线程池用于执行索引操作,如文档的索引、更新和删除。它的线程数通常会根据可用的处理器核心数自动调整。

  • 搜索线程池:用于处理搜索请求。这种线程池用于执行搜索操作,包括查询、聚合和排序。它的线程数也会根据可用的处理器核心数自动调整。
  • 获取线程池:用于处理获取请求。这种线程池用于执行获取操作,如根据ID获取文档或检索文档的字段。类似于搜索线程池,其线程数也会根据可用的处理器核心数自动调整。
  • 刷新线程池:用于处理刷新请求。这种线程池用于处理刷新操作,该操作用于将内存中的索引数据写入磁盘。

除了以上列出的线程池类型,Elasticsearch还有其他一些专用的线程池,用于处理一些特殊的任务,如批量操作线程池、监听器线程池和管理任务线程池等。

总的来说,线程池在Elasticsearch中是非常重要的,它可以高效地管理系统的资源,并提供并发处理能力,从而提高系统的性能和吞吐量。

cat shards

cat shards 命令用于查看节点包含的分片信息,包括一个分片是主分片还是一个副本分片、文档的数量、硬盘上占用的字节数、节点所在的位置等信息。

GET /_cat/shards/.monitoring-es-7-2024.01.23?v

在这里插入图片描述

  • index 索引名称
  • shard 分片序号
  • prirep 分片类型 p 表示是主分片 r 表示是复制分片
  • state 分片状态
  • docs 该分片存放的文档数量
  • store 该分片占用的存储空间大小
  • ip 该分片所在的服务器ip
  • node 该分片所在的节点名称

cat segments

cat segments 命令用于查看索引的段信息

GET /_cat/segments/.monitoring-es-7-2024.01.23?v

在这里插入图片描述

  • index 索引名称
  • shard 分片名称
  • prirep 主分片还是副本分片
  • ip 所在节点ip
  • segment segments段名
  • generation 分段生成
  • docs.count 段中的文档数
  • docs.deleted 段中删除的文档数
  • size 段大小,以字节为单位
  • size.memory 段内存大小,以字节为单位
  • committed 段是否已提交
  • searchable 段是否可搜索
  • version 版本
  • compound compound模式

cat templates

cat templates命令用于查看集群中的模板

GET /_cat/templates?v

在这里插入图片描述

  • name 模板名称
  • index_patterns 模板匹配规则
  • order 模板优先级
  • version 模板版本

Cluster API

Cluster Health

利用ElasticSearch的集群健康API可以查看当前集群的健康信息

GET _cluster/health

在这里插入图片描述

  • cluster_name 集群名称
  • status 集群的健康状态,green 所有主分片和从分片都可用,yellow 所有主分片可用,但存在不可用的从分片,red 存在不可用的主分片
  • timed_out 是否超时
  • number_of_nodes 节点数,包括master节点和data节点
  • number_of_data_nodes data节点数
  • active_primary_shards 活动的主分片
  • active_shards 所有活动的分片数,包括主分片和副本
  • relocating_shards 正在发生迁移的分片
  • initializing_shards 正在初始化的分片
  • unassigned_shards 没有被分配的分片
  • delayed_unassigned_shards 延迟未被分配的分片
  • number_of_pending_tasks master节点任务队列中的任务数
  • number_of_in_flight_fetch 正在进行迁移的分片数量
  • task_max_waiting_in_queue_millis 队列中任务最大等待时间
  • active_shards_percent_as_number 活动分片的百分比

获取一个或多个索引的健康信息

GET /_cluster/health/.monitoring-es-7-2024.01.23

Cluster State

Cluster State(集群状态)API 可以对整个集群的信息进行一个全面的了解,包括集群信息、集群中每个节点的信息、元数据、路由表等。

GET /_cluster/state

在这里插入图片描述

  • version 返回集群状态版本信息
  • master_node 只返回master节点的状态信息
  • nodes 返回集群中的节点的配置信息,主要包括节点名称、IP、是否是master节点
  • routing_table 返回每个节点的路由信息
  • metadata 返回元数据信息,包括每个索引的mapping、setting等信息
  • blocks 返回集群中的块数据信息

Cluster Stats

Cluster Stats (集群统计)API用于从集群中获取各种统计数据。该API的返回信息主要有两部分,一部分是索引层面,包括分片数、存储大小、内存使用情况等指标,另一部分是节点层面,包括节点数量、节点角色、操作系统、jvm版本、内存、CPU、安装的插件等指标。

GET /_cluster/stats

在这里插入图片描述

  • _nodes 节点信息
  • cluster_name 集群名称
  • cluster_uuid 集群ID
  • timestamp 时间戳
  • status 集群状态
  • indices
    • count 索引数
    • shards 分片信息:总数、主分片数、副本分片数、以及最大、最小、均值
    • docs 文档信息:文档数、删除的文档数
    • store 存储大小
    • fielddata 字段缓存信息
    • query_cache 查询缓存信息
    • completion 自动补全信息
    • segments 段信息
  • nodes
    • count 节点总数、以及各角色节点数
    • versions 版本
    • os 操作系统信息:处理器数量、系统名称、内存
    • process 进程信息
    • jvm java虚拟机信息:版本、内存、线程
    • fs 文件系统信息
    • plugins 插件信息
    • network_types 网络信息
    • discovery_types 自动发现信息
    • packaging_types 发布包信息

Pending Cluster Tasks

Pending Cluster Tasks API 用于返回一个正在添加到更新集群状态的任务列表。集群中的变化通常是很快的,通常这个操作会返回一个空的列表

GET /_cluster/pending_tasks

在这里插入图片描述

Cluster Reroute

reroute命令可以明确地执行集群重新路由分配命令。例如,把一个分片从一个节点移动到另一个节点,把未分配的分片移动到一个指定的节点

POST /_cluster/reroute
{
	"commands":[
		{
		 "move":{
		 	"index":"test",
		 	"shard":0,
		 	"from_node":"node1",
		 	"to_node":"node2"
		 }
		},
		{
		 "allocate_replica":{
          "index":"test",
          "shard":1,
          "node":"node3"
         }
	    }
	]
}

Cluster Update Settings

Update Settings命令可以更新集群中的配置,如果是永久配置,就需要重启集群;如果是瞬时配置,就不需要重启集群。例如,更新最小master节点数

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

Nodes Stats

Cluster Nodes Stats(集群节点统计信息) API可以获取集群中一个或者多个节点的统计信息。

GET /_nodes/stats

在这里插入图片描述
获取nodeId1 和 nodeId2节点的统计信息

GET /_nodes/nodeId1,nodeId2/stats

Nodes Info

Cluster Nodes Info API 可以获取集群中一个或多个节点的信息,包括设置、操作系统、虚拟机、线程池等信息。

GET /_nodes

在这里插入图片描述

GET /_nodes/os,jvm

在这里插入图片描述

Task Management API

Task Management API 可用于获取ElasticSearch集群中一个或多个节点正在执行中的任务信息。

GET /_tasks

在这里插入图片描述

Cluster Allocation Explain API

Cluster Allocation Explain API 用于解释分片没有被分配的原因。

GET /_cluster/allocation/explain
{
  "index":".monitoring-es-7-2024.01.23",
  "shard":0,
  "primary":true
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1405686.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

重拾计网-第四弹 计算机网络性能指标

ps:本文章的图片内容来源都是来自于湖科大教书匠的视频,声明:仅供自己复习,里面加上了自己的理解 这里附上视频链接地址:1.5 计算机网络的性能指标(1)_哔哩哔哩_bilibili ​​​ 目录 &#x…

Windows ssh登录eNSP交换机

目录 1. Cloud IO配置1.1 创建UDP端口1.2 创建本地连接1.3 端口映射设置 2. 交换机配置2.1 配置vlanif2.2 配置vty2.3 配置ssh用户2.4 配置aaa2.5 使用Xshell工具登录2.6 用户和密码2.7 登录成功 3. 使用cmd 登录报错提示3.1 手动指定加密算法,提示密码长度无效3.2 …

通过MobaXterm实现串口通信与SSH通信

MobaXterm实现串口通信与SSH MobaXterm简介 MobaXterm是一款终端工具,不仅免费,而且高效,相比于收费的SecureCRT和免费的PuTTy,MobaXterm可谓博采众长。在师兄的建议下,选择这款工具作为终端调试工具。 界面如下图所示…

机器人DH建模

D-H 根据表达式判断所建立的DH模型是标准型(Standard DH)还是改进型(Modified DH) 第三四行的首元素为0的是标准型,参考博客 标准DH参数坐标系建立在传动轴上,而修正DH参数坐标系建立在驱动轴上。修正D…

啊哈c语言——逻辑挑战14(一个萝卜一个坑)

这里有一个有趣的问题:从键盘输入5个0~9的数,然后输出0~9 中那些没有出现过的数。例如,输入2 5 2 1 8时,输出0 3 4 6 7 9。 想一想,有没有什么好办法? 我们这里借助一个数组就可以解…

【数据结构】 链栈的基本操作 (C语言版)

目录 一、链栈 1、链栈的定义: 2、链栈的优缺点: 二、链栈的基本操作算法(C语言) 1、宏定义 2、创建结构体 3、链栈的初始化 4、链栈的进栈 5、链栈的出栈 6、获取栈顶元素 7、栈的遍历输出 8、链栈的判空 9、求链…

车辆 | 平行泊车路径规划碰撞约束及可行驶区域公式推导

注:本文推导参考网上论文并加上了一些自己的理解,侵权删。 一、碰撞约束: 需要先计算D 点(D 点为第一段圆弧路径的终点)位置,再根据 D 点计算C 点范围区域。 其中:Lp为车位长度,最…

【论文阅读】Automated Runtime-Aware Scheduling for Multi-Tenant DNN Inference on GPU

该论文发布在 ICCAD’21 会议。该会议是EDA领域的顶级会议。 基本信息 AuthorHardwareProblemPerspectiveAlgorithm/StrategyImprovment/AchievementFuxun YuGPUResource under-utilization ContentionSW SchedulingOperator-level schedulingML-based scheduling auto-searc…

联想M7268、7208打印机加粉清零方法

联想小新M7268激光一体机基本参数 产品类型 黑白激光多功能商用一体机 涵盖功能 打印/复印/扫描 最大处理幅面 A4 耗材类型 鼓粉分离 耗材容量 硒鼓LD2268:10000页,墨粉LT2268:1000页 双面功能 手…

Spring复习-问题回答

1.什么是 spring,你对 spring 的理解? Spring是一个轻量级,非侵入式的(不使用框架特定的类,感受不到框架)IOC和AOP一站式的java后端开发框架,简化企业开发。 2.spring 的优缺点 优点: Spr…

C++11新特性:拓展的friend语法

在C中,friend关键字用于声明一个函数或类是另一个类的友元(friend)。被声明为友元的函数或类可以访问包含它的类的私有成员。 使用friend关键字应当谨慎,因为它破坏了封装性,增加了类之间的耦合性。友元关系应该仅在确…

Spring中Bean对象的存储与读取

创建 Maven 项目 添加 Spring 框架支持 在项目的 pom.xml 中添加 Spring 支持 如何选定版本环境&#xff1a;打开官网&#xff0c;点击github图标 jdk8最后一个Spring版本是5.3.x&#xff0c;Spring6.0.x最低需要jdk17 <dependencies><dependency><groupId&…

QT upd测试

QT upd测试 本次测试将服务器和客户端写在了一个工程下&#xff0c;代码如下 widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include<QUdpSocket> #include<QTimer>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACE…

Windows下RocketMQ搭建

RocketMQ安装 注&#xff1a;Windows必须先安装64bit的 JDK1.8 或以上版本及Maven 。 1.官网下载&#xff1a;下载 | RocketMQ 2.将下载下的安装文件解压到本地磁盘 3.配置环境变量 &#xff1a; 变量名&#xff1a;ROCKETMQ_HOME 变量值&#xff1a;G:\RocketMQ\rocketmq…

常用电子器件学习——MOS管

MOS管介绍 MOS&#xff0c;是MOSFET的缩写。MOSFET 金属-氧化物半导体场效应晶体管&#xff0c;简称金氧半场效晶体管&#xff08;Metal-Oxide-Semiconductor Field-Effect Transistor, MOSFET&#xff09;。 一般是金属(metal)—氧化物(oxide)—半导体(semiconductor)场效应晶…

SpringBoot 中配置处理

1、简介 本文介绍一些 springboot 配置管理相关的内容&#xff0c;如何自定义配置&#xff0c;导入配置&#xff0c;配置绑定和基于 profiles 的配置。 2、springboot 配置管理 2.1、自定义配置类 在 spring 中使用 Configuration 注解定义配置类&#xff0c;在 springboot 中…

利用GPU加速自定义风格图像生成-利用GPU加速结合了ControlNet/ Lora的Stable Diffusion XL

点击链接完成注册&#xff0c;参加本次在线研讨会 https://www.nvidia.cn/webinars/sessions/?session_id240124-31319 随着AI技术的发展, 数字内容创建业务也变得越来越火热。生成式AI模型的发布, 让我们看到了人工智能在各行各业的潜力。您只需要用语言简单描述自己希望看…

【Python】FastApi框架搭建部署

FastApi 是一个现代、快速&#xff08;高性能&#xff09;的 web 框架&#xff0c;用于基于标准Python构建的API。 官方网址&#xff1a;FastAPI 1.安装 1.1 环境信息 # Python版本 3.8.0 1.2 安装 FastApi pip install fastapi # uvicorn 作为服务启动fastapi框架 pip i…

【牛客】几何糕手、国际裁判带师、数位dp?、灵异背包、矩阵快速幂签到、第一次放学

文章目录 《几何糕手》题目描述思路代码 《国际裁判带师》题目描述思路代码 《数位dp?》题目描述思路代码 《灵异背包》题目描述思路代码 《矩阵快速幂签到》题目描述思路代码 《第一次放学》题目描述思路代码 《几何糕手》 题目链接 题目描述 “芝士肾么&#xff1f;” 地…

Mysql的骚操作说明

Mysql的常规操作 记录些不常用,但是很实用的操作,旨在在MySQL语言能解决的批量操作的问题,不动用其他动态或静态语言的辅助。 1、FROM_UNIXTIME 时间戳转时间格式 select scode,sid,gender,type,FROM_UNIXTIME(report_time) as report_time,FROM_UNIXTIME(add_time) as add…