ELK
ELK 运维都会接触到,是一个分布式日志收集平台。logstash 收集数据写到elasticsearch里,kibana从elasticsearch里读取数据。数据在elasticsearch里可以被检索,各种查询api,数据聚合等,功能很强大,不多说。
environments
目前现状:
os: centos6.6
elasticsearch: 2.4
cpu: 8
mem: 48
disk: 8T
index: 4 #一天4个
primary shards: 12
replica shards: 1
Master-eligible node: 4个 # 可以vote成master
Data node: 2个 # 数据结点,不可成为master
Client node: 0个 # 既不是maseter,也没是node,"smart node"转发集群之间的请求,和数据。
Tribe node: 0个 #用途冷热分离, 读写分离。
官网介绍的比较清楚。
下面是添加节点之后的图片。
起因
elasticsearch 原来只有6节点,一直工作很正常,最近老是出 gc,一般gc大家还能接受,就是释放点内存java的机制,这会可能是young区清除一区不用的对象,释放空间。但最近就是出现fullgc 就是old区,一些常驻内存的对象的区,要进行压缩内存。一般自己配置32G的空间给elasticsearch。但32G压缩的很慢,要几十分钟,而且压缩完最多 也就是31.5G,也就是压缩了几十分钟,正常几分钟,一有人在kibana上查询,又要fullgc了,这会这个节点基本属于不工作的状态了。一个节点挂了之前后面会增大其它节点的压力,其它五个节点也先后进行的fullgc的状态,此时的情况有可能集群还是green状态。但其它logstash已经写不数据了,kibana也查不到数据了。
<