您的位置:首页 > 其它

logstash+elasticsearch+kibana快速搭建日志平台

2015-11-11 15:34 155 查看
目录

一、 简介

二、 logstash

三、 elasticsearch

四、 kibana

一、 简介

日志的分析和监控在系统开发中占非常重要的地位,系统越复杂,日志的分析和监控就越重要,常见的需求有:

• 根据关键字查询日志详情

• 监控系统的运行状况

• 统计分析,比如接口的调用次数、执行时间、成功率等

• 异常数据自动触发消息通知

• 基于日志的数据挖掘

很多团队在日志方面可能遇到的一些问题有:

• 开发人员不能登录线上服务器查看详细日志,经过运维周转费时费力

• 日志数据分散在多个系统,难以查找

• 日志数据量大,查询速度慢

• 一个调用会涉及多个系统,难以在这些系统的日志中快速定位数据

• 数据不够实时

最常见的需求就是收集、查询、显示,正对应logstash、elasticsearch、kibana的功能。

elk是指logstash,elasticsearch,kibana三件套,这三件套可以组成日志分析和监控工具。

比如我这里下载的一套是logstash 2.0.0 + elasticsearch 2.0.0 + kibana 4.2.0



二、 logstash

logstash部署简单,下载压缩包,就是一个 pipeline

inputs >> codecs >> filters >> outputs

1.下载logstash-2.0.0.tar.gz解压

https://download.elastic.co/logstash/logstash/logstash-2.0.0.tar.gz

解压到目录/Users/duwei/software/elk/logstash-2.0.0

tar xzvf logstash-2.0.0.tar.gz

2.添加2个配置文件

1). 添加logstash.conf(采集日志输出到redis中)

在bin目录中添加logstash.conf

input{
file{#path要采集日志路径
type => "budgetpull"
path => ["/*/logs/bugetpulljob/budgetpull/*","/*/logs/bugetpulljob/redis/*"]
start_position => "beginning"
}
file{
type => "duedate"
path => ["/*/logs/duedatejob/*"]
start_position => "beginning"
}
}
filter {
grok {#配匹字段message中的内容被筛选。(以下是标准正规表达式)
match => { "message" => "^\d+-\d+\s\d+:\d+:\d+\.\d.*" }
}
output{
redis{#以下是redis安装地址
host => "128.31.5.196"
data_type => "list" #接收数据以列表形式
key => "logstash:redis" #队列的名称
}
}


2)添加logstashIndex.conf(从redis队列中取数据放入elasticsearch)

在bin目录中添加logstashIndex.conf

input {
redis{
host => "128.31.5.196"
data_type => "list"
key => "logstash:redis"#与logstash.conf中redis相同
type => "redis-input"
}
}
output {
elasticsearch {
hosts => "localhost"#该elasticsearch就部署在本机
}
}


3.运行logstash

1)启动第一个进程

./logstash agent -f logstash.conf -l /*/logs/logstash/stdou.log &


2)启动第二个进程

./logstash agent -f logstashIndex.conf -l /*/logs/logstash/stdouIndex.log &


三、 elasticsearch

elasticsearch是基于lucene的开源搜索引擎,近年来发展比较快,主要的特点有

• real time

• distributed

• high availability

• document oriented

• schema free

• restful api

1.下载logstash-2.0.0.tar.gz解压

https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.0.0/elasticsearch-2.0.0.tar.gz

解压到目录/Users/duwei/software/elk/elasticsearch-2.0.0

tar xzvf elasticsearch -2.0.0.tar.gz


2.安装head插件

cd /Users/duwei/software/elk/elasticsearch-2.0.0/bin
./plugin install mobz/elasticsearch-head


查看页面

http://localhost:9200/_plugin/head/


3.启动elasticsearch

cd /Users/duwei/software/elk/elasticsearch-2.0.0/bin
./elasticsearch &


测试安装

curl -X GET http://localhost:9200/ [root@10.11.5.211 bin]# curl -X GET http://localhost:9200/ {
"name" : "Piper",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "2.0.0",
"build_hash" : "de54438d6af8f9340d50c5c786151783ce7d6be5",
"build_timestamp" : "2015-10-22T08:09:48Z",
"build_snapshot" : false,
"lucene_version" : "5.2.1"
},
"tagline" : "You Know, for Search"
}


测试成功

四、 kibana

Kibana是一个基于浏览器页面的Elasticsearch前端展示工具。Kibana全部使用HTML语言和Javascript编写的

1.下载kibana-4.2.0-linux-x64.tar.gz解压

https://download.elastic.co/kibana/kibana/kibana-4.2.0-linux-x64.tar.gz

解压到目录/Users/duwei/software/elk/kibana-4.2.0-linux-x64

tar xzvf kibana-4.2.0-linux-x64.tar.gz


2.修改配置文件

修改config目录下kibana.yml文件内容

elasticsearch服务地址

elasticsearch.url: "http://10.121.6.21:9200"


3.启动kibana

./kibana &


查看页面

http://yourhost.com:5601
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: