Linux:ELK:日志分析系统(使用elasticsearch集群)

这篇具有很好参考价值的文章主要介绍了Linux:ELK:日志分析系统(使用elasticsearch集群)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

原理

1. 将日志进行集中化管理(beats)

2. 将日志格式化(logstash)

将其安装在那个上面就对那个进行监控

3. 对格式化后的数据进行索引和存储(elasticsearch)

4. 前端数据的展示(kibana)


环境

要准备安装包

elasticsearch

elasticsearch-head

kibana

logstash

node

phantomjs

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

这些安装包都在网上很好找,自己去找最新的安装包也行,和我这个版本区别不大 

服务器(1)centos7 -- 192.168.254.1   -elasticsearch集群一份子,节点1(tarro1)节点1名字随便起

上面安装 elasticsearch,elasticsearch-head

服务器(2)centos7 -- 192.168.254.2   -elasticsearch集群一份子,节点2(tarro2)节点2名字随便起

上面安装 elasticsearch,elasticsearch-head logstash(监控其系统文件)

服务器(3)centos7 --  192.168.254.3 -- http服务

上面开启http服务   并安装 logstash(监控其系统文件)

 服务器(4)centos7 -- 192.168.254-3 -- kibana服务

上面开启kibana连接节点1和2 展示两位的收集出来的日志信息

 (1)和(2)要做一个集群hosts相互些写一下就行

全部关闭防火墙

全部关闭防火墙

全部关闭防火墙


 服务器(1)的配置

先将elasticsearch   elasticsearch-head  node   phantomjs   包放进去

hostnamectl set-hostname tarro1

 写入hosts

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

 安装java

yum -y install java
rpm -ivh elasticsearch-5.5.0.rpm 
systemctl daemon-reload
systemctl enable elasticsearch.service
cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak
vim /etc/elasticsearch/elasticsearch.yml 


 17 cluster.name: my-elk

 23 node.name: tarro1

 33 path.data: /data/elk_data

 37 path.logs: /var/log/elasticsearch/ 
 
 43 bootstrap.memory_lock: false

 55 network.host: 0.0.0.0

 59 http.port: 9200

 68 discovery.zen.ping.unicast.hosts: ["tarro1", "tarro2"]

前面的# 全去掉
群集名称 
17 cluster.name: my-elk-cluster
节点服务器名称
 23 node.name: node1
数据存放路径
 33 path.data: /data/elk_data
日志存放路径
 37 path.logs: /var/log/elasticsearch/ 
 
 在启动时不锁定内存
  43 bootstrap.memory_lock: false
  
提供服务绑定的ip地址,0.0.0.0表示所有地址
 55 network.host: 0.0.0.0
 
侦听端口
 59 http.port: 9200
 
群集发现通过单播实现
 68 discovery.zen.ping.unicast.hosts: ["node1", "node2"]
mkdir -p /data/elk_data
chown elasticsearch.elasticsearch /data/elk_data/
systemctl start elasticsearch.service
netstat -anpt | grep 9200

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

Linux:ELK:日志分析系统(使用elasticsearch集群),elk 

开启成功

yum -y install make gcc gcc-c++
tar xf node-v8.2.1.tar.gz
cd node-v8.2.1
./configure && make && make install

# 这里耐心等待,需要20分钟左右

tar xf phantomjs-2.1.1-linux-x86_64.tar.bz2 -C /usr/src
cp /usr/src/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/
tar xf elasticsearch-head.tar.gz -C /usr/src
cd /usr/src/elasticsearch-head/
npm install
vim /etc/elasticsearch/elasticsearch.yml 

末尾添加
http.cors.enabled: true
http.cors.allow-origin: "*"
systemctl restart elasticsearch
npm start &

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

 Linux:ELK:日志分析系统(使用elasticsearch集群),elk

如果你重启以后可以执行

cd /usr/src/elasticsearch-head/ && npm start &

快速启动 

成功


