zoukankan      html  css  js  c++  java
  • centos6 搭建ELK

    mark一下时间:2016年2月19日10:17:09

    记录使用

    Logstash: Logstash服务的组件,用于处理传入的日志。

    Elasticsearch: 存储所有日志

    Kibana 4: 用于搜索和可视化的日志的Web界面,通过nginx反代

    环境:

    2台机器都是centos6.5

    ELK server:192.168.0.160

    agent  :192.168.0.82

    ELKserver上需要安装:ES、kibana、logstash、Redis、nginx、jdk

    agent端      :jdk、logstash

    (这里注意一点,服务器时间要同步,不然到后面kibana 不出图,找了半天原因都找不到,结果是系统时间没同步哦)

    nginx和jdk安装就不讲了。这里我用的jdk为1.8.0_73

    先下载ELK安装包。

    wget https://download.elastic.co/kibana/kibana/kibana-4.4.1-linux-x64.tar.gz
    wget http://nginx.org/download/nginx-1.8.1.tar.gz
    wget https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/rpm/elasticsearch/2.2.0/elasticsearch-2.2.0.rpm
    wget http://download.redis.io/releases/redis-3.0.7.tar.gz
    wget https://download.elastic.co/logstash/logstash/logstash-2.2.1.tar.gz
    

    ELKserver上安装:

    rpm --import http://packages.elastic.co/GPG-KEY-elasticsearch    导入公钥
    rpm -ivh elasticsearch-2.2.0.rpm    RPM方式安装,用tar也一样
    rpm -ql elasticsearch        查询安装路径
    
    vim /etc/elasticsearch/elasticsearch.yml 修改配置文件 (注意空格)
    

     

    安装es插件head和kopf

    /usr/share/elasticsearch/bin/plugin install lmenezes/elasticsearch-kopf
    /usr/share/elasticsearch/bin/plugin install mobz/elasticsearch-head
    

    保存并启动es

    /etc/init.d/elasticsearch start
    

    这个时候我们可以浏览head插件或者kopf插件。如下图

    如果这个时候head界面没有logstash(前提是在agent端安装了logstash)的原因是因为agent的logstash没有传入数据给redis。so es也收不到redis output的并来自logstash的数据,当redis有数据之后,head就会显示logstash了。

    es的插件可以在下图目录下查看

    安装nginx

    useradd www
    ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
    make;make install
    

    并将nginx配置文件修改成如下。 

    将请求转给kibana。

    安装kibana

    tar zxf kibana-4.4.1-linux-x64.tar.gz
    mv kibana-4.4.1-linux-x64 /usr/local/kibana
    

     启动kibana

    nohup /usr/local/kibana/bin/kibana -l /var/log/kibana.log &
    

    redis安装

    请转至另一篇博文

    安装logstash

    tar zxf logstash-2.2.1.tar.gz
    mv logstash-2.2.1 /usr/local/logstash
    cd /usr/local/logstash
    mkdir conf log
    

    配置logstash文件

    vim /usr/local/logstash/conf/logstash.conf
    

     如下

    input {
      redis {
          host => "192.168.0.160"
          data_type => "list"
          port => "6379"
          key => "logstash:redis"
          type => "redis-input"
      }
    }
    
    output {
      elasticsearch {
          hosts => "192.168.0.160"
      }
    }
    

     启动logstash  (启动比较慢)

    /usr/local/logstash/bin/logstash -f /usr/local/logstash/conf/logstash.conf &
    

    ===============================================agent端=========================================================

    jdk环境

    nginx日志格式

        log_format main '{"@timestamp":"$time_iso8601",'
    
                   '"@version":"1",'
    
                   '"host":"$server_addr",'
    
                   '"client":"$remote_addr",'
    
                   '"size":$body_bytes_sent,'
    
                   '"responsetime":$request_time,'
    
                   '"domain":"$host",'
    
                   '"url":"$uri",'
    
                   '"status":"$status"}';
    
        access_log  logs/access.log  main;
    

    安装logstash和上面一样,只是配置文件不同。

    vim /usr/local/logstash/conf/logstash_agent.conf
    
    
    input {
    
     file {
        type => "nginx_access"
        path => "/usr/local/nginx/logs/access.log"    #路径一定要写对哦- -之前进入kibana首页没有crate按钮就是因为 这里。还有redis monitor 没有数据。
      }
    
    }
    
    output {
      redis {
        host => "192.168.0.160"
        port => "6379"
        data_type => "list"
        key => "logstash:redis"
      }
    }
    

     启动logstash

    /usr/local/logstash/bin/logstash -f /usr/local/logstash/conf/logstash_agent.conf &
    

     这个时候用力刷nginx日志哦。

    我们访问ELKserver

    然后点击Create

    查看图形点击discover

    然后不停的刷新日志,(刷新才会出图哦,不然就是哭脸哟)等一段时间就会有绿色的柱状图。

    至此ELK简单部署已OK    有错误或者问题可以留言哦,多多指教

                                                              Author:V

  • 相关阅读:
    C# 日期帮助类【原创】
    C# 发送邮件
    每日一题力扣453
    每日力扣628
    每日一题力扣41巨坑
    每日一题力扣274
    每日一题力扣442有坑
    每日一题力扣495
    每日一题力扣645
    每日一题力扣697
  • 原文地址:https://www.cnblogs.com/shiyiwen/p/5200513.html
Copyright © 2011-2022 走看看