版本说明:

Elasticsearch 5.0

Logstash 5.0(暂时未用)

Filebeat 5.0

Kibana 5.0


ELK是一套采集日志并进行清洗分析的系统,由于目前的分析的需求较弱,所以仅仅采用filebeat做日志采集,没有使用logstash


一、环境准备&&软件安装:

  1、首先,需要安装Java环境

    下载安装包:jre-8u111-linux-x64.rpm

    安装:yum install jre-8u111-linux-x64.rpm

 

  2、 新建一个用户,elsearch,用来启动elasticsearch,因为该软件必须用普通用户启动。

    useradd elsearch


  3、修改变量参数:否则启动elasticsearch会报bootstrap错误。

     1、ulimit -u 10240  #
   2、vim /etc/sysctl.conf
     vm.max_map_count = 655360
     sysctl -p
   3、vim /etc/security/limits.conf
    *        soft    noproc 65536
    *        hard    noproc 65536
    *        soft    nofile 65536
    *        hard    nofile 65536


  4、软件安装

   安装包下载地址:https://www.elastic.co/downloads

   使用的是绿色安装包,解压即用。

   1、filebeat安装

     tar -xvf filebeat-5.0.0-linux-x86_64.tar.gz
     cp filebeat-5.0.0-linux-x86_64 /usr/local/filebeat -r

   2、kibana安装

     tar -xvf kibana-5.0.0-linux-x86_64.tar.gz
     cp kibana-5.0.0-linux-x86_64 /usr/local/kibana -r

   3、logstash安装(暂时未用)

     tar -xvf logstash-5.0.0.tar.gz
     cp logstash-5.0.0 /usr/local/logstash -r

   4、elasticsearch安装

     unzip elasticsearch-5.0.0.zip
     cp elasticsearch-5.0.0 /usr/local/elasticsearch -r


二、配置&&启动

  1、启动elasticsearch

   cd /usr/local/
   chown -R elsearch:elsearch elasticsearch 将权限给elsearch用户
   su elsearch
   cd /usr/local/elasticsearch


   修改配置文件如下:

   cat config/elasticsearch.yml |grep -v "#"
     path.data: /usr/local/elasticsearch/data
     path.logs: /usr/local/elasticsearch/logs
     network.host: 192.168.221.30
     http.port: 9200


   启动:

   cd /usr/local/elasticsearch/bin
   ./elasticsearch   #使用-d参数,放到后台执行



   查看启动情况:

   [root@localhost elasticsearch]# lsof -i:9200
   COMMAND   PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
   java    29987 elsearch  237u  IPv6 470519   0t0  TCP 192.168.221.30:wap-wsp

   

   在浏览器中查看:

   输入:192.168.221.30:9200

   能看到类似信息则启动成功:

{
  "name" : "FrmZoqD",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "IcATEXFBQkGsZdh4P_TiTw",
  "version" : {
    "number" : "5.0.0",
    "build_hash" : "253032b",
    "build_date" : "2016-10-26T04:37:51.531Z",
    "build_snapshot" : false,
    "lucene_version" : "6.2.0"
  },
  "tagline" : "You Know, for Search"
}

  注意本机防火墙要关掉。


  2、配置&&启动filebeat

   

   修改配置文件:

   

   cd /usr/local/filebeat
   cp filebeat.yml filebeat.yml.default
      vim filebeat.yml
      filebeat.prospectors:
      - input_type: log
       paths:
         - /var/log/messages
      document_type: "messages"

      output.elasticsearch:
        hosts: ["192.168.221.30:9200"]  #filebeat传到Elasticsearch
        index: filebeat-%{+yyyy.MM.dd}  #这里的索引index会跟kibana的索引有关系
   touch /var/log/test.log  #测试日志文件

   启动:  

   ./filebeat -e -c filebeat.yml -d "publish"

  测试

   输入一条语句进行测试  

   echo "hello,test" >test.log

  ELK 5.0部署安装_ELK filebeat ELK-5.0

   能看到beat已经将输入的log采集到了。

   将filebeat放入后台执行:

   nohup  ./filebeat -e -c filebeat.yml >>/dev/null 2>&1 &

   


  3、配置&&启动kibana

   修改配置: 

   cd /usr/local/kibana
   vim config/kibana.yml
   server.port: 5601
   server.host: "27.131.221.30"
   elasticsearch.url: "http://27.131.221.30:9200"

  修改以上三项。

   启动动服务:

   cd /usr/local/kibana/bin/
   ./kibana


  如果都配置正确的话,会进入到kibana的页面,刚开始会让你配置一个index索引

  这条索引跟我们上面filebeat里面配置的索引有关。

  filebeat-* 

  *就是时间格式,我们是按照时间来进行索引的。

  如果是用logstash进行采集数据的话,那么索引就是logstash-*

  当然,我们也可以配置多条索引,例如我们同时用filebeat和logstash进行采集不同的业务日志。

  最终的形式应该是这样的:

  ELK 5.0部署安装_ELK filebeat ELK-5.0_02