ELK+Filebeat+Redis部署应用指导书(一)

原创作者:运维工程师 谢晋

概述

     为本公司ELK相关实施工作的顺利实施,公司数据库部门特制定一系列规范手册以指导软件的实施部署。本文即为其中之一。
     此文档用于指导在Centos 7.x(本文档以7.7为示范,7.8以上包括7.8不适用)平台上安装ELK日志分析平台收集Nginx日志。安装可以分成3个主要步骤:配置环境,安装ELK6.5.4、安装Redis6.0.4和安装后收集Nginx配置操作。

ElasticStack平台简介

     ELK是三个开源软件的缩写,分别为:Elasticsearch 、 Logstash以及Kibana , 它们都是开源软件。不过现在还新增了一个Beats,它是一个轻量级的日志收集处理工具(Agent),Beats占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具,目前由于原本的ELK Stack成员中加入了 Beats 工具所以已改名为Elastic Stack。
     一般我们需要进行日志分析场景:直接在日志文件中 grep、awk 就可以获得自己想要的信息。但在规模较大也就是日志量多而复杂的场景中,此方法效率低下,面临问题包括日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询。需要集中化的日志管理,所有服务器上的日志收集汇总。常见解决思路是建立集中式日志收集系统,将所有节点上的日志统一收集,管理,访问。
     大型系统通常都是一个分布式部署的架构,不同的服务模块部署在不同的服务器上,问题出现时,大部分情况需要根据问题暴露的关键信息,定位到具体的服务器和服务模块,构建一套集中式日志系统,可以提高定位问题的效率。
一个完整的集中式日志系统,需要包含以下几个主要特点:
收集-能够采集多种来源的日志数据
传输-能够稳定的把日志数据传输到中央系统
存储-如何存储日志数据
分析-可以支持 UI 分析
警告-能够提供错误报告,监控机制
而ELK则提供了一整套解决方案,并且都是开源软件,之间互相配合使用,完美衔接,高效的满足了很多场合的应用。是目前主流的一种日志系统。

ElasticStack体系架构

在这里插入图片描述
     Elasticsearch:是一个基于 Lucene 的、支持全文索引的分布式存储和索引引擎,主要负责将日志索引并存储起来,方便业务方检索查询。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
     Logstash:是一个日志收集、过滤、转发的中间件,主要负责将各条业务线的各类日志统一收集、过滤后,转发给 Elasticsearch 进行下一步处理。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。
     Kibana:是一个可视化工具,也是一个开源和免费的,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。
Beats:包含6种工具:
1、Filebeat:日志文件(收集文件数据)
2、Packetbeat:网络数据(收集网络流量数据)
3、Metricbeat:指标(收集系统、进程和文件系统级别的 CPU 和内存使用情况等数据)
4、Winlogbeat: windows事件日志(收集 Windows 事件日志数据)
5、Heartbeat:运行时间监控 (收集系统运行时的数据)
6、Auditbeat:审计数据 (收集审计日志)

系统运行环境

系统硬件环境:

3台64位物理机服务器或者虚拟机服务器。

系统软件环境

操作系统Centos 7.7
主机名elk
专用 IP 地址10.11.11.30
Elasticsearch版本6.5.4
Logstash版本6.5.4
Kibana版本6.5.4
文件系统本地文件系统
操作系统Centos 7.7
主机名nginx
专用 IP 地址10.11.11.31
Nginx版本1.18.0
Filebeat版本6.5.4
文件系统本地文件系统
操作系统Centos 7.7
主机名redis
专用 IP 地址10.11.11.32
Redis版本6.0.4
文件系统本地文件系统

安装前准备

配置网络环境

根据信息规划表的要求配置操作系统的主机名、IP地址、hosts文件。
本段下列配置为三台系统都要配置

  1. 配置hosts文件
# cat /etc/hosts
10.11.11.30 elk
# cat /etc/hosts
10.11.11.31 nginx
# cat /etc/hosts
10.11.11.32 redis
  1. 配置防火墙和selinux
         关闭系统的iptables服务,以及selinux防火墙,以确保oracle对外提供服务端口(默认1521)不被阻塞,请注意,确认以上两项服务的关闭是必须的选项。
         检查iptables服务是否运行:
# systemctl status firewalld
# getenforce

     如果返回的结果不是disabled,请运行以下命令,然后重启机器:

# setenforce 0
# systemctl stop firewalld
# systemctl disable firewalld
# sed -i -e 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
  1. 配置网络yum源(使用163yum源)
    进入yum源配置目录下:
# cd /etc/yum.repos.d/ 

使用weget命令下载yum源配置文件

# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo 

下载后需要修改文件里的版本号,否则无法使用yum源:

# vi CentOS7-Base-163.repo 

编辑文件,把文件里面的$releasever全部替换为版本号:7,然后保存。
替换:

:%s/$releasever/7/g

保存:

:wq

刷新重载yum源配置:

# yum clean all

使用list选项验证,正常显示软件包即成功。

#yum list

如上准备工作就完成了可以开始不是ELK应用了。

ELK+Filebeat+Redis部署应用指导书(二)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值