Elasticserach 同步索引报错:ElasticSearch ClusterBlockException[blocked by: [FORBIDDEN/12/index read-only /

欢迎关注我的微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 《Java 核心知识整理&面试.pdf》资源连接!!html

我的网站: https://www.exception.site/essay/elasticsearch-sync-index-read-only-allow-deletenode

记一次中台数据传输同步Elasticsearch失败车祸现场

目录

  • 1、背景
  • 2、题外话
  • 3、开始排查
  • 4、为何索引处于只读状态呢?
  • 5、如何解决

1、背景

前几天小哈在钉钉群里收到重庆业务线反馈,说是中台数据传输中间件在同步 Mysql 增量数据到 Elasticsearch 老是失败。面试

什么

2、题外话

你说的这个数据传输和阿里云提供的数据传输DTS是一个东西吗?sql

阿里数据传输DTS

不是!上面说的数据传输是小哈所在的中台研发部自主研发的中间件,目的是为了取代各业务线对阿里DTS同步功能的依赖!数据库

目前来讲,数据传输仍是要依赖于阿里开源 Canal, 或者阿里 DTS,依赖的目的是实现对 Mysql 数据库 binlog 增量订阅。api

以上网络架构示例图中,中台数据传输充当一个 binlog 事件消费者的角色,经过自定义规则映射,数据加工,分发并最终同步到目标源 Elasticsearch 中。bash

3、开始排查

回归正题,出了问题,立马赶忙经过跳板机连上数据传输所在的服务器,开始查看日志:服务器

看到日志中存在大量的 [FORBIDDEN/12/index read-only / allow delete (api)] 错误!!微信

提示错误也很明显:ES 索引处于只读状态!!在和业务组沟通之后,发现须要同步的目标索引有两个,一个商品索引(充当主表),一个商品属性索引(充当商品从表),从表同步是 ok 的,也就是说商品属性索引非只读状态,写入正常,仅仅是商品索引处于只读状态,最终未能正常同步数据。网络

4、为何索引处于只读状态呢?

什么缘由致使的索引只读的?小哈开始翻阅 Elasticsearch 官方文档, 原文以下:

Elasticsearch considers the available disk space on a node before deciding whether to allocate new shards to that node or to actively relocate shards away from that node.

Elasticsearch 在决定是否分配新分片给该节点,或对该节点从新定位分片以前,会先判断该节点存储空间是否足够,若是说你的使用磁盘空间已经超过 95%,ES 会自动将索引 index 置为 read-only 状态。

因而,让运维看下 ES 机器的磁盘空间是否足够,运维反馈说:前两天就是由于磁盘不足告警,刚刚扩的容,确定是够的!

真相大白了!

前两天磁盘空间不足,那个时候,商品索引恰好有写入的操做,因为 ES 的保护机制,将该索引置为了只读状态。

5、如何解决

缘由找到了!要如何解决呢?

处于只读状态的索引,只能被查询或者删除。而 ES 还不会自动将索引状态切换回来,就须要咱们手动切换了:

PUT /<yourindex>/_settings
{
  "index.blocks.read_only_allow_delete": null
}

对商品索引执行如上命令后。让业务组再次同步数据,一切正常了。

6、参考

免费分享 | 面试&学习福利资源

最近在网上发现一个不错的 PDF 资源《Java 核心知识&面试.pdf》分享给你们,不光是面试,学习,你都值得拥有!!!

获取方式: 关注公众号: 小哈学Java, 后台回复资源,既可免费无套路获取资源连接,下面是目录以及部分截图:

关注微信公众号【小哈学Java】,回复【资源】,便可免费无套路领取资源连接哦

关注微信公众号【小哈学Java】,回复【资源】,便可免费无套路领取资源连接哦

关注微信公众号【小哈学Java】,回复【资源】,便可免费无套路领取资源连接哦

关注微信公众号【小哈学Java】,回复【资源】,便可免费无套路领取资源连接哦

关注微信公众号【小哈学Java】,回复【资源】,便可免费无套路领取资源连接哦

关注微信公众号【小哈学Java】,回复【资源】,便可免费无套路领取资源连接哦

重要的事情说两遍,关注公众号: 小哈学Java, 后台回复资源,既可免费无套路获取资源连接 !!!

相关文章
相关标签/搜索