推荐阅读

Helm3(K8S 资源对象管理工具)视频教程:https://edu.csdn.net/course/detail/32506
Helm3(K8S 资源对象管理工具)博客专栏:https://blog.csdn.net/xzk9381/category_10895812.html

本文原文链接:https://blog.csdn.net/xzk9381/article/details/117075217,转载请注明出处。如有发现文章中的任何问题,欢迎评论区留言。

今天在查看 skywalking-oap 服务时,发现日志中出现了大量的报错信息,内容如下:

[967]: index [skywalking-test_segment-20210520], type [_doc], id
[2bac9570f91e4c468c76f853c8c3adc6.142.16214811300613334], message
[ElasticsearchException[Elasticsearch exception [type=illegal_argument_exception, reason=Validation Failed:
1: this action would add [5] total shards, but this cluster currently has [2999]/[3000] maximum shards open;]]]

报错的信息中表明用于存储 skywalking 数据的 ES 7 集群由于设置的总分片数量是 3000,当前已经存在 2999 个分片,然而当前新建的索引需要添加 5 个分片,超出了限制,所以索引创建失败。

首先说一下这个当前总分片数量 3000 是怎么来的。ES 7 集群中默认为每个 Node 节点最大 1000 个分片,我当前的集群有三个节点,所以总量为 3000。

解决这个问题的办法就是修改集群分片数量设置的参数:cluster.max_shards_per_node。可以调用如下 ES 集群接口来进行设置:

curl -X PUT "localhost:9200/_cluster/settings?pretty" -H 'Content-Type: application/json' -d '
{"persistent" : {"cluster" : {"max_shards_per_node" : "5000"}}
}'

查看当前的设置是否生效:

$ curl "localhost:9200/_cluster/settings?pretty"
{"persistent" : {"cluster" : {"max_shards_per_node" : "5000"}},"transient" : { }
}

设置完成后再次查看 skywalking-oap 的日志,可以发现数据已经正常写入。

需要注意的是,我们这里是在 persistent 中设置的参数。ES 集群的 setting 配置中包含两种类型:

  • persistent:永久生效的配置项
  • transient:临时生效的配置项,集群重启就会失效

ES修改集群最大分片数量max_shards_per_node相关推荐

  1. ElasticSearch集群与分片管理

    目录 1.集群的相关概念 1.1 集群 cluster 1.2 节点 node 1.3 分片和复制 shards&replicas 1.4 健康状态 1.5 存储空间 2.集群的搭建 2.1 ...

  2. ES安装的详细步骤、ES的集群搭建以及ElasticSearch安装时可能出现的问题

    目录 什么是es? 正排索引和倒排索引 安装 ElasticSearch的简单步骤 环境需求 安装ES 下载 设置虚拟机内存 创建用户 安装 ES的目录结构及其作用 配置文件以及作用 修改配置文件el ...

  3. ES查看集群信息命令

    本文主要讲述ElasticSearch5.6.1如何监控集群状态.查看集群信息的一般操作方法. 关于ElasticSearch5.6.1的环境搭建,请参考我另一篇博文. ElasticSearch5. ...

  4. ElasticSearch面试 - es 生产集群的部署架构是什么?

    ElasticSearch面试 - es 生产集群的部署架构是什么? 面试题 es 生产集群的部署架构是什么?每个索引的数据量大概有多少?每个索引大概有多少个分片? 面试官心理分析 这个问题,包括后面 ...

  5. 基于WIN10搭建ES伪集群的实践

    依据ES官网介绍https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html,ES将结点分为Mas ...

  6. Elasticsearch集群索引分片未分配unassigned导致集群状态红色red异常若干问题解决记录

    一.背景 今天收到告警短信发现某个业务系统几台服务器的日志收集服务filebeat均已下线,把Filebeat都重启之后,准备到Kibana查阅业务系统的日志,检索异常条目,发现从凌晨开始的日志条目都 ...

  7. mongodb集群与分片的配置说明

    mongodb集群与分片的配置说明 Shardingcluster介绍: 这是一种可以水平扩展的模式,在数据量很大时特给力,实际大规模应用一般会采用这种架构去构建monodb系统. 系统分为需要三种角 ...

  8. OpenShift 4 - 用KubeletConfig和ContainerRuntimeConfig分别修改集群节点的Kubelet和cri-o的配置

    <OpenShift 4.x HOL教程汇总> 说明:本文已经在OpenShift 4.6环境中验证 文章目录 Kubelet.KubeletConfig和KubeletConfigCon ...

  9. mysql 集群怎么卸载节点_Redis集群重新分片(新增/移除节点)【理论】

    Redis集群重新分片(新增/移除节点)[理论] 发布时间:2020-06-25 10:16:16 来源:51CTO 阅读:6915 作者:张德帅ya 栏目:数据库 redis集群重新分片原理:(增加 ...

最新文章

  1. 一种基于分层聚合的3D实例分割方法(ICCV 2021)
  2. cent os mysql下载_Cent OS 6.4安装mysql
  3. 求解一个数的所有约数之积
  4. why carbon 13?
  5. CodeForces - 343D Water Tree(树链剖分+线段树)
  6. h5 时间控件问题,怎么设置type =datetime-local 的值
  7. html修改原生checkbox选中的颜色_[三分钟小文]前端性能优化-HTML、CSS、JS部分
  8. pycharm的background task一直更新index,速度慢的解决方法
  9. Codeforces Round #461 (Div. 2)B-Magic Forest+位运算或优雅的暴力
  10. 51 单片机串口烧录程序方法
  11. SpringBoot整合Shiro框架
  12. Java 替换word文档文字
  13. DoS和DDoS攻击
  14. python播放背景音乐_Python帮你打包下载所有抖音背景音乐
  15. 服务器打开显示选择键盘布局,更改服务器上的TTY键盘布局?
  16. linux rescue 硬盘,深入浅出的了解Linux rescue
  17. 【铁矿石期货怎么开通】11月22日午盘基本面资讯整理
  18. 设置锁屏方式后,锁屏长按电源键还有锁屏按钮(lockdown)锁屏状态下应该没有,解锁使用后长按才有这个按钮。
  19. 【ubuntu】htop命令详解
  20. DTC趋势 | 2022年值得关注的10个DTC趋势

热门文章

  1. 解决Android Studio 的AVD中的模拟器不能用PC键盘输入的问题
  2. QQ互联第三方登录多应用用户登录打通
  3. 在百度地图中叠加CAD图及GIS数据展示踩坑记
  4. Latex——数学符号大全
  5. 好有作为的Java 程序员,年薪40W其实并不高。
  6. Android之集成极光推送消息
  7. 人脸识别与美颜算法实战-图像特效
  8. XML是什么鬼?全称叫啥勒?
  9. java8新特性stream流
  10. 计算机英语断句,英语断句方法