文档章节

[喵咪BELK实战(3)] logstash+filebeat搭建

喵了_个咪
 喵了_个咪
发布于 2017/05/09 09:56
字数 1241
阅读 491
收藏 0

[喵咪BELK实战(3)] logstash+filebeat搭建

前言

在上节我们已经把elasticsearch+kibana已经搭建起来了,可以正常的进行数据的索引查询了,但是直接对elasticsearch进行操作也非常不方便, elasticsearch很难对接其他的数据源,这是使用就需要logstash和filebeat出场了...

附上:

喵了个咪的博客:w-blog.cn

官网地址:https://www.elastic.co/cn/

1. logstash

logstash主要的作用就是输入输出进行数据的处理,官方声称支持十几种数据输入源和输出源,并且可以多点分发是一个很强大的工具,我们主要使用的是它的数据处理功能(比如解析日志提取关键字索引,数据过滤等)

1.1 安装

wget https://artifacts.elastic.co/downloads/logstash/logstash-5.3.0.tar.gz
tar -zxvf logstash-5.3.0.tar.gz
mv logstash-5.3.0 /usr/local/

1.2 第一条管道

从之前的介绍有了解到logstash它的主要功能是处理数据进行输入输出,所以我们就要搭建一条输入输出的数据通道来进行数据传输,创建这条管道的配置文件:

vim /usr/local/logstash-5.3.0/config/first-pipeline.conf

# 制定输入源为beats 并且开发9011端口接受数据
input {
	beats { 
		port => 9011
	}
}
# 制定数据输出源为elasticsearch 并且指定index名称
output {
	elasticsearch {
		hosts => [ "localhost:9200" ]
		index => "first-pipeline-%{+YYYY.MM.dd}"
	}
}

试着启动logstash: /usr/local/logstash-5.3.0/bin/logstash -f /usr/local/logstash-5.3.0/config/first-pipeline.conf 看到如下输出证明以及成功启动logstash

[2017-05-04T09:55:59,951][INFO ][logstash.inputs.beats    ] Beats inputs: Starting input listener {:address=>"0.0.0.0:9011"}
[2017-05-04T09:56:00,007][INFO ][logstash.pipeline        ] Pipeline main started
[2017-05-04T09:56:00,104][INFO ][logstash.agent           ] Successfully started Logstash API endpoint {:port=>9600}

使用Supervisor运行

使用Supervisor常驻启动修改配置文件加入如下语句在重启Supervisor就可以在后台运行

;你需要启动的进程给个名字
[program:logstash]
;你需要执行的语句
command=/usr/local/logstash-5.3.0/bin/logstash -f /usr/local/logstash-5.3.0/config/first-pipeline.conf
;是否自动启动
autostart=true
autorestart=true
;运行程序的用户
user=root

2. filebeat

虽然logstash也可以直接监听文件的数据,为什么还需要filebeat呢? 应为一般我们需要采集很多台服务器上的日志时需要做到尽量少的占用资源以及尽可能的简单,logstash使用JAVA编写可想而知对于资源消耗也不可小视,filebeat使用GO编写几乎做到不影响机器性能,并且filebeat还可以进行最基础的分类这就是选择filebeat的原因(之前beats是整合在logstash后面应为种种原因被分离了出来)

注意1:beats由很多程序组成filebeat只是其中对文件进行采集的一种 注意2:不一定要使用beats, logstash也可以直接接受各种组件上传的日志beats只是其中一种

2.1 安装

wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.3.1-linux-x86_64.tar.gz
tar -zxvf filebeat-5.3.1-linux-x86_64.tar.gz
mv filebeat-5.3.1-linux-x86_64 /usr/local/filebeat-5.3.1

2.2 配置采集数据源

既然是采集文件数据当然少不了对采集数据源的配置

vim /usr/local/filebeat-5.3.1/filebeat.yml

默认filebeat输出源是elasticsearch我们需要替换成logstash

# 修改如下语句
 output.elasticsearch:        ->   output.logstash:
  hosts: ["localhost:9200"]   ->   hosts: ["localhost:9011"]

配置文件默认采集/var/log下以.log结尾的文件