服务器(2)的配置

 先将elasticsearch   elasticsearch-head  node   phantomjs   logstash 包放进去

hostnamectl set-hostname tarro2 

 写入hosts

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

 安装java

yum -y install java
rpm -ivh elasticsearch-5.5.0.rpm 
systemctl daemon-reload
systemctl enable elasticsearch.service
cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak
vim /etc/elasticsearch/elasticsearch.yml 

17 cluster.name: my-elk

 23 node.name: tarro2

 33 path.data: /data/elk_data

 37 path.logs: /var/log/elasticsearch/ 
 
 43 bootstrap.memory_lock: false

 55 network.host: 0.0.0.0

 59 http.port: 9200

 68 discovery.zen.ping.unicast.hosts: ["tarro1", "tarro2"]

前面的# 全去掉
群集名称 
17 cluster.name: my-elk-cluster
节点服务器名称
 23 node.name: node1
数据存放路径
 33 path.data: /data/elk_data
日志存放路径
 37 path.logs: /var/log/elasticsearch/ 
 
 在启动时不锁定内存
  43 bootstrap.memory_lock: false
  
提供服务绑定的ip地址,0.0.0.0表示所有地址
 55 network.host: 0.0.0.0
 
侦听端口
 59 http.port: 9200
 
群集发现通过单播实现
 68 discovery.zen.ping.unicast.hosts: ["node1", "node2"]
mkdir -p /data/elk_data
chown elasticsearch.elasticsearch /data/elk_data/
systemctl start elasticsearch.service
netstat -anpt | grep 9200

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

 Linux:ELK:日志分析系统(使用elasticsearch集群),elk

成功

yum -y install make gcc gcc-c++
tar xf node-v8.2.1.tar.gz 
cd node-v8.2.1
./configure && make && make install

# 很久,耐心等待

tar xf phantomjs-2.1.1-linux-x86_64.tar.bz2 -C /usr/src
cp /usr/src/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/
tar xf elasticsearch-head.tar.gz -C /usr/src
cd /usr/src/elasticsearch-head/
npm install
vim /etc/elasticsearch/elasticsearch.yml 

末尾添加
http.cors.enabled: true
http.cors.allow-origin: "*"
systemctl restart elasticsearch
npm start &

Linux:ELK:日志分析系统(使用elasticsearch集群),elk 

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

如果你重启以后可以执行

cd /usr/src/elasticsearch-head/ && npm start &

快速启动 

成功

rpm -ivh logstash-5.5.1.rpm 
systemctl start logstash.service
ln -s /usr/share/logstash/bin/logstash /usr/local/bin/
chmod o+r /var/log/messages 
vim /etc/logstash/conf.d/system.conf


input {
        file {
           path => "/var/log/messages"
           type => "system"
           start_position => "beginning"
        }
}

output {
        elasticsearch {
          hosts => ["192.168.254.1:9200"]
          index => "system-%{+YYYY.MM.dd}"
        }
}
#________________________________________

注释:
input {

    file {                             从文件中读取

        path => "/var/log/messages"    文件路径

        type => "system"

        start_position => "beginning"  是否从头开始读取

    }

}

output {

    elasticsearch {                        输出到elasticsearch中

        hosts => ["192.168.10.181:9200"]   elasticsearch主机地址和端口

        index => "system-%{+YYYY.MM.dd}"   索引名称

    }

}
---------------------------
systemctl restart logstash

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

现在就已经可以收集日志了,收集的是tarro2主机上的日志

这样就配置成功了


 服务器(3)的配置

yum -y install httpd
systemctl start httpd

Linux:ELK:日志分析系统(使用elasticsearch集群),elk


 可以访问就行,这里主要将的不是http而是logstash

 将logstash 传入服务器(3)内

yum -y install java
rpm -ivh logstash-5.5.1.rpm 
systemctl daemon-reload
systemctl enable logstash.service
vim /etc/logstash/conf.d/apache_log.conf


