ELK搭建记录
2016-06-17 15:05
225 查看
一.版本
软件 | 版本 | 备注 |
jdk | 1.8 | 至少1.8 |
elasticsearch | 2.3.2 | |
logstash | 2.3.2 | |
kibana | 4.5.0 | |
redis | 3.3.0 |
二. 整体介绍
logstash分为agent(也称shiping)与index(也称indexing),是两种角色。agent用于收集日志,将日志写入redis指定key;index用于到redis读取指定key数据,读完将数据删除(注:消息的数据源写入量大于logstash处理速度时,会导致消息丢失,此时才需要将logstash拆分为两个角色,一个用作读,一个用作写。如果日志量不大,完整可以直接输出到ES)。es用于搜索日志信息,提供搜索服务。
kibana提供可视图形分析界面。
三.安装
各软件安装过程略,后续介绍启动命令。
四.启动redis
1.编辑redis的配置文件,主要修改里面“daemonize yes”,后台启动。2.启动redis:
# ./redis-cli ../conf/redis.conf
五.启动es
es不能用root启动,参数-d为后台启动:$ ./elasticsearch -d
六.启动kibana
nohup /home/edianzu/kibana-4.5.0/bin/kibana &或直接启动,观察日志(kibana比较容易宕)
七.logstash配置与启动
1.在es/bin同级目录创建conf目录,用于放置配置文件。2.创建tomcat_agent.conf,用于写日志到redis,内容如下:
input { file { type => "tomcat_error" tags => [ "tomcat_error", "log4j" ] # 只是个标签名称 path => "/home/centos/tomcat-erp/logs/catalina.out" # tomcat错误日志存放路径 自行定义 } } output { stdout { codec => rubydebug # 标准输出插件的输出类型 } redis { host => "127.0.0.1" port => 6379 data_type => "list" key => "logstash-redis" # password => "123456" db => 0 } }
3.创建tomcat_index.conf,用于读取redis数据到es,内容如下:
input { redis { host => "127.0.0.1" port => 6379 data_type => "list" key => "logstash-redis" db => 0 } } output { elasticsearch { hosts => "127.0.0.1:9200" # ElasticSearch地址与端口,可以为array. index => "logstash-erp" # 指定logstash进行索引的名称 } }
注:key内容需与agent中一致。
4.启动服务
需分别指定两个配置文件启动两个服务:
./logstash -f ../conf/tomcat_agent.conf
./logstash -f ../conf/tomcat_index.conf
加上--configtest 可对配置进行测试;也可nohup后台启动。
5.启动tomcat并产生日志
6.进入kibana界面
http://192.168.14.128:5601/
创建索引,界面如下:
切换到Discover界面,并搜索数据:
常用资料地址: http://www.chepoo.com/elasticsearcharticles http://es.xiaoleilu.com/index.html https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/index.html
相关文章推荐
- sublime快捷键大全(转)
- TCP(传输控制协议)和三次握手和四次断开
- LeetCode题解-206-Reverse Linked List Ⅰ
- Leetcode 67. Add Binary
- Android学习总结
- 重新安装python时出现的问题
- jvm 参数
- Linux的grep命令
- 第四章 Controller接口控制器详解(7)
- 一千行MySQL学习笔记
- mysql 设置 global log的方法
- Java Socket编程
- PL/SQL
- 求解单链表中倒数第k个节点
- Codeforces 571B Minimization (DP)
- Android自定义捕获Application全局异常
- 多线程线程池控制一个方法的并发量 限制只有5个线程执行任务
- [转] Tomcat 配置 SSL
- Android 小知识点
- linux expect的使用详解