ELK 不是一款软件,而是 Elasticsearch、Logstash 和 Kibana 三种软件产品的首字母缩写。这三者都是开源软件,通常配合使用,而且又先后归于 Elastic.co 公司名下,所以被简称为 ELK Stack。根据 Google Trend 的信息显示,ELK Stack 已经成为目前最流行的集中式日志解决方案。

Elasticsearch:分布式搜索和分析引擎,具有高可伸缩、高可靠和易管理等特点。基于 Apache Lucene 构建,能对大容量的数据进行接近实时的存储、搜索和分析操作。通常被用作某些应用的基础搜索引擎,使其具有复杂的搜索功能;

Logstash:数据收集引擎。它支持动态的从各种数据源搜集数据,并对数据进行过滤、分析、丰富、统一格式等操作,然后存储到用户指定的位置;

Kibana:数据分析和可视化平台。通常与 Elasticsearch 配合使用,对其中数据进行搜索、分析和以统计图表的方式展示;

Filebeat:ELK 协议栈的新成员,一个轻量级开源日志文件数据搜集器,基于 Logstash-Forwarder 源代码开发,是对它的替代。在需要采集日志数据的 server 上安装 Filebeat,并指定日志目录或日志文件后,Filebeat 就能读取数据,迅速发送到 Logstash 进行解析,亦或直接发送到 Elasticsearch 进行集中式存储和分析。

组件下载

filebeat https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.10.2-x86_64.rpm

kibana https://artifacts.elastic.co/downloads/kibana/kibana-7.10.2-x86_64.rpm

logstash https://artifacts.elastic.co/downloads/logstash/logstash-7.10.2-x86_64.rpm

elasticsearch https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-x86_64.rpm

elasticsearch 9200

elasticsearch-head 9100

logstash 5044

kibana 5601

一、安装jdk

tar -zxvf jdk-8u201-linux-x64.tar.gz

mv/jdk1.8.0_201 /usr/local/jdk-1.8

vim /etc/profile

export JAVA_HOME=/usr/local/jdk-1.8/

export JRE_HOME=$JAVA_HOME/jre

export PATH=JAVA_HOME/bin:JAVA\_HOME/bin:JAVA_HOME/bin:JRE_HOME/bin:$PATH

export CLASSPATH=JAVA_HOME/lib:JAVA\_HOME/lib:JAVA_HOME/lib:JRE_HOME/lib:./

source /etc/profile

二、安装ElasticSearch

1、rpm -ivh elasticsearch-7.10.2-x86_64.rpm

2、创建/data/es-data目录,用于elasticsearch数据的存放

mkdir -p /data/es-data

3、修改该目录的拥有者为elasticsearch

chown -R elasticsearch:elasticsearch /data/es-data

3、创建/data/es-log目录,用于elasticsearch日志的存放

mkdir -p /data/es-log

4、修改该目录的拥有者为elasticsearch

chown -R elasticsearch:elasticsearch /data/es-log

5、修改配置文件elasticsearch.yml

vim /etc/elasticsearch/elasticsearch.yml

node.name: node-1#设置data存放的路径为/data/es-datapath.data: /data/es-data#设置logs日志的路径为/log/es-logpath.logs: /log/es-log#设置内存不使用交换分区bootstrap.memory_lock: false#配置了bootstrap.memory_lock为true时反而会引发9200不会被监听,原因不明#设置允许所有ip可以连接该elasticsearchnetwork.host: 0.0.0.0#开启监听的端口为9200http.port: 9200#增加新的参数,为了让elasticsearch-head插件可以访问es (5.x版本,如果没有可以自己手动加)http.cors.enabled: truehttp.cors.allow-origin: "*"cluster.initial_master_nodes: ["node-1"]

6、启动elasticsearch

systemctl start elasticsearch

7、查看状态

systemctl status elasticsearch

8、设置开机启动

systemctl enable elasticsearch

9、启动成功之后,测试服务是否开启

curl -X GET http://localhost:9200

三、安装ElasticSearch-Head插件

1、yum install epel-release 2、yum install nodejs npm git

3、下载elasticsearch-head

git clone git://github.com/mobz/elasticsearch-head.git

cd elasticsearch-head

npm install

npm run start

4、修改es-head的localhost地址

