在开源的日志管理方案中,最出名的莫过于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. weblogic域,管理服务器,受管服务器,集群和机器的基本知识

    1.域(Domain) •它是什么? –是一个逻辑上管理的WebLogic Server组,这些组从管理上当作一个整体来操作 •域里面有什么? –服务器 –服务器集群 –机器 •规则: –同一个域中的 ...

  2. 三种CSS样式

    内联式css样式,直接写在现有的HTML标签中 CSS样式可以写在哪些地方呢?从CSS 样式代码插入的形式来看基本可以分为以下3种:内联式.嵌入式和外部式三种. 内联式css样式表就是把css代码直接 ...

  3. 万变的Web,不变的CRUD

    用JSP+Servlet写程序,到Struts,Spring,hibernate写程序,到现在Spring Cloud分布式写程序,到底有多大区别,是不是还在写CRUD? 看着JD上各种要求,简直是S ...

  4. C++ TODO __fastcall

    C++ TODO __fastcall int __fastcall init_keys2(char *a1, char *a2) { char *v2; // r6 char *v3; // r5 ...

  5. 自定义PopupWindow实现常用效果

    package com.loaderman.customviewdemo; import android.content.Context; import android.view.View; impo ...

  6. pandas中根据列的值选取多行数据

    # 选取等于某些值的行记录 用 == df.loc[df['column_name'] == some_value] # 选取某列是否是某一类型的数值 用 isin df.loc[df['column ...

  7. layui给select下拉框赋值

    转: layui给select下拉框赋值 layui给select下拉框赋值 //重新渲染表单函数 function renderForm() { layui.use('form', function ...

  8. Apache Kafka系列(六)客制化Serializer和Deserializer

    已经迁移,请移步:http://www.itrensheng.com/archives/apache-kafka-repartition

  9. 四十四:数据库之SQLAlchemy之join实现复杂查询

    准备工作 from datetime import datetime from sqlalchemy import create_engine, Column, Integer, String, Da ...

  10. 【DVWA】File Upload(文件上传漏洞)通关教程

    日期:2019-08-01 17:28:33 更新: 作者:Bay0net 介绍: 0x01. 漏洞介绍 在渗透测试过程中,能够快速获取服务器权限的一个办法. 如果开发者对上传的内容过滤的不严,那么就 ...