问题描述:
自己利用Dataworks(阿里云的一个可视化工作平台,其实底层就是利用DataX将数据传输,其实什么工具并不重要的)将数据写入ElasticSearch的Index,刚开始数据导入显示正常,但是在ElasticSearch 中查询不到数据,到最后Dataworks还报错,这里报错就不截图了。就是卡在图一这个页面,然后报错,报错信息如下:
报错信息:
“error”:{“type”:“cluster_block_exception”,“reason”:“blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];”}}},{“index”:
{"_index":“ads_lading_trade_brief_es”,"_type":“doc”,"_id":“K_GIHHUBpns-GSbpTnn7”,“status”:403.
问题分析:
尝试查看Index的settings,发现是settings里面的参数出了问题,“read_only_allow_delete” : “true”,后面排查问题是我创建索引的时候不注意设置的,还有一种可能当磁盘空间不够的时候,为了保护集群,这个参数会由false变为true,这个还需要观者进一步测试,以前是我以前碰到过的一个问题,但记忆不是很清晰,这个通过kibana查看磁盘空间即可。
GET ads_lading_trade_brief_es/_settings
解决方法:
手动把这个参数设为 false
PUT /ads_lading_trade_brief_es/_settings
{
"settings": {
"index": {
"blocks": {
"read_only_allow_delete": "false"
}
}
}
}
设置好后,再次查询验证。
最后将数据重新写入,发现数据可以正常写入。
若觉得对你有帮助,还请帮忙点个赞,如有不足之处,欢迎留言评论。