之前增加了多台服务器的日志采集,而且包含apache的访问日志和错误日志,导致日志量过大,ELK服务出现异常。


首先是访问kibana出现错误:

wKiom1jPUZ-AApdwAAC-ScyqiGI401.png-wh_50

显示错误信息为:

Elasticsearch is still initializing the kibana index.

百度了一下,是因为kibana的索引过大,需要删除kibana的索引:

curl -XDELETE http://localhost:9200/.kibana

这里是删除了kibana的索引

删除之后,服务启动后就会没有索引了,需要重建:filebeat-*

这里只是删除索引,之前的数据都还有。


但是,删除之后仍然报错,Elasticsearch还是错误的,所以查看Elasticsearch的日志,发现大量的Out of Memeory 错误信息:

因为之前是保持默认的配置,需要修改JVM的内存配置。

ELK 5.0之后的配置方式跟以前都不一样了,修改配置文件:

vim /usr/local/elasticsearch/config/jvm.options
 -Xms8g
 -Xmx8g

默认是2g,配置原则为可用内存的一般即可,至于为什么是一半这个网上有详细的说明文档。

我的服务器是16G内存,所以配置为8G内存。