软件版本:

  • 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. js_加入收藏夹功能

    <script type="text/javascript">function addToFavorite(obj) {    var url = "http ...

  2. UILabel富文本 段落格式以及UILabel添加图片

    之前文本整理有一点乱,这边重新整理一下,下面是效果图,一共两个UILabel, 富文本整理: /*NSForegroundColorAttributeName设置字体颜色,对象UIColor; NSP ...

  3. vuex使用

    1.装包:npm install vuex -S 2.引入:import Vuex from 'vuex'      //这些都是写在man.js中 3.加载到Vue中:Vue.use(Vuex) 4 ...

  4. thinkpad X1 extreme 安装Ubuntu 18.04.2 LTS

    1.安装的时候需要禁用:nouveau.modeset=0 2.安装完成之后需要添加:acpi=off ,ro后面加上3,直接进入终端 3.启动之后:安装nvdia驱动 $ ubuntu-driver ...

  5. git分支名一直带rebasing,如何去除

    git分支名一直rebasing, 使用git rebase --continue git rebase --skip git reset --abort 都没有用, 最后直接删除 当前目录下的.gi ...

  6. easyUI的datebox添加清空按钮功能

    需要修改源码: 第一步:按下图修改 第二步:按下两图修改(*zh_CN.js)

  7. 弱分类器的进化--Bagging、Boosting、Stacking

    一般来说集成学习可以分为三大类: 用于减少方差的bagging 用于减少偏差的boosting 用于提升预测结果的stacking 一.Bagging(1996) 1.随机森林(1996) RF = ...

  8. np.repeat 与 np.tile

    1.Numpy的 tile() 函数,就是将原矩阵横向.纵向地复制.tile 是瓷砖的意思,顾名思义,这个函数就是把数组像瓷砖一样铺展开来. 举个例子,原矩阵: import numpy as np ...

  9. postman返回参数的截取

    同事在使用postman接口测试的时候,遇到这么一个问题,在一个参数里面,返回了一个类似数组的参数,如下: 然后现在需要把数组里面的两个参数分别保存到环境变量里面: 个人的想法是通过截取的方式进行数组 ...

  10. django登录功能(简单在POST请求)

    第一  先在templates中创立index.html !DOCTYPE html> <head> <meta charset="UTF-8"> & ...