ELK安装

转载自:http://blog.csdn.net/loophome/article/details/52317209

 

一、安装Logstash

1)在安装Logstash之前,确保已经安装了Java的运行环境

2)在官网(https://www.elastic.co/)下载Logstash

      2016年8月18日下载:Logstash 2.3.4(https://download.elastic.co/logstash/logstash/logstash-2.3.4.tar.gz

3)下载完成之后,加压(无须编译),并复制到local目录下,这个是我正式部署的目录:/usr/local/logstash-2.3.4

4)测试运行

 

[plain] 
 
  1. [root@localhost download]# /usr/local/logstash-2.3.4/bin/logstash -e 'input { stdin { } } output { stdout {} }'  
  2. Settings: Default pipeline workers: 1  
  3. Pipeline main started  
  4. c++  
  5. 2016-08-18T09:39:26.267Z localhost.localdomain c++  

 

        我们可以看到,我们输入什么内容logstash按照某种格式输出,其中-e参数参数允许Logstash直接通过命令行接受设置。这点尤其快速的帮助我们反复的测试配置是否正确而不用写配置文件。使用CTRL-C命令可以退出之前运行的Logstash。
        使用-e参数在命令行中指定配置是很常用的方式,不过如果需要配置更多设置则需要很长的内容。这种情况,我们首先创建一个简单的配置文件,并且指定logstash使用这个配置文件。 例如:在 logstash 安装目录下创建一个“基本配置”测试文件 logstash-test.conf, 文件内容如下:
[plain] 
 
  1. # cat logstash-simple.conf  
  2. input { stdin { } }  
  3. output {  
  4.   stdout { codec=> rubydebug }  
  5. }  

        Logstash 使用 input 和 output 定义收集日志时的输入和输出的相关配置,本例中 input 定义了一个叫 "stdin" 的 input , output 定义一个叫 "stdout" 的 output 。无论我们输入什么字符, Logstash 都会按照某种格式来返回我们输入的字符,其中 output 被定义为 "stdout" 并使用了 codec 参数来指定 logstash 输出格式。

[plain] 
 
  1. /usr/local/logstash-2.3.4/bin/logstash -f /usr/local/logstash-2.3.4/conf/logstash-simple.conf  
  2. {  
  3.        "message" => "C++",  
  4.       "@version" => "1",  
  5.     "@timestamp" => "2016-08-18T10:05:47.352Z",  
  6.           "host" => "localhost.localdomain"  
  7. }  

5)长期运行Logstash

 

 

[plain] view plain copy
 
  1. nohup /usr/local/logstash-2.3.4/bin/logstash -f /usr/local/logstash-2.3.4/conf/logstash-simple.conf & > /dev/null 2>&1  

 

 

二、安装Elasticsearch

 

1)下载,并解压(无须编译),Elasticsearch
      2016年8月18日,Elasticsearch 2.3.5(https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.3.5/elasticsearch-2.3.5.tar.gz
      复制到local目录下,正式物理目录:/usr/local/elasticsearch-2.3.5

2)启动Elasticsearch

注意,我使用root权限来运行,但是Java抛出了Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root,因此必须使用普通帐号运行。

 

[plain] view plain copy
 
  1. /usr/local/elasticsearch-2.3.5/bin/elasticsearch  

如果需要后台执行,执行以下命令:

 

 

[plain] view plain copy
 
  1. nohup /usr/local/elasticsearch-2.3.5/bin/elasticsearch & > /dev/null 2>&1  

检查是否成功运行:

[plain] view plain copy
 
  1. [lizhibin@localhost local]$ netstat -nat | grep 9200  
  2. tcp6       0      0 127.0.0.1:9200          :::*                    LISTEN  


3)配置logstash,并将结果输出到elasticsearch

 

修改logstash 的配置文件:

 

[plain] view plain copy
 
  1. input { stdin { } }  
  2. output {  
  3.   elasticsearch {hosts => "localhost" }  
  4.   stdout { codec=> rubydebug }  
  5. }  
 

 执行logstash:/usr/local/logstash-2.3.4/bin/logstash -f /usr/local/logstash-2.3.4/conf/logstash-simple.conf,并测试输入日志记录

 

使用curl命令发送请求elasticsearch是否接受到了数据:

 

[plain] view plain copy
 
  1. [root@localhost conf]# curl 'http://localhost:9200/_search?pretty'  
  2. {  
  3.   "took" : 47,  
  4.   "timed_out" : false,  
  5.   "_shards" : {  
  6.     "total" : 5,  
  7.     "successful" : 5,  
  8.     "failed" : 0  
  9.   },  
  10.   "hits" : {  
  11.     "total" : 4,  
  12.     "max_score" : 1.0,  
  13.     "hits" : [ {  
  14.       "_index" : "logstash-2016.08.19",  
  15.       "_type" : "logs",  
  16.       "_id" : "AVah8wW7qomkeCHVJDgC",  
  17.       "_score" : 1.0,  
  18.       "_source" : {  
  19.         "message" : "C++",  
  20.         "@version" : "1",  
  21.         "@timestamp" : "2016-08-19T08:37:46.727Z",  
  22.         "host" : "localhost.localdomain"  
  23.       }  
  24.     }, {  
  25.       "_index" : "logstash-2016.08.19",  

 

 

三、安装Kibana

 

1)下载,解压(无须编译)
      2016年8月22日下载(Kibana-4.5.4):https://download.elastic.co/kibana/kibana/kibana-4.5.4-linux-x64.tar.gz
      正式物理目录:/usr/local/kibana-4.5.4-linux-x64

2)启动kibana

 

[plain] view plain copy
 
  1. nohup /usr/local/kibana-4.5.4-linux-x64/bin/kibana & > /dev/null 2>&1  


3)使用Kibana

 

使用 http://kibanaServerIP : 5601 访问 Kibana ,登录后,首先,配置一个索引,默认, Kibana 的数据被指向 Elasticsearch ,使用默认的 logstash-* 的索引名称,并且是基于时间的,点击“ Create ”即可。
点击“ Discover ”,可以搜索和浏览 Elasticsearch 中的数据,默认搜索的是最近 15分钟的数据。可以自定义选择时间。

posted @ 2017-12-13 17:22  zhuntidaoren  阅读(188)  评论(0编辑  收藏  举报