kibana重建es索引报错request body is required
问题背景
业务需要把mysql的数据同步到es,用es来查。公司用于同步mysql和es的组件,在mysql表新增字段时会对同步的es索引新增字段,但新增的字段类型可能不是我们想要的,因为es不支持索引字段类型的修改和删除,这时就需要重建es索引。这里的重建索引简单说就是新建一个字段正确的新索引,把旧索引的数据同步到新索引中,再把旧索引删除,最后对新索引设置别名为旧索引名。
在业务上线前用kibana重建索引,执行
POST _reindex
{
"source": {
"index": "old_index"
},
"dest": {
"index": "new_index"
},
"conflicts": "proceed"
}
这条命令在测试环境执行时正常,但线上环境执行时报错:文章来源:https://www.toymoban.com/news/detail-565353.html
解决方式
用curl在线上环境的容器里执行上述的重建索引命令,重建索引的curl命令可以用kibana生成
https://discuss.elastic.co/t/reindex-fails-in-kibana-devtools-console-but-succeeds-on-command-line-using-curl/237266
原因可能是线上环境数据量较大,es社区有一些类似的讨论,是kibana的问题文章来源地址https://www.toymoban.com/news/detail-565353.html
到了这里,关于kibana重建es索引报错request body is required的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!