问题发现:

kibana界面无日志数据展示

ES、kibana、logstash、filebeat等组件都运行正常

通过查看日志最终在logstash的日志中发现大量的以下内容报错:

this action would add [2] total shards, but this cluster currently has [1000]/[1000] maximum shards open;

经过上网查阅资料发现是ES的索引不够导致(大致翻译一下也差不多可以看出来)

网上说此问题是因为elasticsearch7以上默认只有1000个分片,超过这个数新收集的日志就没地方存储、展示

所以需要更改ES的shards数

方法如下:

在ES的主机上执行下列命令:

 curl -XPUT -H "Content-Type:application/json" -d '{"persistent":{"cluster":{"max_shards_per_node":10000}}}' 'spacer.gifhttp://es-host:9200/_cluster/settings'

image.png

刷新kibana界面,开始有新的日志展示了

elasticsearch之修改shards数_第1张图片

问题算是解决了

比较坑的是在网上搜索解决方法时,基本都是以下这样子:

elasticsearch之修改shards数_第2张图片

小白如我还以为是需要修改配置文件

就到处查找、修改配置文件,中间一度导致服务起不来(也是佩服自己)

经过踩坑才知道原来是执行命令,就贴出来以防和我一样的小白走弯路

哎~运维之路其修远兮,吾将上下而求索。