由于线上业务越来越多,各种各样的日志记录在业务服务器上。每次线上出问题都需要登录到对应的业务服务器上来排查,不仅仅浪费运维的时间,增加工作量,而且查到的日志很多还需要再交付至研发同事来分析报错原因。
打算使用ELK(集中日志分析系统)来减轻日常的日志报错定位操作,本文记录了在内网测试环境中的ELK整套集群系统部署,以及其中碰到的各种坑还有填坑办法
Task List
- [x] 安装配置ElasticSearch
- [x] 安装配置Zookeeper和Kafka集群
- [x] 安装配置LogStash
- [x] kafka配置详解
- [ ] 安装配置filebeat
- [ ] Kafka密码认证
- [ ] filebeat和LogStash的SSL认证传输数据
环境说明
操作系统版本:CentOS6.9 64位
ES版本:5.5.2
filebeat版本:5.5.2
kafka版本:2.12-0.10.2.1
kibana版本:5.5.2
logstash版本:5.5.2
node版本:6.11.2 # 8.4版本会导致安装插件失败
zookeeper版本:3.4.9
JDK版本:1.8.0_144 #JDK版本需在1.8.0以上,openjdk也可以
- 10.8.189.101 # ES/logstash/kafka
- 10.8.189.102 # ES/logstash/kafka/kinbana
- 10.8.189.103 # ES/logstash/kibana/nginx
配置Java环境变量
# vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# source /etc/profile
资源包下载
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.2.tar.gz
wget https://artifacts.elastic.co/downloads/logstash/logstash-5.5.2.tar.gz
wget https://artifacts.elastic.co/downloads/kibana/kibana-5.5.2-linux-x86_64.tar.gz
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.5.2-linux-x86_64.tar.gz
wget https://nodejs.org/dist/v6.11.2/node-v6.11.2-linux-x64.tar.xz
wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz
wget http://mirror.bit.edu.cn/apache/kafka/0.10.2.1/kafka_2.12-0.10.2.1.tgz