es集群问题排查、常用命令、参数解析

4 篇文章 0 订阅
订阅专栏

一、常用命令

#1.集群健康状态
[wlsadmin@elastic-01~]$ curl -XGET "http://10.219.27.00:7116/_cluster/health?pretty"
{
cluster name":"cluster"
"status": "yellow",   #集群状态
"timed out" : false,
"number of nodes": 3,  #集群的节点数
"number_of data nodes": 3, #数据节点数
"active_primary_shards" : 8036,  #集群中所有活跃的主分片数
"active shards": 16082, #集群中所有活跃的分片数
"relocating shards": 0, #当前节点迁往其他节点的分片数量,通常为0,当有节点加入或者退出时该值会增加。
"initializing shards": 0, #正在初始化的分片
"unassigned shards": 10,  #未分配的分片数,通常为0,当有某个节点的副本分片丢失该值就会增加。
"delayed unassigned shards": 0,
"number of pending tasks": 0, 是指主节点创建索引并分配shards等任务,如果该指标数值一直未减小代表集群存在不稳定因素
"number of in flight fetch" :0,
"task max waiting in queue millis": 0,
"active shards percent as number" :99.93785732040766  #集群分片健康度,活跃分片数占总分片数比例。
}
 
说明:pending task只能由主节点来进行处理,这些任务包括创建索引并将shards分配给节点。

