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配置文件

相关推荐
Shenqi Lotus2 天前
ELK-ELK基本概念_ElasticSearch的配置
elk·elasticsearch
weixin_438197384 天前
ELK实现前台单显示ip/host等日志信息
elk
陈震_4 天前
如何搭建 ELK【elasticsearch+logstash+kibana】日志分析系统
大数据·elk·elasticsearch
weixin_438197385 天前
nginx配置转发到elk的kibana的服务器
运维·服务器·nginx·elk
一颗知足的心5 天前
ELK之路第四步——整合!打通任督二脉
elk
一颗知足的心5 天前
ELK之路第三步——日志收集筛选logstash和filebeat
elk
weixin_438197385 天前
配置elk插件安全访问elk前台页面
运维·elk·jenkins
帅儿二郎5 天前
ELK:日志监控平台部署-基于elastic stack 8版本
linux·运维·elk·自动化运维·elastic·日志监控平台·日志分析平台
醇氧5 天前
【elkb】创建用户和角色
linux·开发语言·elk·es