在开源的日志管理方案中,最出名的莫过于ELK了。ELK是三个软件的合称: Elasticsearch、Logstash、Kibana。
 
Elasticsearch
 
一个近乎实时查询的全文搜索引擎。Elasticsearch的设计目的就是要能够处理和搜索巨量的日志数据。
 
Logstash
 
读取原始日志,并对其进行分析和过滤,然后将其转发给其他组件(比如Elasticsearch)进行索引和存储。Logstash 支持丰富的Input和Output类型,能够处理各种应用的日志。
 
Kibana
 
一个基于JavaScript的Web图形界面程序,专门用于可视化Elasticsearch的数据。Kibana能够查询Elasticsearch并通过丰富的图表展示结果。用户可以创建Dashboard来监控系统的日志。
 
日志处理流程
 
下图展示了Docker 部署环境下典型的ELK日志处理流程
 
Logstash 负责从各个Docker 容器中提取日志,Logstash将日志转发到 Elasticsearch进行索引和保存,Kibana分析和可视化数据。
 
安装ELK
 
ELK的部署方案可以非常灵活,在规模较大的生产系统中,ELK有自己的集群,实现了高可用和负载均衡。我们的目标是在最短的时间内学习并实践ELK,因此采用最小部署方案,在容器中搭建ELK
 
root@host1:~# docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -itd --name elk sebp/elk
 
我们这里使用 sebp/elk 这个现成的image,里面包含了整理ELK stack。容器启动后ELK各个组件将分别监听如下端口
 
    5601    Kibana web 接口
    9200    Elasticsearch JSON 接口
    5044    Logstash 日志接收接口
 
启动时如果报错:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
 
执行下面命令临时修改系统参数
sysctl -a|grep vm.max_map_count
sysctl -w vm.max_map_count=262144
sysctl -a|grep vm.max_map_count
 
或者 在/etc/sysctl.conf文件最后添加一行,永久修改系统参数
vm.max_map_count=262144
 
我们先访问以下Kibana http://IP:5601
 
 
访问一下 Elasticsearch的JSON接口  http://IP:9200/_search?pretty
 
 
 

089、初探ELK (2019-05-13 周一)的更多相关文章

  1. 2019/05/13 JAVA虚拟机堆内存调优

    -Xms4000m 堆内存初始值 * -Xmx4000m 堆内存最大值 * -XX:+PrintGCDetails 打印GC信息 * -XX:+UseSerialGC 使用串行GC * -XX:+Pr ...

  2. 每日一练ACM 2019.04.13

    2019.04.13 第1002题:A+B Proble Ⅱ Problem DescriptionI have a very simple problem for you. Given two in ...

  3. Heartbeat took longer than "00:00:01" at "09/06/2019 05:08:08 +00:00".

    .netcore在k8s+docker+linux,部署后,偶尔会报这样的警告 Warn:Microsoft.AspNetCore.Server.KestrelHeartbeat took longe ...

  4. 2019.05.26 周日--《阿里巴巴 Java 开发手册》精华摘要

    一.写在开头 Java作为一个编程界最流行的语言之一,有着很强的生命力.代码的编写规范也是不容忽视的,今天,我就把自己阅读的国内的互联网巨头阿里巴巴的<阿里巴巴 Java 开发手册>一些精 ...

  5. Java 9 ← 2017,2019 Java → 13 ,都发生了什么?

    距离 2019 年结束,只剩下 35 天了.你做好准备迎接 2020 年了吗? 一到年底,人就特别容易陷入回忆和比较之中,比如说这几天, 的对比挑战就火了! 这个话题登上了微博的热搜榜,也刷爆了朋友圈 ...

  6. Java 9 ← 2017,2019 → Java 13,来看看Java两年来的变化

    距离 2019 年结束,只剩下 33 天了.你做好准备迎接 2020 年了吗? 一到年底,人就特别容易陷入回忆和比较之中,比如说这几天的对比挑战就火了! 这个话题登上了微博的热搜榜,也刷爆了朋友圈, ...

  7. 2019 IEEEXtreme 13.0 Impact Factor 影响因子

    Impact Factor 题目大意 顾名思义,求影响因子.有 n 行 json 数据,第一行为期刊信息,后面为出版商出版的文章信息.   输入输出 点击查看详细 输入: 6 {"publi ...

  8. 初探 ELK - 每天5分钟玩转 Docker 容器技术(89)

    在开源的日志管理方案中,最出名的莫过于 ELK 了.ELK 是三个软件的合称:Elasticsearch.Logstash.Kibana. Elasticsearch一个近乎实时查询的全文搜索引擎.E ...

  9. 2019.04.13 python基础

    第一节    主要讲python背景  没什么要注意的  了解记住概念就好 python官网  python.org  自带shell  可以运行python代码 在IDLE中怎么运行代码 新建文本  ...

随机推荐

  1. kotlin 简单处理 回调参数 加?

    Kotlin Parameter specified as non-null is null 2017年10月18日 17:21:49 amiko_ 阅读数:9017    版权声明:本文为博主原创文 ...

  2. linux pwd指令的C实现

    linux pwd指令的C实现 pwd指令的功能介绍 linux pwd命令用于显示工作目录 执行pwd命令可立刻得知当前所在工作目录的绝对路径名称. 示例: 查询系统手册 如图所示,getcwd的描 ...

  3. TCP定时器 之 坚持定时器

    坚持定时器在接收方通告接收窗口为0,阻止发送端继续发送数据时设定. 由于连接接收端的发送窗口通告不可靠(只有数据才会确认,ACK不会确认),如果一个确认丢失了,双方就有可能因为等待对方而使连接终止:接 ...

  4. 套接字之close系统调用

    close系统调用用于关闭文件描述符,其系统调用实现如下所示: / * Careful here! We test whether the file pointer is NULL before * ...

  5. go语言实现简易ftp客户端

          版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/xiangxianghehe/article/details/78310249 Go语言实 ...

  6. Boston House Price with Scikit-Learn

    Boston House Price with Scikit-Learn Data Description >>> from sklearn.datasets import load ...

  7. 浏览器端-3WSchool-JavaScript:JavaScript Boolean 对象

    ylbtech-浏览器端-3WSchool-JavaScript:JavaScript Boolean 对象 1.返回顶部 1. Boolean 对象 Boolean 对象表示两个值:"tr ...

  8. 直连网(directly-connected networks)个数的计算

    直连网分为两种,point-to-point link和multiple access link, 如图: 对一个网络数直连网个数时,以上两种link都要计算.例子如下: 1. How many di ...

  9. 【flask】使用类组织配置-使用工厂函数创建程序实例

    [需求] 使用配置类管理flask管理测试环境, 通过1个参数即可控制Flask是运行develpment环境还是production环境(数据库配置,邮件配置也要根据环境的变化而变化) [思路] 1 ...

  10. Ubantu下部署Flask项目安装与配置

    1.nginx 安装 sudo apt-get install nginx 启动,停止和重启 sudo /etc/init.d/nginx start sudo /etc/init.d/nginx s ...