- input_type: log
  paths:
    - /var/log/*.log

使用如下命令运行 :/usr/local/filebeat-5.3.1/filebeat -c /usr/local/filebeat-5.3.1/filebeat.yml

2.3 使用Supervisor运行

使用Supervisor常驻启动修改配置文件加入如下语句在重启Supervisor就可以在后台运行

;你需要启动的进程给个名字                                                                                                            
[program:filebeat]
;你需要执行的语句
command=/usr/local/filebeat-5.3.1/filebeat -c /usr/local/filebeat-5.3.1/filebeat.yml
;是否自动启动
autostart=true
autorestart=true
;运行程序的用户
user=root

3 在kibana中查看采集的日志

正常采集起来之后就可以在kibana中添加一个查看的索引了

这个时候就把/var/log中所有以.log结尾的日志全部采集上来了并且可以通过source来进行文件的选择 这是选择了只看yum.log之后的效果

4. 总结

到这里我们基本上吧BELK已经完整的搭建起来并且对日志开始采集了,但是BELK不仅仅如此,还有对于kibana的使用,对于各类日志的处理,对于时间的处理,对于索引字段的增加等还有很多细节,继续关注喵了个咪的博客会为大家带来更多的关于BELK的使用技巧

注:笔者能力有限有说的不对的地方希望大家能够指出,也希望多多交流!

© 著作权归作者所有

共有 人打赏支持
喵了_个咪
粉丝 327
博文 150
码字总数 199180
作品 4
杨浦
技术主管
私信 提问
二, 跨语言微服务框架 - Istio环境搭建

当我们知道Istio是一个好东西,能够帮助我们快速实现微服务化中的一些关键节点,那么下一步就需要考虑怎么使用Istio了,Istio现在版本是和Kubernetes强关联在一起的,如果大家还不是太了解K...

喵了_个咪
2018/11/12
0
0
[喵咪KafKa(2)]单机模式运行KafKa

在上节我们介绍完KafKa之后,今天我们来搭建KafKa三种模式(单机模式,伪集群,集群)中的一种单机模式的搭建,在正常的使用中我们一般吧单机模式作为开发环境的标配,今天就来和喵咪一同搭建一个K...

喵了_个咪
2016/09/12
190
0
PhalApi(π框架) v1.4.1 发布,PHP 轻量级 API 接口开发框架

[前言] 夏天的脚步悄悄来临,在各位小伙伴的辛勤付出下,PhalApi迎来了新版本V1.4.1,在这次更新中着重以开发者便捷为本新增优化了很多功能,如对接口文档添加了各项重要功能可以直接在文档页面进...

喵了_个咪
2017/07/01
1K
4
[喵咪PHP]页面显示空白问题

哈喽!大家好啊,喵咪PHP第一次和大家见面了,熟悉的朋友呢也之道喵咪我也开了喵咪Liunx和喵咪Golang这两个坑目的呢是吧平常遇到的一些问题或者是在学习中的东西好工具分享出来和大家交流沟通,...

喵了_个咪
2016/06/09
408
0
PhalApi 2.2.2 发布,PHP轻量级开源接口框架

PhalApi 2.2.2 发布,PHP轻量级开源接口框架 [主要更新] 1、JSON格式错误时,追加参数错误提示 2、在线接口文档美化,添加顶部导航菜单,并添加友好的图标 [辅助更新] 1、迁移phalapi/apkAP...

暗夜在火星
2018/04/01
557
2

没有更多内容

加载失败,请刷新页面

加载更多

《1984》读后感作文4000字

《1984》读后感作文4000字: 新年的第一天,开始阅读Gorge Owell的政治寓言小说。以前阅读的是上译的董乐山的译本,也拜读过刘绍铭的译本,两人在翻译上各有千秋。董先生的译本显得有些压抑严...

原创小博客
7分钟前
0
0
Django集成Markdown编辑器【附源码】

专注内容写作的你一定不要错过markdown 简单介绍 markdown是一种标记语言,通过简单的标记语法可以使普通的文本内容具有一定的格式,使用非常简单,学习成本极低 目前各大Blog平台都已支持m...

运维咖啡吧
24分钟前
0
0
C++中虚函数的作用是什么?它应该怎么用呢?

C++中虚函数的作用: 1、简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。 2、实现多态性,多态性是将接口与实现进行分离。 3、当基类指针指向一个子类对象,通过这个指针调用子类...

天王盖地虎626
28分钟前
0
0
简单聊聊Linux学习经历

学习,是我们一生中都规避不了的一个话题,人的一生中都是在不断的学习,无论是功成名就的人士,还是一无是处的小混混,始终都处在一个不断学习的环境中,只是学习的内容千差万别,有的人是为...

linuxprobe16
29分钟前
0
0
面试之ssm粗略简答

说实在的,spring源码对我来说可能就是报错的时候会一个个点进去找错误源头,其他都是为了让自己学习大神们优秀的编程思想和理念(顺便面试的时候吹吹牛皮~) 这次zhjj就直接抛了一个范围很...

无极之岚
35分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部