这个是最新的elk+redis搭建日志分析平台,今年时间是2015年9月11日。
Elk分别为 elasticsearch,logstash, kibana
官网为:https://www.elastic.co/products
Elasticsearch:
https://www.elastic.co/downloads/elasticsearch
https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.1.tar.gz
logstash:
https://www.elastic.co/downloads/logstash
https://download.elastic.co/logstash/logstash/logstash-1.5.4.tar.gz
kibana:
https://www.elastic.co/products/kibana
https://download.elastic.co/kibana/kibana/kibana-4.1.2-linux-x64.tar.gz
先说一下规划
192.168.15.62为日志查看服务器,该机器需要安装redis, elasticserch, logstatsh, kibana这四个应用程序。
192.168.15.2 为应用程序nginx应用程序,我们这次只收集他的日志进行分析。
安装
Yum install vim unix2dos wget curl curl-devel expect expect-devel
Yum install gcc glibc glib2 libgcc glibc-devel glib2-devel
Yum install m4 automake autoconf cmake cpp
Yum install gcc-c++ libstdc++ libstdc++-devel libstdc++-docs
在192.168.15.62机器上:
以root身份登陆,在root的家目录“/root”下:
Wget https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.1.tar.gz
Wget https://download.elastic.co/logstash/logstash/logstash-1.5.4.tar.gz
Wget https://download.elastic.co/kibana/kibana/kibana-4.1.2-linux-x64.tar.gz
Wget http://download.redis.io/releases/redis-3.0.4.tar.gz
#tar –xvzf redis-3.0.4.tar.gz
#cd redis-3.0.4
#make
#make install
#cd utils
#./install_server.sh
这样redis就安装好了
#which redis-server在/usr/local/bin/redis-server
配置文件放在/etc/redis/6379.conf文件
#redis-cli
>set aa aavalue
>get aa 即可测试。
#cd
#tar –xvzf elasticsearch-1.7.1.tar.gz
#cp –a elasticsearch-1.7.1 /usr/local
#cd /usr/local
#ln –s elasticsearch-1.7.1 elasticsearch
#cd
#tar –xvzf logstash-1.5.4.tar.gz
#cp –a logstash-1.5.4 /usr/local
#cd /usr/local
#ln –s logstash-1.5.4 logstash
#cd
#tar –xvzf kibana-4.1.2-linux-x64.tar.gz
#cp –a kibana-4.1.2-linux-x64 /usr/local
#cd /usr/local
#ln –s kibana-4.1.2-linux-x64 kibana
程序安装全部完成。
由于elasticsearch和logstash是安装在一台机器上所以elasticsearch默认配置即可。
/usr/local/elasticsearch/bin/elasticsearch –d (以deamon方式启动elasticsearch)
打开192.168.15.62:9200即可看到
配置logstash程序
# cd /usr/local/logstash下,mkdir etc logs两个文件夹,etc用于存放配置文件,logs用于存放日志文件
在该etc目录下建立一个central.conf配置文件:
该文件说明是以redis为输入,输出到elasticsearch程序,格式为json协议为http.
如果:从文件输入,输出到redis
look@DZG-SERVICE-36:/etc/logstash/conf.d$ cat wealth_product_service.conf input { file { path => "/data/dubbo/wealth-xxx-service/logs/xxx-service.log" path => "/data/dubbo/wealth-xxx-service/logs/error.log" type=> "wealth_xxx_service" # start_position => "beginning" } } output { if [type] == "wealth_xxx_service" { # elasticsearch { # hosts => "172.16.1.34" # index => "wealth_xxx_service-%{+YYYY.MM.dd}" #匹配的索引模式 # } redis { host => "127.0.1.23" port => 6379 data_type => "list" #数据类型也要保持一致 key => "wealth_xxx_service" #key 要与服务器端的相同 } } }
然后从redis写数据到elasticsearch
input {
redis {
host => "127.0.0.1" #本地的reds地址
port => 6379 #redis端口
type => "redis-input" #输入类型
data_type => "list" #使用redis的list存储数据
key => "wealth_xxx_service"
}
}
output {
# stdout {}
elasticsearch {
hosts => "172.16.1.34" #elasticsearch地址
index => "wealth_xxx_service-%{+YYYY.MM.dd}"
codec => "json"
}
}
启动logstash程序如图:
#/usr/local/logstash agent –verbose --config /usr/local/logstash/etc/central.conf –log /usr/local/logstash/logs/stdou.log
Kibana程序现在是4版本了,自带web,端口为5601:
#cd /usr/local/kibana/bin/
#./kibana程序即可。
服务器安装完成了,现在要在客户端(192.168.25.2)收集日志
#cd
#tar –xvzf logstash-1.5.4.tar.gz
#cp –a logstash-1.5.4 /usr/local
#cd /usr/local
#ln –s logstash-1.5.4 logstash
#cd /usr/local/logstash目录
同样需要#mkdir etc logs存放配置文件和日志文件。
vim logstash_agent.conf
启动该logstash程序即可。
#/usr/local/logstash/bin/logstash –f /usr/local/logstash/etc/logstash_agent.conf
这样就把日志传给了日志服务器了。
打开http://192.168.15.62:5601。就是打开kibana页面。
配置一下: