2019独角兽企业重金招聘Python工程师标准>>>

当前环境

1.系统:centos 7

2.docker 1.12.1

介绍

ElasticSearch

Elasticsearch 是一个实时的分布式搜索和分析引擎,它可以用于全文搜索,结构化搜索以及分析。它是一个建立在全文搜索引擎 Apache Lucene 基础上的搜索引擎,使用 Java 语言编写。

Logstash

Logstash 是一个具有实时渠道能力的数据收集引擎,主要用于日志的收集与解析,并将其存入 ElasticSearch中。

Kibana

Kibana 是一款基于 Apache 开源协议,使用 JavaScript 语言编写,为 Elasticsearch 提供分析和可视化的 Web 平台。它可以在 Elasticsearch 的索引中查找,交互数据,并生成各种维度的表图。

Filebeat

引入Filebeat作为日志搜集器,主要是为了解决Logstash开销大的问题。相比Logstash,Filebeat 所占系统的 CPU 和内存几乎可以忽略不计。

架构

不引入Filebeat

引入Filebeat

部署

启动ElasticSearch

docker run -d -p 9200:9200 --name elasticsearch elasticsearch

启动Logstash

# 1. 新建配置文件logstash.conf
input {
beats {
port => 5044
}
}output {
stdout {
codec => rubydebug
}
elasticsearch {
#填写实际情况elasticsearch的访问IP,因为是跨容器间的访问,使用内网、公网IP,不要填写127.0.0.1|localhost
hosts => ["{$ELASTIC_IP}:9200"]}
}# 2.启动容器,暴露并映射端口,挂载配置文件
docker run -d --expose 5044 -p 5044:5044 --name logstash -v "$PWD":/config-dir logstash -f /config-dir/logstash.conf

启动Filebeat

下载地址:https://www.elastic.co/downloads/beats/filebeat

# 1.下载Filebeat压缩包
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.2.2-linux-x86_64.tar.gz# 2.解压文件
tar -xvf filebeat-5.2.2-linux-x86_64.tar.gz# 3.新建配置文件filebeat.yml
filebeat:
prospectors:
- paths:
- /tmp/test.log #日志文件地址
input_type: log #从文件中读取
tail_files: true #以文件末尾开始读取数据
output:
logstash:
hosts: ["{$LOGSTASH_IP}:5044"] #填写logstash的访问IP# 4.运行filebeat
./filebeat-5.2.2-linux-x86_64/filebeat -e -c filebeat.yml

启动Kibana

docker run -d --name kibana -e ELASTICSEARCH_URL=http://{$ELASTIC_IP}:9200 -p 5601:5601 kibana

测试

模拟日志数据

# 1.创建日志文件
touch /tmp/test.log# 2.向日志文件中写入一条nginx访问日志
echo '127.0.0.1 - - [13/Mar/2017:22:57:14 +0800] "GET / HTTP/1.1" 200 3700 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36" "-"' >> /tmp/test.log

访问 http://{$KIBANA_IP}:5601

总结

本文主要讲述了如何一步步搭建ELK的过程,以及Filebeat在其中所起的作用。

这儿仅仅给大家做了一个演示,要在生产环境中部署时,还需使用数据卷进行数据持久化,容器内存问题也需考虑,elasticsearch与logstash都是相对吃内存的,如果不加以限制,很可能会拖垮你整个服务器。

当然安全因素也是大家不能忽视的,如传输的安全性、端口权限的最小化暴露程度,防火墙设置等。

后续

logstash解析日志格式,如JAVA、nginx、nodejs等日志;

elasticsearch的常用搜索语法;

通过kibana制作可视化图表;

原文来自:http://www.linuxprobe.com/docker-deploy-elk-filebeat.html

转载于:https://my.oschina.net/ssdlinux/blog/1535603

