ElasticSearch实战-入门

1.概述

  今天接着《ElasticSearch实战-日志监控平台》一文来给大家分享后续的学习,在《ElasticSearch实战-日志监控平台》中给大家介绍一个日志监控平台的架构方案,接下来给大家分享如何去搭建部署这样一个平台,给大家做一个入门介绍。下面是今天的分享目录:

  • 搭建部署 Elastic 套件
  • 运行集群
  • 截图预览

  下面开始今天的内容分享。

2.搭建部署 Elastic 套件

  搭建 Elastic 套件较为简单,下面我们开始去搭建部署相关套件,首先我们准备必要的环境。

2.1 基础软件

  大家可以 Elastic 的官方网站下载对应的安装包,地址如下所示:

  [下载地址

  另外,一个基础环境就是需要用到 JDK,ES 集群依赖 JDK,地址如下所示:

  [下载地址

2.2 Logstash 部署

  这里我们将 Logstash 的服务部署在中心节点中,其核心配置文件如下所示:

  • central.conf
  1. input {
  2. redis {
  3. host => "10.211.55.18"
  4. port => 6379
  5. type => "redis-input"
  6. data_type => "list"
  7. key => "key_count"
  8. }
  9. }
  10. filter {
  11. grok {
  12. match => ["message", "%{IPORHOST:client} (%{USER:ident}|-) (%{USER:auth}|-) \[%{HTTPDATE:timestamp}\] \"(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:http_version})?|-)\" %{NUMBER:response} %{NUMBER:bytes} \"(%{QS:referrer}|-)\" \"(%{QS:agent}|-)\""]
  13. }
  14. kv {
  15. source => "request"
  16. field_split => "&?"
  17. value_split => "="
  18. }
  19. urldecode {
  20. all_fields => true
  21. }
  22. }
  23.  
  24. output {
  25. elasticsearch {
  26. cluster => "elasticsearch"
  27. codec => "json"
  28. protocol => "http"
  29. }
  30. }

  其代理节点,分别部署在日志生产节点之上,核心配置文件如下所示:

  • shipper.conf
  1. input {
  2. file {
  3. type => "type_count"
  4. path => ["/home/hadoop/dir/portal/t_customer_access.log"]
  5. exclude => ["*.gz", "access.log"]
  6. }
  7. }
  8.  
  9. output {
  10. stdout {}
  11. redis {
  12. host => "10.211.55.18"
  13. port => 6379
  14. data_type => "list"
  15. key => "key_count"
  16. }
  17. }

2.3 Elasticsearch 部署

  接着,我们部署 ES 集群,配置较为简单,其配置内容如下所示:

  • elasticsearch.yml
  1. node.name: "node1"

  这里我只配置了其节点名称信息,集群名称使用默认的,若大家需要配置其他信息可自行处理,需要注意的是,这里在实用 scp 命令分发到其他节点时,需要修改其属性值,保持每个节点的 node.name 值不一样即可。

  另外,在安装插件 ES 集群的相关插件时,可以使用以下命令:

  • head 插件
  1. sudo elasticsearch/bin/plugin -install mobz/elasticsearch-head
  • bigdesk 插件
  1. sudo elasticsearch/bin/plugin -install lukas-vlcek/bigdesk

  其对应的 Web UI 界面如下图所示:

  • head插件的界面

  • bigdesk的界面

  关于其他的 ES 集群的插件,搭建可以根据实际业务需求进行选择性的安装,这里就不多赘述了。

2.4 Kibana 部署

  这里我们需要安装一个能够去可视化 ES 集群数据的工具,这里我们选择 Kibana 工具去可视化我们的数据,其安装较为简单,只需配置对应的核心文件即可,配置如下:

  • kibana.yml

  1. elasticsearch_url: "http://10.211.55.18:9200"

  这里去可视化 node1 节点 ES 集群中数据。

3.运行集群

  接着,我们启动整个系统,启动步骤如下所示:

  • 启动 Redis
  1. [hadoop@dn1 ~]$ redis-server &
  • 启动代理节点(分别在其代理节点启动shipper)
  1. bin/logstash agent --verbose --config conf/shipper.conf --log logs/stdout.log &
  • 启动中心服务
  1. bin/logstash agent --verbose --config conf/central.conf --log logs/stdout.log &
  • 启动 ES 集群(分别在 ES 节点启动)
  1. bin/elasticsearch start
  • 启动 Kibana 服务
  1. bin/kibana

4.预览截图

  这里,我们可以预览收集的日志,日志信息我只抽取了几条,截图如下:

  我们还可以使用筛选功能,选取我们需要观察的数据结果,这里我们筛选了 IP 和 AppName 属性进行观察,如下图所示:

5.总结

  这里需要注意的是,若是我们首次启动 Kibana 服务,收集日志信息为空的情况下,在我们创建索引时,Settings 模块下的界面中 Create 按钮会是灰色状态,导致无法创建,这里大家在创建的时候需要保证我们有日志已被收集存储到 ES 集群。如下图,由于我已收集存储日志到 ES 集群,所以按钮呈现绿色状态,供点击创建。如下图所示:

6.结束语

  这篇博客就和大家分享到这里,如果大家在研究学习的过程当中有什么问题,可以加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉!

联系方式: 
邮箱:smartdengjie@gmail.com 
QQ群(董的博客):306184597 
温馨提示:请大家加群的时候写上加群理由(姓名+公司/学校),方便管理员审核,谢谢!

热爱生活,享受编程,与君共勉!

ElasticSearch实战的更多相关文章

  1. ElasticSearch实战-入门

    http://www.cnblogs.com/smartloli/ 1.概述 今天接着<ElasticSearch实战-日志监控平台>一文来给大家分享后续的学习,在<ElasticS ...

  2. ElasticSearch实战-日志监控平台

    1.概述 在项目业务倍增的情况下,查询效率受到影响,这里我们经过讨论,引进了分布式搜索套件——ElasticSearch,通过分布式搜索来解决当下业务上存在的问题.下面给大家列出今天分析的目录: El ...

  3. ElasticSearch实战-编码实践

    1.概述 前面在<ElasticSearch实战-入门>中给大家分享如何搭建这样一个集群,在完成集群的搭建后,今天给大家分享如何实现对应的业务功能模块,下面是今天的分享内容,目录如下所示: ...

  4. I-team 博客全文检索 Elasticsearch 实战

    一直觉得博客缺点东西,最近还是发现了,当博客慢慢多起来的时候想要找一篇之前写的博客很是麻烦,于是作为后端开发的楼主觉得自己动手丰衣足食,也就有了这次博客全文检索功能Elasticsearch实战,这里 ...

  5. ElasticSearch实战系列二: ElasticSearch的DSL语句使用教程---图文详解

    前言 在上一篇中介绍了ElasticSearch集群和kinaba的安装教程,本篇文章就来讲解下 ElasticSearch的DSL语句使用. ElasticSearch DSL 介绍 Elastic ...

  6. ElasticSearch实战系列三: ElasticSearch的JAVA API使用教程

    前言 在上一篇中介绍了ElasticSearch实战系列二: ElasticSearch的DSL语句使用教程---图文详解,本篇文章就来讲解下 ElasticSearch 6.x官方Java API的 ...

  7. ElasticSearch实战系列四: ElasticSearch理论知识介绍

    前言 在前几篇关于ElasticSearch的文章中,简单的讲了下有关ElasticSearch的一些使用,这篇文章讲一下有关 ElasticSearch的一些理论知识以及自己的一些见解. 虽然本人是 ...

  8. ElasticSearch实战系列五: ElasticSearch的聚合查询基础使用教程之度量(Metric)聚合

    Title:ElasticSearch实战系列四: ElasticSearch的聚合查询基础使用教程之度量(Metric)聚合 前言 在上上一篇中介绍了ElasticSearch实战系列三: Elas ...

  9. ElasticSearch实战系列六: Logstash快速入门和实战

    前言 本文主要介绍的是ELK日志系统中的Logstash快速入门和实战 ELK介绍 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是 ...

随机推荐

  1. Mysql insert声明优化

    1) 假设你同一时候从同一客户插入非常多行,使用多个值表的INSERT语句. 这比使用分开INSERT语句快(在一些情况中几倍).    Insert into test values(1,2),(1 ...

  2. 【Android 应用程序开发】 Fragment 详细说明

    笔者 : 汉书亮 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/38064191 本博客代码地址 : -- 单一 Fragmen ...

  3. HDU 4284 状压dp+spfa

    题意: 给定n个点 m条无向边 d元. 以下m行表示每条边 u<=>v 以及花费 w 以下top 以下top行 num c d 表示点标为num的城市 工资为c 健康证价格为d 目标是经过 ...

  4. RH033读书笔记(2)-Lab 3 Getting Help with Commands

    Lab 3 Getting Help with Commands Sequence 1: Using the Help Tools 1. man -f keyword whatis keyword l ...

  5. poj 2935 Basic Wall Maze

    是一个图论的基础搜索题- 没什么好说的就是搜索就好 主要是别把 代码写的太屎,错了不好找 #include<cstdio> #include<algorithm> #inclu ...

  6. linux---Vim命令集

    Vim命令集 命令历史 以:和/开头的命令都有历史纪录,能够首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗体中输入下面命令就可以 vim 直接启动vim vim filena ...

  7. WPF技术触屏上的应用系列(二): 嵌入百度地图、API调用及结合本地数据库在地图上进行自定义标点的实现

    原文:WPF技术触屏上的应用系列(二): 嵌入百度地图.API调用及结合本地数据库在地图上进行自定义标点的实现 去年某客户单位要做个大屏触屏应用,要对档案资源进行展示之用.客户端是Window7操作系 ...

  8. Lua中的weak表——weak table(转)

    弱表(weak table)是一个很有意思的东西,像C++/Java等语言是没有的.弱表的定义是:A weak table is a table whose elements are weak ref ...

  9. 低压电力采集平台DW710C与PC沟通

    集电极485接口RS-485与RS-232转换模块485端相连.RS-485与RS-232转换模块232通过串行电缆末端PC的232串口.我们通过书面沟通PC通信软件来实现双方并执行收购方案. 1)上 ...

  10. HDU 1815, POJ 2749 Building roads(2-sat)

    HDU 1815, POJ 2749 Building roads pid=1815" target="_blank" style="">题目链 ...