Docker ES 问题 : too_many_clauses maxClauseCount is set to 1024

线上出现es 报错:

too_many_clauses maxClauseCount is set to 1024

网上百度的答案很简单,改配置。

由于ES是docker安装的,而且配置文件没有映射到宿主机,所以想到进入容器内改配置,然后重启容器。

但是解决过程中还是遇到了很多坑,便记录下来。

第一个坑:配置写错,导致重启失败:

网上很多文章都是以下这种配置:

index.query.bool.max_clause_count: 10240 

正确的应该是:

indices.query.bool.max_clause_count: 10240

可能是由于版本的原因导致的配置差异。所以,我修改了配置之后,重启容器就悲剧了,一直无限循环重启中。

第二个坑:容器查看日志

出了问题只能查看容器日志来定位问题,但是docker日志命令不太熟悉,使用的是:

docker logs -f CONTAINER_ID

这个命令是查看所有的实时日志。由于我们的容器存在时间比较长,日志较多,导致我认为日志开始部分报错引起的重启,查了半天,没有结果,觉得方向不对。

后面百度才发现,查看容器最后100条日志应该使用以下命令

docker logs -f -t --since="2018-02-08" --tail=100 CONTAINER_ID

第三个坑:容器起不来,如何修改容器内部配置

解决方案:

我的容器名称:es,容器默认配置路径:/usr/share/elasticsearch/config

#cp出来,到宿主机当前目录下
docker cp es:/usr/share/elasticsearch/config/elasticsearch.yml .
#修改配置
vi elasticsearch.yml
#cp回去
docker cp elasticsearch.yml es:/usr/share/elasticsearch/config/elasticsearch.yml
#重启
docker start es

第四个坑:修改了防火墙策略或者重启网络导致容器外访问不了应用端口

解决办法:查看日志,有时候会有提示。重启docker,再启动容器。

参考资料: 

reason":"too_many_clauses: maxClauseCount is set to 1024 问题解决 - kuroniko - 博客园

怎么修改无法启动的docker容器的配置? - along7973 - 博客园


【docker】归纳最全的 查看docker容器日志的 docker logs命令_seowen的开发 小本子-CSDN博客_docker logs命令

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值