cd /usr/local/src/elasticsearch-head/

vim Gruntfile.js

5、修改head的连接地址

vim _site/app.js

6、启动elasticsearch-head

./node_modules/grunt/bin/grunt server &

7、浏览器访问:http://192.168.2.251:9100

四、安装logstash

1、rpm -ivh logstash-7.10.2-x86_64.rpm

2、设置data的目录

mkdir -p /data/ls-data

chown -R logstash:logstash /data/ls-data

3、设置log的目录

mkdir -p /data/ls-log

chown -R logstash:logstash /data/ls-log

4、设置conf.d的目录,创建配置文件

cd /etc/logstash

#创建conf.d的目录

mkdir conf.d

cd conf.d

vim logstash.conf

input {beats {port => 5044codec => plain {charset => "UTF-8"}}}filter{if [type] == "log" {grok {match => { "message" => "(%{TIMESTAMP_ISO8601:logdatetime} %{LOGLEVEL:level} %{GREEDYDATA:logmessage})|%{GREEDYDATA:logmessage}" }remove_field => [ "message" ]}date {timezone => "Asia/Shanghai"#match => ["logdatetime", "yyyy-MM-dd HH:mm:ss,SSS", "ISO8601"]match => ["logdatetime", "dd-MM-yyyy HH:mm:ss,SSS", "ISO8601"]remove_field => [ "logdatetime" ]target => "time"}}}output {if [fields][services] == "jenkins" {#stdout { codec => rubydebug }elasticsearch {hosts => ["localhost:9200"]index => "jenkins-%{+YYYY.MM.dd}" # 注意index不能包含大写字母,否则报错}}}

5、修改配置文件logstash.yml

vim /etc/logstash/logstash.yml

# 设置数据的存储路径为/data/ls-datapath.data: /data/ls-data# 设置管道配置文件路径为/etc/logstash/conf.dpath.config: /etc/logstash/conf.d# 设置日志文件的存储路径为/log/ls-logpath.logs: /data/ls-log

6、启动logstash

systemctl start logstash

查看

systemctl status logstash

设置开机启动

systemctl enable logstash

8、测试logstash

/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf --config.test_and_exit

9、logstash指定配置进行运行

nohup /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf &

五、kibana安装

1、rpm -ivh kibana-7.10.2-x86_64.rpm

2、修改kibana的配置文件

vim /etc/kibana/kibana.yml

3、启动kibana

systemctl start kibana

查看状态

systemctl status kibana

4、设置开机启动

systemctl enable kibana

5、访问192.168.2.251:5601

六、安装filebeat

1、yum localinstall -y filebeat-7.10.2-x86_64.rpm

2、编辑filebeat.yml文件

vim /etc/filebeat/filebeat.yml

filebeat.inputs:- type: logenabled: truepaths:- /usr/local/tomcat/logs/ca*.logignore_older: 2hmultiline.pattern: '^s*(d{4}|d{2})-(d{2}|[a-zA-Z]{3})-(d{2}|d{4})'multiline.negate: truemultiline.match: aftermultiline.timeout: 10fields:services: jenkins

2、启动kibana

systemctl start filebeat

查看状态

systemctl status filebeat

3、设置开机启动

systemctl enable filebeat

ELK安装( Elasticsearch、Logstash、Kibana)相关推荐

  1. Centos7下使用ELK(Elasticsearch + Logstash + Kibana)搭建日志集中分析平台

    Centos7下使用ELK(Elasticsearch + Logstash + Kibana)搭建日志集中分析平台 日志监控和分析在保障业务稳定运行时,起到了很重要的作用,不过一般情况下日志都分散在 ...

  2. 企业级日志分析系统ELK(Elasticsearch , Logstash, Kibana)

    企业级日志分析系统ELK(Elasticsearch , Logstash, Kibana) 前言 一.ELK概述 1.ELK日志分析系统 2.ELK日志处理特点 3.Elasticsearch概述 ...

  3. 如何在Ubuntu 18.04上安装Elasticsearch Logstash Kibana(Elastic Stack)

    In this guide, you will learn to install Elastic stack on Ubuntu 18.04. Elastic stack, formerly know ...

  4. Docker部署ELK(ElasticSearch logstash Kibana)

    Docker部署ELK 一 . ElasticSearch安装 新建elasticsearch目录,并再其下新建文件config/elasticsearch.yml,文件内容如下: cluster.n ...

  5. 开发一个二方包,优雅地为系统接入ELK(elasticsearch+logstash+kibana)

    去年公司由于不断发展,内部自研系统越来越多,所以后来搭建了一个日志收集平台,并将日志收集功能以二方包形式引入各个自研系统,避免每个自研系统都要建立一套自己的日志模块,节约了开发时间,管理起来也更加容易 ...

  6. ELK(ElasticSearch+LogStash+Kibana)搭建

    Kibana汉化参考: https://www.deathearth.com/323.html 利用logstash解析日志,然后写入ES,最后从Kibana界面可视化查看.按照官方文档操作比网上找的 ...

  7. ELK系列(1) - Elasticsearch + Logstash + Kibana + Log4j2快速入门与搭建用例

    前言 最近公司分了个ELK相关的任务给我,在一边学习一边工作之余,总结下这些天来的学习历程和踩坑记录. 首先介绍下使用ELK的项目背景:在项目的数据库里有个表用来存储消息队列的消费日志,这些日志用于开 ...

  8. ELK6.0部署:Elasticsearch+Logstash+Kibana搭建分布式日志平台

    一.前言 1.ELK简介 ELK是Elasticsearch+Logstash+Kibana的简称 ElasticSearch是一个基于Lucene的分布式全文搜索引擎,提供 RESTful API进 ...

  9. 使用ELK(Elasticsearch + Logstash + Kibana) 搭建日志集中分析平台实践--转载

    原文地址:https://wsgzao.github.io/post/elk/ 另外可以参考:https://www.digitalocean.com/community/tutorials/how- ...

  10. ELK(ElasticSearch+Logstash+ Kibana)搭建实时日志分析平台

    来源:http://www.cnblogs.com/zclzhao/p/5749736.html 一.简介 ELK 由三部分组成elasticsearch.logstash.kibana,elasti ...

最新文章

  1. python中xrange函数_python中xrange和range的区别
  2. Dev-C++ v5.11
  3. sklearn pipeline_Sklearn介绍
  4. 笔记-信息系统安全管理-信息安全保障系统
  5. pat天梯赛L2-010. 排座位
  6. 信息学奥赛C++语言: 直角三角形
  7. D类IP地址和组播传输
  8. linux get current thread count and system threads limit
  9. 【优化求解】基于matlab改进的粒子群算法求解混合储能系统容量优化问题【含Matlab源码 1823期】
  10. 汇编语言 王爽 第四版 实验4
  11. 机器人周志_机器人制造基础学习日志
  12. 来自android的大文件清理,还在一键清理手机垃圾教你删除这些空文件夹,释放超大内存...
  13. python俄罗斯方块思路_python实现俄罗斯方块小游戏
  14. Ipad项目中用到的UIModalPresentationFormSheet,点击阴影部分dismiss 当前presented的controller
  15. 2022 python获取和风天气 web api v7版本
  16. 最新问题:错误代码ERROR ITMS-90096 一.ERROR ITMS-90096解决方法
  17. Windows10下VMWare Workstation 16 Pro 安装CentOS 7
  18. win10如何修改mac地址(亲测通过)
  19. 京东茅台抢购方法,与黄牛站在同一起跑线
  20. Android 图片存储到指定路径和相册

热门文章

  1. 银河麒麟ARM64 飞腾FT2000 linuxdeployqt linux打包qt
  2. 设置win10自动登录/免密码自动登录方法
  3. 360手机:360手机刷机 救砖 Twrp、Root、Magisk、360N4S骁龙版、360N5、N5S、N6、N6Lite、N6PRO、N7、N7Lite、N7PRO、Q5、Q5Plus
  4. Redis 清空数据库
  5. 逐步揭示makop.mkp勒索病毒中毒防范恢复解密
  6. Docker 学习笔记 -- kuangshen Docker 视频学习笔记
  7. Dom4j报错之java.lang.NoClassDefFoundError: org/jaxen/JaxenException的解决方案
  8. oracle卸载报错,oracle卸载
  9. c语言延时函数的理解
  10. 遥感原理与应用总结——第五章:遥感图像几何处理