软件版本:

  • es:2.4.0
  • logstash:2.4.0
  • kibana:4.6.1

一、logstash安装(收集、过滤日志、构建索引)

1、下载:https://www.elastic.co/downloads/

2、解压

3、启动

  • cd /Users/enniu1/Desktop/server/elk/logstash-2.4.0/bin

  • ./logstash -e 'input{stdin{}} output{stdout{codec=>rubydebug}}'

    • -e:用于快速测试的时候指定参数
    • codec:美化输出格式
    • 仅用于测试

4、测试

命令行输入:hello jigang

输出:

 {
        "message" => "hello jigang",
       "@version" => "1",
     "@timestamp" => "2016-09-17T10:41:31.215Z",
           "host" => "ShaoFeng51deMacBook-Pro.local"
 }

注意:以上是logstash最常见的输出形式。

  • message:完整的输入信息或事件
  • host:事件发生的主机
  • @timestamp:事件被索引时的时间。

5、生产环境

使用配置文件配置input、filter、output信息

  • 自己创建配置文件:/Users/enniu1/Desktop/server/elk/logstash-2.4.0/conf/logstash.conf

    input {
        stdin {}
    }
    
    filter {
    
    }
    
    output {
        elasticsearch { hosts => ["127.0.0.1:9200"] }
    }
    • 以上配置将所有的输入信息都输出到es中,这是最常见的输出地方。
    • 还有一种elk架构使用redis作为broker来接收logstash收集到的数据,之后进行indexer,这是高数量情况下的首选,redis会担当一个消息队列的角色。

    logstash配置文件配置文档:https://www.elastic.co/guide/en/logstash/current/configuration.html

    之后启动logstash:./logstash -f ../conf/logstash.conf

    至此,logstash配置安装成功!!!

    二、es安装(搜索、存储日志)

    1、下载:https://www.elastic.co/downloads/

    2、解压

    3、配置文件:elasticsearch-2.4.0/config/elasticsearch.yml

    # Use a descriptive name for your cluster:集群将根据这个名字来自动发现和加入节点
    cluster.name: mymicroservice-elk
    node.name: node-es-1
    path.data: /Users/enniu1/Desktop/microservice/elk/es/data
    path.logs: /Users/enniu1/Desktop/microservice/elk/es/logs
    network.host: 127.0.0.1
    http.port: 9200

    4、启动

    • cd/Users/enniu1/Desktop/server/elk/elasticsearch-2.4.0/bin
    • nohup ./elasticsearch &

    5、测试

    浏览器输入:http://127.0.0.1:9200/,输出:

    {
      "name" : "node-es-1",
      "cluster_name" : "mymicroservice-elk",
      "version" : {
        "number" : "2.4.0",
        "build_hash" : "ce9f0c7394dee074091dd1bc4e9469251181fc55",
        "build_timestamp" : "2016-08-29T09:14:17Z",
        "build_snapshot" : false,
        "lucene_version" : "5.5.2"
      },
      "tagline" : "You Know, for Search"
    }

    成功!!!

    注意:为了更好的使用并查看es的使用情况,安装Kopf插件。

    Kopf插件地址:https://github.com/lmenezes/elasticsearch-kopf

    插件安装文档:https://www.elastic.co/guide/en/elasticsearch/plugins/current/installation.html

    安装命令:

    • cd/Users/enniu1/Desktop/server/elk/elasticsearch-2.4.0/bin
    • ./plugin install lmenezes/elasticsearch-kopf

    安装插件之后重启es,浏览器输入:127.0.0.1:9200/_plugin/kopf,输出

    成功!!!

    三、kibana安装(展示日志信息)

    1、下载:https://www.elastic.co/downloads/

    2、解压

    3、配置文件:/Users/enniu1/Desktop/server/elk/kibana-4.6.1/config

    1 server.host: "127.0.0.1"
    2 server.port: 5601
    3 elasticsearch.url: "http://127.0.0.1:9200"

    4、启动

    • cd /Users/enniu1/Desktop/server/elk/kibana-4.6.1/bin
    • ./kibana

    5、测试

    浏览器输入:http://127.0.0.1:5601/

    输出:

    在此页面,点击"create"按钮,进行index的构建。

    至此,kibana配置安装启动成功!!!

    四、形成完整通道

    在logstash终端输入:hello jigang

    在kibana的Discover部分查看日志:

    elk最简架构搭建完成!!!

