vlambda博客
学习文章列表

用docker 安装 Filebeat、Logstash、Kibana是什么体验


今天想学习docker的小伙伴注意啦!

文末有福利,免费自取哦~

0 1

什么是 Beats

在 ELK 技术栈中,Logstash 负责收集、解析日志,但是对内存、CPU、io 等资源消耗比较高, 尤其是在需要大量处理日志的情况下, 将 Logstash 的部分职责外包的想法也应运而生。


Beats 是轻量级(资源高效,无依赖性,小型)和开放源代码日志发送程序的集合 ,相比 Logstash,Beats 所占系统的 CPU 和内存几乎可以忽略不计。目前 Beats 家族有 7 个主要成员:


用docker 安装 Filebeat、Logstash、Kibana是什么体验


  • Filebeat 介绍

    Filebeat 是用于“转发”和“集中日志数据”的“轻量型数据采集器”。

    Filebeat 监视您指定的日志文件路径,收集日志事件并将数据转发到 ElasticSerach 或 Logstash、Redis 等。


    用docker 安装 Filebeat、Logstash、Kibana是什么体验


  • Filebeat 工作流程

    Filebeat 主要包含两个组件:输入和收割机,这些组件协同工作将文件尾部最新事件数据发送到指定的输出

  • 输入(input):负责管理收割机从哪个路径查找所有可读取的资源

  • 收割机(Harvester):负责逐行读取单个文件的内容,然后将内容发送到输出。

用docker 安装 Filebeat、Logstash、Kibana是什么体验


  • docker 安装 Filebeat

  • 拉取镜像

docker pull docker.elastic.co/beats/filebeat:7.1.1
  • filebeat.yml

setup.ilm.enabled: falsesetup.template.name: "filebeat-161"setup.template.pattern: "filebeat-161-*"setup.template.settings: index.number_of_shards: 5 index.number_of_replicas: 0 index.codec: best_compression 
filebeat.inputs:- type: log ##文本日志 paths: - /var/log/filebeat/lemon.log ##日志文件修改权限到666output: elasticsearch: #输出到elasticsearch,也可以输出到logstash hosts: ["192.168.232.160:9200"] #elasticsearch地址, index: "filebeat-161-%{+yyyy.MM.dd}"
  • 启动 Filebeat

docker run -d \--name=my-filebeat-2 \-v /mydata/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml \-v /mydata/filebeat/log:/var/log/filebeat/ \0bd69a03e199
02

什么是 logstash

logstash 能够集中、转换和存储数据, 动态地采集、转换和传输数据,不受格式或复杂度的影响。

用docker 安装 Filebeat、Logstash、Kibana是什么体验

  • 安装 logstash

  • 拉去镜像

docker pull logstash:7.1.1
  • 配置 logstash

logstash.yml
path.config: /usr/share/logstash/conf.d/*.confpath.logs: /var/log/logstash
lemon.conf
配置数据来源,过滤器,输出
input { file{ path => ["/var/log/logstash/lemon.log"] start_position => "beginning" }}
filter { split { field => "message" terminator => "|" }}
output { elasticsearch { hosts => ["192.168.232.160:9200"] index => "logstash-161-%{+yyyy.MM.dd}" }}


logstash 提供了不同的 input 输入插件,Filter 过滤器插件,Output 输出插件


用docker 安装 Filebeat、Logstash、Kibana是什么体验

  • 运行容器启动 logstash

docker run -p 5044:5044 --name my-logstash \-v /mydata/logstash/logstash.yml:/usr/share/logstash/config/logstash.yml \-v /mydata/logstash/conf.d/:/usr/share/logstash/conf.d/ \-v /mydata/logstash/log:/var/log/logstash b0cb1543380d
0 3

什么是 Kibana

Kibana 是一个免费且开放的用户界面,能够让你对 Elasticsearch 数据进行可视化,并让你在 Elastic Stack 中进行导航。

你可以进行各种操作,从跟踪查询负载,到理解请求如何流经您的整个应用,都能轻松完成。

一张图片胜过千万行日志,下面是 Kibana 中的仪表盘界面


用docker 安装 Filebeat、Logstash、Kibana是什么体验


  • 安装 Kibana

  • 拉去镜像

docker pull kibana:7.1.1
  • 配置 kibana.yml

server.name: kibana #服务名称server.host: "0" #服务地址,0代表本机elasticsearch.hosts: [ "http://192.168.232.160:9200" ] #elasticsearch地址xpack.monitoring.ui.container.elasticsearch.enabled: truei18n.locale: "zh-CN" #中文汉化
  • 运行容器启动 logstash

docker run -d --name my-kibana -p 5601:5601 -v /mydata/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml 67f17df6ca3e



文末福利


今天的内容,大家get到了吗~

领取免费 docker学习视频资料

用docker 安装 Filebeat、Logstash、Kibana是什么体验

快来找罗罗老师领取吧~


扫描下方二维码

用docker 安装 Filebeat、Logstash、Kibana是什么体验

用docker 安装 Filebeat、Logstash、Kibana是什么体验




用docker 安装 Filebeat、Logstash、Kibana是什么体验
用docker 安装 Filebeat、Logstash、Kibana是什么体验


往期精彩...

1.

2.

3.

4.

5.

6.

7.

8.