热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ELK日志分析平台搭建

1.下载安装JDK,并配置环境变量vimetcprofile将下面的内容添加至文件末尾:JAVA_HOMEusrlocaljdk1.8.0_111JRE_HOME

1.下载安装JDK,并配置环境变量

vim /etc/profile

将下面的内容添加至文件末尾:

JAVA_HOME=/usr/local/jdk1.8.0_111
JRE_HOME=/usr/local/jdk1.8.0_111/jre
CLASSPATH=.:$JAVA_HOME/lib:/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$PATH:$JAVA_HOME/bin
export  JAVA_HOME
export  JRE_HOME

ulimit -u 4096

source /etc/profile

配置limit相关参数

vim /etc/security/limits.conf

添加以下内容

* soft nproc 65536
* hard nproc 65536
* soft nofile 65536
* hard nofile 65536

关闭防火墙:

iptables -F

创建运行ELK的用户

groupadd elk
useradd -g elk elk

创建ELK运行目录

mkdir /elk
chown -R elk:elk /elk

2.准备ELK安装包

下载ELK安装包:https://www.elastic.co/downloads,并上传到服务器且解压,解压命令:tar -xzvf 包名

下载kibana5.2.2 (下载地址:https://artifacts.elastic.co/downloads/kibana/kibana-5.2.2-linux-x86_64.tar.gz)

wget https://artifacts.elastic.co/downloads/kibana/kibana-5.2.2-linux-x86_64.tar.gz

下载elasticsearch (下载地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz)

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz

下载logstash (下载地址:https://artifacts.elastic.co/downloads/logstash/logstash-5.2.2.tar.gz)

wget https://artifacts.elastic.co/downloads/logstash/logstash-5.2.2.tar.gz

3.配置

3.1 配置Elasticsearch

vim config/elasticsearch.yml

修改如下内容:

保存退出

启动Elasticsearch

bin/elasticsearch &

查看是否启动成功

netstat -ant

用浏览器访问:http://192.168.199.179:9200/

Elasticsearch安装完毕

3.2 安装配置logstash 

简单说明:

logstash的配置文件须包含三个内容:

input{}:此模块是负责收集日志,可以从文件读取、从redis /kafka读取或者开启端口让产生日志的业务系统直接写入到logstash

filter{}:此模块是负责过滤收集到的日志,并根据过滤后对日志定义显示字段

output{}:此模块是负责将过滤后的日志输出到elasticsearch或者文件、redis等

mkdir config.d
vim nginx_accss.conf

配置文件中添加下面内容:

input {
    file {
        type => "app-log"
        path => [ "/home/youlan/software/taskSchedule/logs/taskSchedule-log*.log" ]
        codec => multiline {
                pattern => "^\["
                negate => true
                what => "previous"
        }
        start_position => "beginning"
    }
}
 
filter {
    grok {
        match => [
            "message","%{TIMESTAMP_ISO8601}\s*%\[{USER}\] \[%{USERNAME}\] \[%{USERNAME}\] - %{NOTSPACE}, IP:%{IP:ip}"
        ]
    }
    grok {
        match => [
            "message","%{TIMESTAMP_ISO8601:date1}\s*%\[{USER:level}\] \[%{USERNAME}\] \[%{USERNAME}\] - %{NOTSPACE:request}"
        ]
    }
    date {
        locale => "en"
        match => ["timestamp" , "dd/MMM/YYYY:HH:mm:ss.Z"]
 
   }
}
output {
    elasticsearch {
        hosts => ["192.168.199.179:9200"]
        index => "%{type}-%{+YYYY.MM.dd}"
        action => "index"
        template_name => "%{type}"
    }
    stdout {codec => rubydebug}
}
View Code

测试配置文件是否有问题:

/usr/local/elk/logstash-5.2.2/bin/logstash -t -f /usr/local/elk/logstash-5.2.2/config.d/nginx_accss.conf

 

启动 logstash:

nohup /usr/local/elk/logstash-5.2.2/bin/logstash -f /usr/local/elk/logstash-5.2.2/config.d/nginx_accss.conf &

查看是否启动成功

tail -f nohup.out 

 

出现以上内容表示启动成功

3.3 安装配置kibana

vim kibana.yml

保存退出

启动kibana

bin/kibana &

访问kibana:http://192.168.199.179:9988

 


推荐阅读
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文介绍了关于apache、phpmyadmin、mysql、php、emacs、path等知识点,以及如何搭建php环境。文章提供了详细的安装步骤和所需软件列表,希望能帮助读者解决与LAMP相关的技术问题。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • uniapp开发H5解决跨域问题的两种代理方法
    本文介绍了uniapp开发H5解决跨域问题的两种代理方法,分别是在manifest.json文件和vue.config.js文件中设置代理。通过设置代理根域名和配置路径别名,可以实现H5页面的跨域访问。同时还介绍了如何开启内网穿透,让外网的人可以访问到本地调试的H5页面。 ... [详细]
  • 开发笔记:spring boot项目打成war包部署到服务器的步骤与注意事项
    本文介绍了将spring boot项目打成war包并部署到服务器的步骤与注意事项。通过本文的学习,读者可以了解到如何将spring boot项目打包成war包,并成功地部署到服务器上。 ... [详细]
  • 本文介绍了在sqoop1.4.*版本中,如何实现自定义分隔符的方法及步骤。通过修改sqoop生成的java文件,并重新编译,可以满足实际开发中对分隔符的需求。具体步骤包括修改java文件中的一行代码,重新编译所需的hadoop包等。详细步骤和编译方法在本文中都有详细说明。 ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • OpenMap教程4 – 图层概述
    本文介绍了OpenMap教程4中关于地图图层的内容,包括将ShapeLayer添加到MapBean中的方法,OpenMap支持的图层类型以及使用BufferedLayer创建图像的MapBean。此外,还介绍了Layer背景标志的作用和OMGraphicHandlerLayer的基础层类。 ... [详细]
  • 前段时间做一个项目,需求是对每个视频添加预览图,这个问题最终选择方案是:用canvas.toDataYRL();来做转换获取视频的一个截图,添加到页面中,达到自动添加预览图的目的。 ... [详细]
  • 如何使用PLEX播放组播、抓取信号源以及设置路由器
    本文介绍了如何使用PLEX播放组播、抓取信号源以及设置路由器。通过使用xTeve软件和M3U源,用户可以在PLEX上实现直播功能,并且可以自动匹配EPG信息和定时录制节目。同时,本文还提供了从华为itv盒子提取组播地址的方法以及如何在ASUS固件路由器上设置IPTV。在使用PLEX之前,建议先使用VLC测试是否可以正常播放UDPXY转发的iptv流。最后,本文还介绍了docker版xTeve的设置方法。 ... [详细]
author-avatar
会员WWW
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有