C/C++教程

【ElasticSearch】index read-only

本文主要是介绍【ElasticSearch】index read-only,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

今天在测试环境执行MySQL数据同步到ElasticSearch中时,出现无法写入的问题,并且提示

[FORBIDDEN/12/index read-only / allow delete (api)

 

排查后发现是ES所在服务器磁盘空间不足,导致索引无法写入,解决方式:

1.扩大磁盘或者删除部分历史索引

2.重置修改只读索引块

 

在Kibana上修改,如下

某一个索引重置只读模块
PUT /twitter/_settings
{
  "index.blocks.read_only_allow_delete": null
}
所有索引重置只读模块
PUT /_all/_settings
{
  "index.blocks.read_only_allow_delete": null
}
PUT /_cluster/settings
{
  "persistent" : {
    "cluster.blocks.read_only" : false
  }
}

修改默认配置

可以修改为具体的磁盘空间值,也可以修改为百分之多少
临时修改
PUT _cluster/settings
{
  "transient": {
    "cluster.routing.allocation.disk.watermark.low": "100gb",
    "cluster.routing.allocation.disk.watermark.high": "50gb",
    "cluster.routing.allocation.disk.watermark.flood_stage": "10gb",
    "cluster.info.update.interval": "1m"
  }
}
永久修改
PUT _cluster/settings
{
  "persistent": {
    "cluster.routing.allocation.disk.watermark.low": "100gb",
    "cluster.routing.allocation.disk.watermark.high": "50gb",
    "cluster.routing.allocation.disk.watermark.flood_stage": "10gb",
    "cluster.info.update.interval": "1m"
  }
}

 

参考文档:

https://www.elastic.co/guide/en/elasticsearch/reference/6.8/disk-allocator.html

这篇关于【ElasticSearch】index read-only的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!