在Docker上搭建ELK+Filebeat日志中心相关推荐

  1. 懒人必备:.NetCore快速搭建ELK分布式日志中心

    该篇内容由个人博客点击跳转同步更新!转载请注明出处! 前言 ELK是什么 它是一个分布式日志解决方案,是Logstash.Elastaicsearch.Kibana的缩写,可用于从不同的服务中收集日志 ...

  2. 手把手教你搭建 ELK 实时日志分析平台

    来自:武培轩 本篇文章主要是手把手教你搭建 ELK 实时日志分析平台,那么,ELK 到底是什么呢? ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash ...

  3. 在 Docker 上搭建 PostGIS 数据库实现空间数据存储及可视化

    此文旨在记录与传播在 Docker 上搭建 PostGIS 数据库实现空间数据存储及可视化的知识要点. PostGIS 已经有PostGIS经验的大佬可以忽略此段了.解释 PostGIS 之前需要介绍 ...

  4. 手把手教你如何快速搭建 ELK 实时日志分析平台

    本篇文章主要是手把手教你搭建 ELK 实时日志分析平台,那么,ELK 到底是什么呢? ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash 和 Kiban ...

  5. Docker部署SpringCloud ELK+RabbitMQ日志

    Docker部署SpringCloud ELK+RabbitMQ日志 Im_Coder 原文:https://www.jianshu.com/p/f773f23096a9 一.效果图 image.pn ...

  6. Linux系统Centos7 基于Docker搭建ELK分布式日志系统

    ELK 基本概述 ELK是Elasticsearch.Logstash.Kibana的简称,常常用于部署分布式系统日志服务. Elasticsearch:全球实时全文搜索和分析引擎,提供搜集.分析.存 ...

  7. 在滴滴云 DC2 云服务器上搭建 ELK 日志采集系统

    前段时间大学同学聚会,一个在读的博士同学谈到他们实验室做实验时,物理服务器需要向老师申请且组内同学都共用那些机器.由于运行一些大数据和人工智能的项目比较耗费资源,且对资源环境的隔离要求比较高,因而很多 ...

  8. asp.net core结合NLog搭建ELK实时日志分析平台

    0.整体架构 整体架构目录:ASP.NET Core分布式项目实战-目录 一.介绍ELK 1.说明(此篇ELK采用rpm的方式安装在服务器上)-牛刀小试 承接上一篇文章的内容准备部署ELK来展示asp ...

  9. 基于Docker快速搭建ELK

    [摘要] 本文基于自建的Docker平台速搭建一套完整的ELK系统,相关的镜像直接从Docker Hub上获取,可以快速实现日志的采集和分析检索. 准备镜像 l  获取ES镜像:docker pull ...

  10. 用Docker镜像搭建ELK环境

    之前在Windows上尝试过搭建ELK环境,并将MySQL或SQLServer中的数据导入到Elasticsearch中.现在用Docker提供的镜像可以快速的完成这一操作. 环境说明 系统:Wind ...

最新文章

  1. 改变电子商务行业的5种人工智能趋势
  2. 刷算法的时候有没有必要自写测试用例?
  3. 第4章 Python 数字图像处理(DIP) - 频率域滤波12 - 选择性滤波 - 带阻
  4. 白帽子讲web安全——认证与会话管理
  5. 突发!Intel CEO 换帅,VMware CEO 将走马上任
  6. C#DbHelperOleDb,Access数据库帮助类 (转载)
  7. PR第三次培训笔记(视频效果 转场)
  8. 联想r720自带杜比驱动下载_给心爱的本本装上杜比音效
  9. PLC系统调试的步骤
  10. c语言do while例子,C语言do while循环
  11. 基于vue的 表单设计器(拖拽生成表单)
  12. 路由器桥接显示无法连接服务器,路由器无法桥接怎么办
  13. idea里面java文件只读,Java只读集合
  14. 聊聊 iframe 的优缺点以及使用场景
  15. 【财富空间】陈春花:向内打破,为成长赋能;面对全球市场,要有全球化思维、本土化行动
  16. 系统滴答定时器的应用
  17. 立创开源 51编程炫酷心形流水灯
  18. Allegro 绘图参数的设置-设置图纸尺寸
  19. DL | TensorRT将Tensorflow模型转换为uff格式 报错Unable to locate package uff-converter-tf
  20. 01、【江科大自化协stm32F103c8t6】笔记之【入门32单片机及GPIO初始化参数配置】

热门文章

  1. mysql索引之六:mysql高效索引之覆盖索引
  2. php 获取图片、swf的尺寸大小
  3. 用鼠标获取任意窗口的句柄, 并把它当作干儿子
  4. 128 数据库基本操作
  5. 104 基于UDP协议的socket套接字编程
  6. linux服务器下安装phpstudy 如何命令行进入mysql
  7. 38.线程交换与线程移动
  8. Linux安装及使用
  9. hdu 1423(LCS+LIS)
  10. pl/sql远程连接oracle总结