input {
        file {
          path => "/etc/httpd/logs/access_log"
          type => "access"
          start_position => "beginning"

        }   

        file {
          path => "/etc/httpd/logs/error_log"
          type => "error"
          start_position => "beginning"

        }   
}

output {

        if [type] == "access" {
          elasticsearch {
                hosts => ["192.168.254.1:9200"]
                index => "apache_access-%{+YYYY.MM.dd}"
          }


        }


        if [type] == "error" {
          elasticsearch {
                hosts => ["192.168.254.1:9200"]
                index => "apache_error-%{+YYYY.MM.dd}"
          }


        }

}
ln -s /usr/share/logstash/bin/logstash /usr/local/bin
logstash -f /etc/logstash/conf.d/apache_log.conf 

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

这样以后去 Elasticsearch 集群看一下

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

收集日志成功 


服务器(4)的配置 

安装一个kibana展示出来

yum -y install java

将 kibana包传入服务器(4)

rpm -ivh kibana-5.5.1-x86_64.rpm 
systemctl enable kibana
vim /etc/kibana/kibana.yml 


 2 server.port: 5601

 7 server.host: "0.0.0.0"

 21 elasticsearch.url: "http://192.168.254.1:9200"

 30 kibana.index: ".kibana"

去掉前面#

注释:

server.port: 5601                             kibana打开的端口

server.host: "0.0.0.0"                        kibana侦听的地址

elasticsearch.url: "http://192.168.10.181:9200"    和elasticsearch建立联系

kibana.index: ".kibana"                     在elasticsearch中添加.kibana索引
systemctl start kibana

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

http://192.168.254.4:5601/
↑
http://kibanaip:5601/

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

 进入成功


设置kibana展示

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

 Linux:ELK:日志分析系统(使用elasticsearch集群),elk

Linux:ELK:日志分析系统(使用elasticsearch集群),elk 

Linux:ELK:日志分析系统(使用elasticsearch集群),elk 这个是192.168.254.2的系统日志展示,还差个192.168.254.3的网站日志展示

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

Linux:ELK:日志分析系统(使用elasticsearch集群),elk 

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

 文章来源地址https://www.toymoban.com/news/detail-619287.html

Linux:ELK:日志分析系统(使用elasticsearch集群),elk Linux:ELK:日志分析系统(使用elasticsearch集群),elk

Linux:ELK:日志分析系统(使用elasticsearch集群),elk 点击切换

Linux:ELK:日志分析系统(使用elasticsearch集群),elk

要看那个选那个

Linux:ELK:日志分析系统(使用elasticsearch集群),elk 

展示成功 

 

