ELK日志分析系统

一、ELK日志分析系统简介

ELK不仅适用于日志分析,还可以支持其他数据搜索、分析和收集的场景,如网络流量分析、性能分析等

1.1 日志服务器

  • 提高安全性

  • 集中存放日志

  • 缺陷(对日志分析困难)

1.2 ELK日志分析系统

  • Elasticsearch

  • Logstash

  • Kibana

1.2.1 Elasticsearch

1.2.1.1 Elasticsearch的概述

提供了一个分布式多用户能力的全文搜索引擎,例如百度。而且它是由java开发的,可通过RESTful web接口,可让用户通过浏览器和Elasticsearch。通常用于是索引和搜索大容量的日志,也可以搜索许多不同类型的文档

解释:RESTful web

get 获取

post 创建

put 更新

delete 删除

get 搜索值

1.2.1.2 Elasticsearch核心概念
  • 接近实时
  • 集群
  • 节点
  • 索引
    • 索引(库)->类型(表)->文档(记录)
  • 分片和副本

1.2.2Logstash介绍

1.2.2.1 Logstash介绍

一款强大的数据处理工具,可实现数据传输、格式处理、格式化输出,数据输入、数据加工(如过滤、改写等)记忆数据输出

1.2.2.1 LogStash主要组件
  • Shipper:日志收集者,专门负责监控当地的web微服务日志

  • Indexer:日志存储者

  • Broker:类似于日志的harbor,主要负责连接多个日志收集者,相当于中间人

  • Search and Storage:搜索和存储

  • Web Interface:基于web展示数据界面

1.2.2.2 logstash主要做的三件事
  1. input(数据采集)
  2. filter(数据过滤)
  3. output(数据输出)
1.2.2.3 filebeat

轻量级的开源日志文件数据收集器

1.2.2.3.1 filebeat结合logstash的优势
  1. 通过logstash

  2. 从其他数据源中提取

  3. 将数据发送给多个目的地或写入数据

  4. 使用条件数据流逻辑组成更复杂的处理管道

1.2.3 Kibana介绍

1.2.3.1 kibana介绍

一个针对Elasticsearch的开源分析及可视化平台,搜索、查看存储在Elasticsearch索引中的数据,通过各种图表进行高级数据分析及管理

1.2.3.2 Kibana主要功能
  • Elasticsearch无缝集成

  • 整合数据,复杂数据分析

  • 更加收益

  • 接口容易,分享工人也

  • 配置简单,可视化多数据源

  • 简单数据导出

1.3 日志处理步骤

  1. 将日志进行集中化管理
  2. 将日志格式化(Logstash)并输出到Elasticsearch
  3. 对格式化后的数据进行索引和存储(Elasticsearch)
  4. 前段数据的展示(Kibana)

1.4 完整日志系统基本特征

  • 收集:能够采集多种来源的日志数据
  • 传输:能够稳定的把日志数据分析过滤并传输到系统文件
  • 存储:存储日志数据
  • 分析:支持UI分析
  • 警告:能够提供错误报告,监控机制

二、ELK实施部署

2.1 ELK Elasticsearch集群部署(在Node1、Node2节点上操作)

2.1.1 为node1、node2关闭防火墙,改名,编辑hosts

2.1.2 解压压缩包

在node1远程传输内容到node2,为node1、node2解压压缩包ES

2.1.3 为node1、node2解压压缩包,重新配置服务并开机自启ES服务

2.1.4 为node1和node2配置文件,配置信息,创建文件夹和设置权限

2.1.5 为node1和node2启动ES服务

2.1.6 查看节点信息node1、node2

2.1.7 查看群集的健康情况

注意:

  • 绿色:健康 数据和副本 全都没有问题
  • 红色:数据都不完整
  • 黄色:数据完整,但副本有问题

2.2 在node1节点下操作

2.2.1 在opt下安装gcc、gcc-c++

2.2.2 在opt下解压node压缩包,同时编译安装

2.2.3 在opt下解压phantomjs到usr/local/src/下

2.2.4 切换目录,复制内容到/usr/local/src/

2.2.5 在opt下解压ES

2.2.6 切换到刚刚解压玩的目录下后进行安装

2.2.7 修改 Elasticsearch 主配置文件

vim /etc/elasticsearch/elasticsearch.yml

2.2.8 重新启动ES服务

systemctl restart elasticsearch

2.2.9 切换到elasticsearch-head,在后台运行

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

npm run start &

2.2.10 查看ES信息

2.2.11 插入索引

2.2.12 重新查看索引信息

2.3 ELK Logstash 部署(在 Apache 节点上操作)

2.3.1 关闭防火墙设置别名apache,安装httpd并启动

2.3.2 安装java环境,查看java版本

2.3.3 在opt下将logstash转移到xshell下,然后解压,为它做软链接,同时开机自启logstash服务

2.3.4 输入输出流

2.3.5 使用 rubydebug 输出详细格式显示

2.3.6 使用Logstash将信息写入Elasticsearch中

2.3.7 为message增加读权限,编辑system.conf配置文件,重新启动logstash服务

2.3.8 查看索引信息

2.4 ELK Kiabana部署(在 Node1 节点上操作)

2.4.1 安装kibana

cd /opt

rpm -ivh kibana-5.5.1-x86_64.rpm

2.4.2 启动服务,查看5601端口

systemctl start kibana.service

systemctl enable kibana.service

netstat -natp | grep 5601

2.4.3 增加索引

2.4.4 将Apache服务器的日志(访问的、错误的)添加到Elasticsearch并通过Kibana显示

2.4.5 切换到conf.cd下,运行apache_log配置文件

相关推荐
Karoku0661 天前
【企业级分布式系统】ELK-企业级日志分析系统
运维·数据库·redis·mysql·elk·缓存
一名技术极客2 天前
徒手从零搭建一套ELK日志平台
elk
jun7788954 天前
SpringBoot整合ELK使用详解
spring boot·后端·elk
yueqingll4 天前
023、ELK 从入门到实践
elk
abandondyy4 天前
ELK Elasticsearch 集群部署
大数据·elk·elasticsearch
小李叭叭叭4 天前
ELK8.15.4搭建开启安全认证
运维·elk·elasticsearch·kibana
光仔December12 天前
【Elasticsearch入门到落地】1、初识Elasticsearch
大数据·elk·elasticsearch·搜索引擎·lucene
太空眼睛13 天前
【EFK】Linux集群部署Elasticsearch最新版本8.x
linux·elk·elasticsearch·efk·master·8.15.3·node.roles
Shenqi Lotus16 天前
ELK-ELK基本概念_ElasticSearch的配置
elk·elasticsearch