#2.集群状态信息
[wlsadmin@elastic-01~]$ curl -XGET "http://10.219.27.00:7116/_cluster/stats?pretty"
{
    "_nodes":{
    "total":3,
    "successful":3,
    "failed":0
    },
   "cluster name":"cluster"
   "timestamp": 1650958054278,
   "status": "yellow",
   "indices":{
     "count”:1612,  #索引总数
     "shards":{
       "total”:16082,  #分片总数
       "primaries”:8036, #主分片数量
       "replication”: 1.001244400199104
       "index":{
         "shards":{
            "min": 2,
            "max”:15,
            "avg”: 9.97642679900744
            },
            "docs”:{
          "count”: 6917866009,  #文档总数
          "deleted": 16940
          },
          "store":{
           "size in bytes”:7722541162072  #数据总存储容量
           "throttle time in millis": 0
           }"fielddata”:{
           "memory_size_in_bytes": 2400,
           "evictions”:0}"segments”:{
      "count”:182641, #段总数
      "memory in bytes”: 22809369464,
       "terms memory in bytes": 20058152621
      "stored fields memory in bytes”:2091992312
      "term vectors memory in bytes”: 0,
      "norms memory in bytes":197683328,
      "points memory in bytes”: 170072327,
        "doc values memory in bytes”: 291468876,
        "index writer memory in bytes”:87483620
        "version map memory in bytes":346399,
        "fixed_bit_set memory_in_bytes”: 5536,
       "max unsafe auto id timestamp”:1650945037930
       "file_sizes”:{
       }
       }
       },
   "nodes":{
   "count”:{"total”:3,  #总节点数
   "data”:3,  #数据节点数
   "coordinating_only”: 0,
   "master”: 3,
   "ingest”:3},
   "versions”:["5.6.16"]"fs":{
    "total in bytes”: 11249073020928,  #文件系统使用总容量
    "free in bytes”: 2432532422656,  #文件系统剩余总容量
     "available in bytes”: 1942384254976,
     "spins":"true"}
     ...
 
 
#3.查看索引信息
[wlsadmin@elastic-01~]$ curl -XGET "http://10.219.27.00:7116/_cat/indices"
green open .kibana-event-log-7.8.0-000001 93qZ6-tUT1GJa9w-beZtqQ 1 1      5 0  51.5kb  25.7kb
green open .kibana-event-log-7.8.0-000002 aVeWX45vRqK5bi5ANvz3EA 1 1      0 0    416b    208b
green open .apm-custom-link               qMdSK3MAQxa4Ip37SPkaaw 1 1      0 0    416b    208b
 
#4.查看节点信息
[wlsadmin@elastic-01~]$ curl -XGET "http://10.219.27.00:7116/_cat/nodes?pretty"
XX.XX.XX.XX 16 64 0 0.06 0.04 0.05 dilmrt * node-1   #主节点
XX.XX.XX.XX 11 64 0 0.00 0.01 0.05 dilmrt - node-2
XX.XX.XX.XX  9 67 0 0.00 0.01 0.05 dilmrt - node-3
 
#5.查看索引级别,找到红色的索引
GET /_cluster/health?level=shards
"apache-logs8xxxx”:{
"status" : "green",
"number_of_shards": 1,
"nusber_of_replicas":1.
"active_primary_shards":1,
"active_shards":2,
"relocating_shards”:0,
"initializing.shards”: 0
"unassignedshards”:0},
"mytest”:{
"status" : "red",   #状态为红色的索引
"number_of_shards" :3.
"number_of_replicas":0.
"active_primary_shards": 0,
"active_shards" : 0,
"relocating shards": 0.
"initializing shards": 0.
"unassigned_shards”:3},
 
#6.查看变红原因(explanation变红原因)
GET /_cluster/allocation/explain
"node_decision" : "no",
"weight_ranking":3,"deciders”:[
{
   "decider":"filter",
   "decision":"NO""explanation”:"""node does not match index setting Lindex.routing.allocation.require] filters [box type: "hott"]""

二、案例分析

2.1集群变红

症状:集群变红
分析:通过Allocation Explain API 发现创建索引失败,因为无法找到标记了相应box type的节点
解决:删除索引,集群变绿,重新创建索引,并且指定正确的routing box type,索引创建成功集群保持绿色状态

1.查看索引级别,找到红色的索引
GET /_cluster/health?level=shards
"apache-logs8xxxx”:{
"status" : "green",
"number_of_shards": 1,
"nusber_of_replicas":1.
"active_primary_shards":1,
"active_shards":2,
"relocating_shards”:0,
"initializing.shards”: 0
"unassignedshards”:0}"mytest”:{
"status" : "red",   #状态为红色的索引
"number_of_shards" :3.
"number_of_replicas":0.
"active_primary_shards": 0,
"active_shards" : 0,
"relocating shards": 0.
"initializing shards": 0.
"unassigned_shards”:3}2.查看变红原因(explanation变红原因)
GET /_cluster/allocation/explain
"node_decision" : "no",
"weight_ranking":3,"deciders”:[
{
   "decider":"filter",
   "decision":"NO",   #因为box-type不符合规则,删除不正确的索引重新创建
   "explanation”:"""node does not match index setting Lindex.routing.allocation.require] filters [box type: "hott"]""
    
3.删除错误的索引
curl -XDELETE localhost:9200/index_name #索引名字
DELETE  mytest
 
4.重新创建新索引
PUT mytest
{
"settings":{
"number_of_shards":3,
"number_of_replicas":0
"index.routing.allocation.require.box_type":"hot"}
2.2集群变黄

症状:集群变黄
分析:通过Allocation Explain API 发现无法在相同的节点上创建副本(副本分片无法正常分配)
解决:将索引的副本数设置为0,或者通过增加节点解决

1.创建索引使集群变黄
PUT mytest
{
    "settings":{
        "nameber_of_shards":2, #分片2
        "namber_of_replicas":1, #副本1
        "index.routing.allocation.requice.box_type":'hot' #指定hot节点创建
    }
}
 
2.查看集群健康状态为黄色
GET _cluster/health
 
3.查看集群黄色原因(因为集群只有一个hot节点,不能再相同的节点上创建副本)
GET /_cluster/allocation/explain
"explanation": "the shard cannot be allocated to the same node on which a copy of the shard already exists[[mytest][1],node[1-wAVO-FT0GLAdRk8-N-GQ],[P], s[STARTED],a[id=_PLt4SS1SyGvxncvU3HN-w]]"
 
4.解决方法
方法1:增加数据节点,使得有副本分配空间;
方法2:修改索引的setting使replicos为0
PUT mytest/_settings
{
    "namber_of_replicas":0
}
创建后集群恢复绿色状态
2.3集群磁盘空间达到阈值

问题:es节点磁盘占用较高,达到阈值,集群状态成red
此时直接删除索引磁盘空间是不会释放的,可以通过调整阈值,将集群状态变为yellow

通过api动态修改:transient 临时更改,persistent是永久更改

临时修改:重启es后失效

curl -H "Content-Type: application/json" -XPUT 10.203.118.32:9200/_cluster/settings -d '{"transient": { "cluster.routing.allocation.disk.watermark.low": "92%", "cluster.routing.allocation.disk.watermark.high": "95%", "cluster.info.update.interval": "1m"}}'

永久修改:

curl -H "Content-Type: application/json" -XPUT 10.203.118.32:9200/_cluster/settings -d '{"persistent": { "cluster.routing.allocation.disk.watermark.low": "90%", "cluster.routing.allocation.disk.watermark.high": "95%", "cluster.info.update.interval": "1m" } }’



在删除索引可达到空间释放的作用
修改es配置文件,需要重启es

在这里插入图片描述

cluster.routing.allocation.disk.watermark.low
 
Controls the low watermark for disk usage. It defaults to 85%, meaning that Elasticsearch will not allocate shards to nodes that have more than 85% disk used. It can also be set to an absolute byte value (like 500mb) to prevent Elasticsearch from allocating shards if less than the specified amount of space is available. This setting has no effect on the primary shards of newly-created indices or, specifically, any shards that have never previously been allocated.
 
cluster.routing.allocation.disk.watermark.high
 
Controls the high watermark. It defaults to 90%, meaning that Elasticsearch will attempt to relocate shards away from a node whose disk usage is above 90%. It can also be set to an absolute byte value (similarly to the low watermark) to relocate shards away from a node if it has less than the specified amount of free space. This setting affects the allocation of all shards, whether previously allocated or not.
 
cluster.routing.allocation.disk.watermark.flood_stage
 
Controls the flood stage watermark. It defaults to 95%, meaning that Elasticsearch enforces a read-only index block (index.blocks.read_only_allow_delete) on every index that has one or more shards allocated on the node that has at least one disk exceeding the flood stage. This is a last resort to prevent nodes from running out of disk space. The index block must be released manually once there is enough disk space available to allow indexing operations to continue.
 
 
 
es 集群的默认配置是当集群中的某个节点磁盘达到使用率为 85% 的时候,就不会在该节点进行创建副本,当磁盘使用率达到 90% 的时候,尝试将该节点的副本重分配到其他节点。
 
当磁盘使用率达到95% 的时候,当前节点的所有索引将被设置为只读索引。

在这里插入图片描述

三、es集群认证忘记账户密码

3.1ES集群在基于xpack安全认证方式下,密码丢失该如何快速重置密码?
ES集群在基于xpack安全认证方式下,密码丢失该如何快速重置密码?
保持当前ES服务正常,配置文件不做任何修改选择集群内正常可用的某个节点做本地操作。
创建基本本地认证的临时超级管理员admin。设置密码admin,权限为superuser。

/midware/elasticsearch/bin/elasticsearch-users useradd  admin -p admin -r superuser


利用刚才创建的临时用户更改超级用户elastic密码为elasticcurl -u  admin -XPUT 'http://10.203.118.37:9200/_xpack/security/user/elastic/_password?pretty' -H 'Content-Type: application/json' -d '{'password':'elastic'}'
删除临时超级用户,ES集群无痕处理/midware/elasticsearch/bin/elasticsearch-users userdel  admin
使用更改后账户密码登录即可
es查看集群状态常用命令.md
10-29
es查看集群状态常用命令
ES 常用查询命令汇总
大叶子不小的博客
05-16 4192
cat系列提供了一系列查询。二:_cluster系列。1、查询设置集群状态。三:_nodes系列。
查看ES集群健康状态
最新发布
喝醉酒的小白
08-20 877
活跃分片占总分片的83.8%,这意味着一些分片可能由于未分配或其他原因而不活跃。状态,您可能需要检查 Elasticsearch 日志文件,查找为什么副本分片未能成功分配,并采取相应的措施来解决这些问题。,这意味着尽管所有主分片都正常工作,但存在一些未分配的副本分片。: 人类可读的时间表示,展示了集群健康状况最后更新的时间。: 等待最长时间的任务的等待时间(毫秒)。: 存储数据并参与分片分配的节点数量。: 集群尝试重新分配分片的数量。: 集群中所有索引的分片总数。: 未分配的分片数量。
ES查看集群信息(健康状态、分片、索引等)
热门推荐
迎风悟极道的专栏
07-06 3万+
查看ES集群信息,如:健康状态、分片、索引等
ES常用查询命令
耕耘
11-10 6843
es常用查询命令
es查看集群状态常用命令
江晓龙的博客
09-22 2844
active_shards_percent_as_number这个值如果低于100说明集群数据正确性存在问题集群状态为yellow或者red都会使这个值低于100。1.查看集群数据的正确率。2.查看集群索引的状态
ELK集群部署(elasticsearch\logstash\kibana)
01-18
Logstash可以配置为多实例运行,分别处理不同类型的日志源,或者使用负载均衡策略将数据均匀分配到Elasticsearch集群。Kibana部署也可以水平扩展,以支持高并发的用户访问。 **JDK1.8** Java Development Kit (JDK)...
Elasticsearch全观测技术解析与应用.pdf
04-08
### Elasticsearch全观测技术解析与应用 #### 一、走进阿里云Elasticsearch Elasticsearch是一种广泛采用的信息检索和分析引擎,在全球范围内享有极高的声誉。阿里云Elasticsearch不仅继承了Elasticsearch的核心...
Elasticsearch 8.1.2 Linux版本
04-06
1. **节点(Node)**:Elasticsearch集群中的每个运行实例称为一个节点,节点之间通过网络通信进行数据交互。 2. **索引(Index)**:类似于关系数据库中的表,是文档的容器。每个索引都有一个唯一的名称,并且可以设置...
elasticsearch-lua:Elasticsearch的Lua客户端
02-03
Elasticsearch-Lua为Lua开发者提供了一种强大且便捷的方式来访问和管理Elasticsearch集群。通过使用这个客户端库,开发者可以充分利用Lua的简洁性和Elasticsearch的搜索与分析能力,构建高效的数据处理应用。无论是...
集群状态查询
duzm200542901104的专栏
05-12 1413
一、获取集群状态的API: 1、请求:GET _cluster/health 2、响应: { "cluster_name": "elasticsearch_zach", "status": "green", "timed_out": false, "number_of_nodes": 1, "number_of_data_nodes": 1, "active_primary_shards": 10, #集群中的主分片数量 "active_shards": 10,#所...
ES集群监控总结
数据挖掘学习者
11-23 1万+
一、参考资料http://www.54tianzhisheng.cn/2017/10/18/ElasticSearch-nodes-metrics/ https://www.datadoghq.com/blog/monitor-elasticsearch-performance-metrics/#memory-usage-and-garbage-collection二、前言最近在研究ES集群监控方
ElasticsearchES常用命令
superone52033的博客
01-17 886
elasticsearch(es)常用指令
Elasticsearch 集群故障排查及修复指南
铭毅天下Elasticsearch
11-14 1万+
Elasticsearch 集群在运行的过程中,由于各种原因,经常会出现健康问题。比较直观的是:kibana监控、head插件监控显示集群非绿色(红色或者黄色)。遇到这种情况不要慌,本文...
深入浅出 spring-data-elasticsearchElasticSearch 架构初探(一)
weixin_33681778的博客
06-06 271
本文目录一、Elasticsearch 基本术语1.1 文档(Document)、索引(Index)、类型(Type)文档三要素1.2 集群(Cluster)、节点(Node)、分片(Shard)分布式三要素二、Elasticsearch 工作原理2.1 文档存储的路由2.2 如何健康检查2.3 如何水平扩容三、小结 推荐:Spring For All ...
elasticsearch 集群管理
weixin_35675281的博客
09-29 1117
elasticsearch 集群管理常用的命令
Elasticsearch监控】集群查看
qq_44849679的博客
02-22 1374
这个API返回基本的索引指标(分片数、存储大小、内存使用情况)和关于当前集群节点的信息(数量、角色、操作系统、jvm版本、内存使用情况、cpu和已安装的插件)。例如,任务管理、节点状态和节点信息都可以报告一组经过筛选的节点的结果,而不是所有节点的结果。响应提供集群名称、集群状态的总压缩大小(序列化以便在网络上传输时的大小)和集群状态本身,可以对其进行筛选,以只检索感兴趣的部分。返回的统计信息是在索引级别聚合的,包含初选和总聚合,其中初选仅是主分片的值,而total是主分片和复制分片的累计值。
Elasticsearch 集群的健康状态、路由和索引别名(十三)
nandao158的博客
10-12 1117
集群的健康 API 接口提供了一个方便但略有粗糙的概览,包括集群、索引和 分片的整体健康状况。这通常是发现和诊断集群中常见问题的第一步。 curl -XGET http://xxxxxx:9200/_cluster/health?pretty 从这个答复的表明信息,我们可以推断出很多关于集群整体健康状态的信息。 我们一般比较关注的是:"cluster_name" : 集群名称 "status" : 正常情况下,Elasticsearch 集群健康状态分为三种: ..
ElasticSearch---查询es集群状态、分片、索引
ss810540895的博客
03-01 4076
后面加上pretty,能让返回的json格式化。
写文章

热门文章

  • Promethus===》普罗米修斯简介、时序数据库、监控系统的基本使用 6300
  • nginx修复漏洞 4742
  • nacos版本升级和开启权限认证配置(1.3.2—2.0.3) 4446
  • es集群问题排查、常用命令、参数解析 2681
  • devops===》Jenkins(自由风格)+gitlab+sonar代码扫描漏洞扫描 2333

分类专栏

  • Linux(k8s) 11篇
  • Linux流水线 11篇
  • linux虚拟化 2篇
  • Linux(nginx) 1篇
  • Linux(nacos) 1篇
  • aws云 1篇
  • Linux日志收集 4篇
  • linux 2篇
  • Linux(skywalking) 1篇
  • Linux (rockrt mq) 1篇
  • windows连接k8s集群 1篇
  • Linux(canal) 1篇
  • Linux(SVN) 1篇
  • Python 1篇
  • Linux日常巡检 1篇
  • Linux普罗米修斯 4篇
  • Linux(ELK) 1篇
  • Linux缓存 3篇
  • Linux架构 3篇
  • Linux容器 6篇
  • Linux数据库 12篇
  • Linux监控 10篇
  • shell编程 19篇

最新评论

  • nginx修复漏洞

    sout_ok: 为毛我直接用你的配置文件还是扫描到X-XSS-Protection头配置错误、X-Frame-Options头配置错误还有Content-Security-Policy头配置错误

  • canal===docker部署canal

    炒河粉少年: 你这运行脚本跑不起来,一堆报错

  • Devops===》参数化构建

    qq_24103715: Jenkins你写devops?

  • 日志收集===》EFK部署+supervisor管理

    TTianbo123: 看了博主Linux系列文章,受益匪浅,最近也打算学习这个方向,可以加您VX随时交流吗

  • devops===》Jenkins(pipeline)+gitlab+sonar代码扫描漏洞扫描

    泰山AI: 不错的好文,鉴定完毕!

最新文章

  • kubernrtes===》自建k8s证书过期
  • kvm虚拟机扩容
  • k8s环境之cicd部署+远程触发
2023年1篇
2022年13篇
2021年84篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳坪山网站建设公司常州网站关键词优化哪家好优化友好的网站石家庄网站优化飞数科技最好保险行业网站优化比较好永康靠谱网站优化收费兰州网站优化公司郫都区网站优化公司外贸网站谷歌优化网站优化排名价格多少亦庄网站关键词排名优化哪个b2b网站优化好优化网站seo公司网站的优化用什么软件汕头专业的网站优化seo价格吉安市网站优化排名网站如何优化竞争网站优化插件网站优化方式做的智能网站怎么优化英文谷歌优化网站酒泉网站怎么优化武汉网站产品优化湖北网站优化分析网站关键词优化策略网站优化方式方法武汉云助客网站优化莱阳网站优化外包鞍山网站长尾关键词优化深圳做网站优化哪个好观澜网站优化服务商香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

深圳坪山网站建设公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化