到了这里,关于Linux:ELK:日志分析系统(使用elasticsearch集群)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • elasticsearch定期删除策略 - 日志分析系统ELK搭建

    日志分析系统ELK搭建 ELK ELK是日志收集、索引与检索三件套,包含了三个组件 ElasticSearch Logstash Kibana 其中ElasticSearch完成日志的索引,并提供查询接口,Logstash完成日志的收集,Kibana则提供可视化展示 有了ELK,我们不再需要到线上的每一台机器上grep日志,而且能可视化查询任

    2023年04月08日
    浏览(44)
  • Linux--ELK日志分析系统

            ELK是一套针对日志数据做解决方案的框架,分别代表了三款产品: - E: ElasticSearch(ES),负责日志的存储和检索; - L:Logstash,负责日志的收集,过滤和格式化; - K:Kibana,负责日志的展示统计和数据可视化; ElasticSearch ElasticSearch是一个基于Lucene的搜索服务器。它

    2023年04月27日
    浏览(73)
  • 1-ELK+ Elasticsearch+head+kibana、企业内部日志分析系统

    ELK由ElasticSearch、Logstash和Kibana三个开源工具组成: 概念图    1、Elasticsearch: ElasticSearch是一个基于Lucene的开源分布式搜索服务。 只搜索和分析日志 特点:分布式,零配置,自动发现,索引自动分片,索引副本机制,多数据源等。它提供了一个分布式多用户能力的全文搜索引

    2024年02月06日
    浏览(54)
  • 2-ELK+ Elasticsearch+head+kibana、企业内部日志分析系统

    在一台新的虚拟机 系统类型:Centos7.5 节点IP: 192.168.246.235 软件版本:nginx-1.14.2、kibana-6.5.4-linux-x86_64.tar.gz 安装配置Kibana (1)安装 安装包看上篇怎么下载的 (2)配置 在文件最后面,加上即可 配置项含义: 其他配置项可参考: (3)启动 安装配置Nginx反向代理 (1)配置

    2023年04月09日
    浏览(69)
  • ELK企业级日志分析系统(elasticsearch+logstash+kibana)

    目录 一.ELK概述 1.定义 (1)ElasticSearch (2)Kiabana (3)Logstash (4)Filebeat 2.filebeat结合logstash带来好处 3.为什么要是用ELK? 4.完整日志系统基本特征 5.ELK 的工作原理 二.部署ELK 1.环境配置 2.ELK集群部署(node1、node2) 3.部署 Elasticsearch 软件 4.安装Elasticsearch-head 插件 (1)编译安

    2024年04月22日
    浏览(62)
  • ELK【elasticsearch+logstash+kibana】企业级日志分析系统

    ELK平台是一套完整的日志集中处理解决方案,将 elasticsearch、logstash 和 kiabana 三个开源工具配合使用,完成更加强大的用户对日志的查询、排序、统计需求。 ElasticSearch:是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。 Elasticsearch 是用

    2024年02月08日
    浏览(52)
  • ELK 企业级日志分析系统(ElasticSearch、Logstash 和 Kiabana 详解)

    目录 一.ELK简介 1.1ELK的概述  1.2ELK的组成 1.2.1 ElasticSearch  1.2.2 Logstash 1.2.3 Kibana   1.2.4 小总结  1.3可以添加其他组件  1.4filebeat 结合 logstash 带来好处 1.5日志处理的步骤   二.Elasticsearch 2.1Elasticsearch概述  2.2Elasticsearch核心概念 2.2.1接近实时(NRT) 2.2.2cluster集群,ES是一个分布式

    2024年02月13日
    浏览(37)
  • ELK之使用Grafana读取ES集群的Nginx日志进行分析展示

    直通车 ------------↓↓↓↓↓↓ 需要ES集群 https://blog.csdn.net/wdy_2099/article/details/125441436 需要filebeat https://blog.csdn.net/wdy_2099/article/details/125445893 需要logstash https://blog.csdn.net/wdy_2099/article/details/125464226 需要grafana https://blog.csdn.net/wdy_2099/article/details/124211397 需要nginx 需要对grafana添加

    2024年01月21日
    浏览(40)
  • 使用 Docker Compose V2 快速搭建日志分析平台 ELK (Elasticsearch、Logstash 和 Kibana)

    ELK 是指 Elasticsearch、Logstash 和 Kibana 这三个开源软件的组合。 Elasticsearch 是一个分布式的搜索和分析引擎,用于日志的存储,搜索,分析,查询。 Logstash 是一个数据收集、转换和传输工具,用于收集过滤和转换数据,然后将其发送到 Elasticsearch 或其他目标存储中。 Kibana 是一个数

    2024年01月20日
    浏览(54)
  • ELK日志分析--ES(Elasticsearch)--(一)

    Elasticsearch:存储、搜索和分析 Elasticsearch是Elastic Stack核心的分布式搜索和分析引擎。Logstash和Beats有助于收集,聚合和丰富你的数据并将其存储在Elasticsearch中。使用Kibana,你可以交互式地探索,可视化和共享对数据的见解,并管理和监视堆栈。Elasticsearch是发生索引,搜索和分

    2024年02月02日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包