排查mongdb宕机,无法启动的问题

点击Edit index Set

1.检查磁盘空间:df -h 查看磁盘使用空间情况;

 

 

 

发现某个区的磁盘已满;
追踪磁盘已满的大文件 sudo du –sh *

 

 进入elasticsearch文件中,追踪占磁盘大的文件:

 

 

百度搜索发现,网上说当日志发送到ELK之后,Elasticsearch随着日志的增加,占用磁盘量会越来越大 ,可能会需要一些配置在哪里订起自动删除类的,或者限定一下空间占用大小,搜索参考文档 https://www.cnblogs.com/songxingzhu/p/10213230.html
由于mongdb不确定是否删了某个文件,干脆整个删除,重新解压了一个mongodb包
进入:/home/tdops/graylog/mongodb
tar -zxvf mongodb-linux-x86_64-rhel70-3.6.5
删除之前的data文件 rm -rf data
重新创建文件夹 mkdir data
删除占用磁盘空间的tar安装包,启动mongdb
启动:nohup ./mongod --dbpath=/home/tdops/graylog/mongodb/data >> mongodb.log 2>&1 &
检测启动是否OK:curl localhost:27017
 

 

 

启动es;
启动graylog;
清理graylog-server的日志文件,cd graylog-2.4.5/log  | echo > graylog-server.log (这里说明不要用rm -rf file);
 
在web界面上进行设置elasticsearch日志的大小,开启自动删除索引配置;点击system/indices,修改Default index set

 

 

点击Edit index Set

 

 部署了集群配置,两台elasticsearch,所以这里配置“2“;

 

 

Select rotation strategy 选择按照“index size”,由于测试机硬盘20G,暂时分配1G;
Select rotation strategy 选择 Delete index ,Max number of indices 配置“2”;(当索引创建数达到了2的时候,自动删除最早的那个索引日志);

 

 

 

 

这个时候发现磁盘空间还是已满的状态;为什么呢?到底是什么还占用了磁盘呢?
输入命令,查看索引还在,手动删除掉red不可用的索引:
 
查看到磁盘空间在正常范围;

 

 

同时可以web界面上手动进行删除:

 

 

点击maintenance
1.recalculate index ranges 重新计算索引范围
2.rotate actice write index 旋转活动写索引,创建新的可活动索引;
 
web界面查看,搜索不到日志,并未发现异常警告;
配置input接收器:点击system/inputs ,选择GELF UDP,新建Launch new input ,端口号:12201;看到收取正常“RUNNING”表示ok了
 

 

 

 

 

配置完成,理应收取到应用的日志;
由于测试过程曾重复配置了端口号为12201的收集器,造成某个收集器没有正常”RUNNING”,直接被我给delete掉了,产出以下问题:
1.直观问题:搜取不到应用日志;
2.看到web界面上只有input输入,发现output 0msg/s,重新配置一下就好了;
3.图片为正常情况;

 

 

 

 

 

 

 

 

 

posted @ 2020-05-15 11:33  molity  阅读(503)  评论(0编辑  收藏  举报