ELK 日志分析平台部署

ELK日志分析平台部署说明:

本方案以filebeat作为日志收集器部署到各个业务服务器,filebeat将收集的日志输出到日志服务器的logstash;

Logstash部署到日志服务器,接收各个服务器输出的日志后分类归纳,然后输出到elasticsearch按索引存储日志;

Elasticsearch部署至日志服务器,按index接收存储不同服务器不同项目的日志;

Kibana部署至日志服务器,提供检索分析日志的UI;

各组件之间的交互:

Filebeat跟Logstash在各服务器之间的交互(配置SSL)

Logstash跟Elasticsearch在本机交互,不对外网开放

Elasticsearch跟Kibana在本机交互,不对外网开放

Kibana开放外网访问(Nginx登录认证)

一、日志服务器的部署

  1.下载ELK 安装包 https://www.elastic.co/downloads 

       本次说明部署7.1.0版本(版本需一致,可修改下载地址中的版本号),linux 64-BIT,java 1.8环境(必须);

   下载Logstash、Elasticsearch、Kibana至日志服务器,建议新建个文件夹统一放置。

  2.解压安装包,修改配置文件 

   tar.gz包解压:tar –zxvf [文件名]

   a.Elasticsearch 配置:

   进入解压目录的config文件夹,打开elasticsearch.yml

        

    Log、数据(data)等文件位置等属性自行指定修改;不修改就存储默认路径下

    启动ES不能由root启动,需要新建一个用户用于启动ES,这里创建用户

    https://blog.csdn.net/wxs060524/article/details/81509229

    打开/etc/security/limits.conf,在结尾添加如下内容(填自己的用户名):

    esuser soft nofile 65536
    esuser hard nofile 65536
    esuser soft nproc 65536
    esuser hard nproc 65536

    打开/etc/sysctl.conf,结尾添加:vm.max_map_count=262144

    先由root用户去修改配置,然后再用新用户启动,

    然后进入bin目录启动ES:./elasticsearch -d
    正常启动之后验证ES:curl localhost:9200

    

    若显示以上json内容,则ES启动成功;

  b. Kibana配置:

    进入kibana的config目录,打开kibana.yml

    

     确认端口,打开外网访问(server.host: "0.0.0.0"),配置ES地址

    启动kibana./kibana & 正常启动后退出窗口:exit  

    验证:浏览器输入 : ip:5601访问kibana页面。 ps -ef | grep kibana   kill -9  +线程pid  关闭       

  c.logstash配置:

 

    logstash需要在启动时指定输入输出参数,

    新建一个.conf文件,例:/etc/logstash/logstash.conf(位置自选)

      编辑logstash.conf文件

    

input {
  beats {
    codec => plain{ charset => "UTF-8" }
    port => 5044
  }
}


filter {
    grok {
      match => { "message" => "\[%{LOGLEVEL:log_level}\]\[%{TIMESTAMP_ISO8601:log_timestamp}\]\[%{JAVALOGMESSAGE:log_classInfo}\]%{JAVALOGMESSAGE:log_msg}" }
      add_field => [ "received_at", "%{@timestamp}" ]
    }
    date {
      match => [ "log_timestamp", "yyyy-MM-dd HH:mm:ss,SSS" ]
      target => "@timestamp"
      remove_field => ["log_timestamp"]
      remove_field => ["log_msg"]
    }
}

output {
  elasticsearch {
    hosts => ["127.0.0.1:9200"]
    codec => plain{ charset => "UTF-8" }
    index => "%{[fields][logserver]}-%{[fields][logtype]}-%{+YYYY.MM.dd}"
  }
}

该配置对应的日志格式:
[INFO ][2019-02-12 17:12:18,616][ApiPayController:128] 获取用户支付配置信息:data=[]

进入bin目录启动logstash:./logstash -f /etc/logstash/logstash.conf &
启动和关闭logstash需要一定的时间;

 

二、业务服务器部署filebeat

   解压tar.gz包之后,进入解压目录,修改filebeat.yml文件:

        将原有的Filebeat inputs的配置注释;

    

    

    修改output的配置:

     

    取消elasticsearch的输出,改为输出至logstash

    进入解压目录启动filebeat:./filebeat -e -c filebeat.yml &

    正式启动用以下命令:(nohup ./filebeat -e -c filebeat.yml -d "publish"  &

  

转载于:https://www.cnblogs.com/qi2332356/p/10913349.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值