【第三十章】 elk(1) - 第一种架构(最简架构)的更多相关文章

  1. 第三十章 elk(1) - 第一种架构(最简架构)

    软件版本: es:2.4.0 logstash:2.4.0 kibana:4.6.1 一.logstash安装(收集.过滤日志.构建索引) 1.下载:https://www.elastic.co/do ...

  2. thinkphp 的两种建构模式 第一种一个单入口里面定义两个模块,前台和后台,函数控制模块必须function.php前台加载前台模块的汉书配置文件,后台加载后台模块的汉书配置文件,公共文件共用。第二种架构模式两个单入口文件,分别生成两个应用定义define。。。函数可以定义配置文件。。。。

    thinkphp 的两种建构模式  第一种一个单入口里面定义两个模块,前台和后台,函数控制模块必须function.php前台加载前台模块的汉书配置文件,后台加载后台模块的汉书配置文件,公共文件共用. ...

  3. 数据库时间内接受的是lang类型的时间 分为三种字段 第一种只存日期 第二种存日期+时间 第三种时间戳

    数据库时间内接受的是lang类型的时间 分为三种字段 第一种只存日期 第二种存日期+时间 第三种时间戳

  4. 一种M2M业务的架构及实现M2M业务的方法

    http://www.cnblogs.com/coryxie/p/3849764.html 技术领域 [0001] 本发明涉及通信技术领域,尤其涉及一种M2M业务的架构及实现M2M业务的方法. 背景技 ...

  5. 一种更清晰的Android架构(转)

    一种更清晰的Android架构   一种更清晰的Android架构 原文链接 : Architecting Android…The clean way? 译者 : Mr.Simple & So ...

  6. 今天我们要说的画一个三角形,恩,画一个三角形,第一种呢是利用我们的html标签结合css来实现;而第二种方法就就是我们的html5新增的一个标签canves,这个canves就是网页画幕,那么顾名思义就是在网页里建造一个画板,用来画画,好,那接下来就和我一起去看看吧!

    第一种方法:利用我们的html标签结合css来实现 span{ width:0px; height:0px; border-width:7px; border-style:solid; border- ...

  7. Android-AnimationDrawable(三)运行的几种方式

    项目开发用到了AnimationDrawable,调用start后没有运行,很纳闷.google搜了下.记录一下. 这个AnimationDrawable.start不能直接写在onClick,onS ...

  8. 第一种:NStread

    - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...

  9. 第三篇——第二部分——第一文 SQL Server镜像简介

    原文:第三篇--第二部分--第一文 SQL Server镜像简介 原文出处:http://blog.csdn.net/dba_huangzj/article/details/26951563 镜像是什 ...

随机推荐

  1. AspNetPager使用方法

    一.AspNetPager支持两种方式分页: 一种是PostBack方式分页, 一种是通过Url来实现分页以及Url重写功能 二.AspNetPager支持各种数据绑定控件GridView.DataG ...

  2. vue中定义多重样式

  3. 自定义WordPress文件上传路径

    自WordPress 3.5版本开始,隐藏了后台媒体设置页面的“默认上传路径和文件的完整URL地址”选项,可以通过下面的代码将该选项调出来. 将下面的代码添加到当前主题functions.php文件中 ...

  4. Scala里面如何使用枚举

    枚举通常用来定义已知数量的常量,比如月份,星期,季节等等,用过java的人都知道定义枚举的关键字是enum,在scala里面和java有所不同,来看一个完整的例子定义: object EnumTest ...

  5. UMI标签学习【转载】

    转自: https://club.1688.com/threadview/50123159.htm 简单介绍一下利用单分子标签(Unique Molecular Identifier,UMI)对残留噪 ...

  6. &nbsp

    这个东西在 html 里是空格占位符,普通的空格在 html 里如果连续的多个可能被认为只有一个,而这个东西你写几个就能占几个空格位.

  7. [LeetCode] 197. Rising Temperature_Easy tag: SQL

    Given a Weather table, write a SQL query to find all dates' Ids with higher temperature compared to ...

  8. Django-form组件和ModelForm组件

    一. 构建Form表单 通过建一个类,添加需要进行验证的form字段,继而添加验证条件 from django import forms from django.forms import widget ...

  9. Look for the Air Jordan 32 in full family sizing

    Following the release of the 'Rosso Corsa' colorway, Jordan Brand is now set to officially launch th ...

  10. 文件操作(CRT、C++、WIN API、MFC)

    一.使用CRT函数文件操作 二.使用标准C++库 std::fstream std::string 1)std::string对象内部存储了一个C的字符串,以'\0'结尾的. 2)std::strin ...