应用场景:ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用、易用的监控架构,

     很多公司利用它来搭建可视化的海量日志分析平台。

              官网下载地址https://www.elastic.co/downloads

      Elasticsearch:

       是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。

       Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。

       设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

     Logstash:

       用于管理日志和事件的工具,你可以用它去收集日志、转换日志、解析日志并将他们作为数据提供给其它模块调用,例如搜索、存储等。

     Kibana:

       是一个优秀的前端日志展示框架,它可以非常详细的将日志转化为各种图表,为用户提供强大的数据可视化支持。

    

     Filebeat:类似于 “agent” 装在被监控端上(数据源),用来实时收集日志文件数据。

     

                              【最简单的架构图】

安装环境

       

安装步骤

    前提:已经装好 Java 8(官方建议5.4版本最至少Java 8 或以上):

    

  1导入官方PGP-Key

     ~]#rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

  

  2建立下载rpm包的repo   

     ~]# vim /etc/yum.repos.d/elk.repo

     [elasticsearch-5.x]

     name=Elasticsearch repository for 5.x packages

     baseurl=https://artifacts.elastic.co/packages/5.x/yum

     gpgcheck=1

     gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch

     enabled=1

     autorefresh=1

     type=rpm-md

    保存后退出;

  3安装elasticsearch包

     ~]#yum install elasticsearch

  

  4编辑配置文件

     ~]# vim /etc/elasticsearch/elasticsearch.yml

    

     

   保存,退出;

  

  5启动服务

     ~]# systemctl daemon-reload

     ~]# systemctl start elasticsearch

     ~]# systemctl status elasticsearch

     

      ~]#systemctl enable elasticsearch   //加入开机启动

  6查看端口状态

     ~]#ss -tnl

     

    至此,节点es-1配置完成。

  7.配置集群中的另外节点es-2 和 es-3

   配置同es-1,修改一下配置文件里的节点名和地址即可,不再赘述。   

  8es集群的相关查询

    注意:Elasticsearch 5.x版本不再支持相关插件:如 “elasticsearch-head”...,解释可以访问官网,实在需要,可以独立运行(此处跳过)

       Elasticseach 1.x  2.x仍可支持,请查看:http://mobz.github.io/elasticsearch-head/

   查询集群状态方法①

     ~]# curl -XGET 'http://192.168.1.21:9200/_cat/nodes'   //随意一台es中可执行,也可更换其中的 ip(这里可22或23)

     

      ~]# curl -XGET 'http://192.168.1.21:9200/_cat/nodes?v'   //同上在后面添加 ?v ,表示详细显示

     

   查询集群状态方法②

     ~]# curl -XGET 'http://192.168.1.21:9200/_cluster/state/nodes?pretty'

     

   查询集群中的master

     ~]# curl -XGET 'http://192.168.1.21:9200/_cluster/state/master_node?pretty'

    或

     ~]# curl -XGET 'http://192.168.1.21:9200/_cat/master?v'

     

   查询集群的健康状态

     ~]# curl -XGET 'http://192.168.1.21:9200/_cat/health?v'

    或

     ~]# curl -XGET 'http://192.168.1.21:9200/_cluster/health?pretty'

     

centos7搭建ELK Cluster集群日志分析平台(二):Logstash

 

续  centos7搭建ELK Cluster集群日志分析平台(一)

已经安装完Elasticsearch 5.4 集群.

安装Logstash步骤

  1安装Java 8 

    官方说明:需要安装Java 8 ,不支持Java 9...  //自行安装,略过

    

  2安装Logstash

    可以同elasticsearch一样建立repo文件通过yum安装,也可以去官网直接下载rpm包进行本地安装:

      ~]# rpm -ivh logstash-5.4.0.rpm   //这里直接下载好进行本地安装

  3添加配置文件logstash.conf

     ~]# cd /etc/logstash/conf.d/   //切换目录

     conf.d]# vim logstash.conf     //新增配置文件logstash.conf,文件名可自己定义     

    示例内容如下: 
      input {
      beats {              //后面将用到:filebeat作为agent
      port => 5044          //开启5044端口监听
      }
      }
                         //注: 此处没有添加过滤“filter”段,只添加了inputoutput
      output {
      elasticsearch {
      hosts => "IP:9200"      //IP换成某台elasticsearch的地址
      manage_template => false
      index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
      document_type => "%{[@metadata][type]}"
      }
      }

    保存,退出;

  4启动logstash服务

     conf.d]# systemctl start logstash

    查看状态:

     conf.d]# ss -tnl   //存在延迟可能,多等些时间

     

至此,Logstash安装配置完成。    

centos7搭建ELK Cluster集群日志分析平台(三):Kibana

 

续  centos7搭建ELK Cluster集群日志分析平台(一)

  centos7搭建ELK Cluster集群日志分析平台(二)

已经安装好elasticsearch 5.4集群和logstash 5.4

安装kibana步骤

  1.下载安装Kibana

     ~]#wget https://artifacts.elastic.co/downloads/kibana/kibana-5.4.0-x86_64.rpm

    如果链接失效,官网下载:https://www.elastic.co/downloads

     ~]# rpm -ivh kibana-5.4.0-x86_64.rpm   //本地安装rpm包

  2编辑配置文件

     ~]#vim /etc/kibana/kibana.yml     //变更如下

     

     

    保存后,退出;

  

  3启动kibana

     ~]# systemctl start kibana     //启动

     ~]# systemctl enable kibana   //加入开机启动

      ~]# ss -tnl

     

  4添加Nginx反向代理

     ~]# yum -y install epel-release   //安装epel源,从epel源中获取Nginx

     ~]# yum -y install nginx httpd-tools   //yum安装Nginx,和httpd用户认证工具

     

  5更该配置文件

    ①删除或注释掉文件/etc/nginx/nginx.conf中的一段server{}

     ~]#vim /etc/nginx/nginx.conf

     

    保存,退出;

    ②新增kibana.conf文件

     ~]# cd /etc/nginx/conf.d/   //在该配置目录下新增

     conf.d]# vim kibana.conf      //内容如下

    server {
        listen 80;         server_name kibana;         auth_basic "Restricted Access";
        auth_basic_user_file /etc/nginx/kibana-user;  //:该认证文件后续马上创建           location / {
            proxy_pass http://192.168.1.25:5601;    //代理的kibana地址
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
    }

    保存,退出;

  

  6生成页面登录用户认证文件

     ~]# htpasswd -cm /etc/nginx/kibana-user adrian    //生成文件kibana-user,并添加用户adrian

      

  7启动Nginx

     ~]# nginx -t

     

     ~]# systemctl start nginx

     ~]# systemctl enable nginx

     

  8浏览器登录kibana

    

    登录页面展示:

    

至此,Kibana安装配置完成

centos7搭建ELK Cluster集群日志分析平台(四):Fliebeat-简单测试

 

续之前安装好的ELK集群

  各主机:es-1 ~ es-3 :192.168.1.21/22/23

      logstash:  192.168.1.24

      kibana:   192.168.1.25

  测试机client:   192.168.1.26

测试机上安装并启动filebeat

  1下载filebeat

     ~]# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.4.0-linux-x86_64.tar.gz

    这里下载测试使用的是tar包,也可以自行下载安装rpm包,原理一样:修改配置文件和启动服务即可。

  2修改配置文件

     ~]#tar zxvf filebeat-5.4.0-linux-x86_64.tar.gz    //解压tar包

     ~]# cd filebeat-5.4.0-linux-x86_64   //进入解压后的文件夹,如果是rpm包安装,寻找/etc/filebeat/目录

     ~]vim filebeat.yml   //编辑配置文件

     

     

    保存,退出;

  

  3启动filebeat服务

     filebeat-5.4.0-linux-x86_64]# ./filebeat -e -c filebeat.yml     //继续在当前目录下执行启动命令

    如果是rpm包安装的话,直接通过 ~]#systemctl start filebeat 启动即可。

  

  4浏览器登录Kibana

    ① 栏如下操作

    

    

    ② 创建好之后,再点击左侧栏的

     

    ③ 尝试搜索

     

    

  至此ELK简单测试完成

centos7搭建ELK Cluster集群日志分析平台的更多相关文章

  1. centos7搭建ELK Cluster集群日志分析平台(四):Fliebeat-简单测试

    续之前安装好的ELK集群 各主机:es-1 ~ es-3 :192.168.1.21/22/23 logstash: 192.168.1.24 kibana: 192.168.1.25 测试机:cli ...

  2. centos7搭建ELK Cluster集群日志分析平台(三):Kibana

    续  centos7搭建ELK Cluster集群日志分析平台(一) 续  centos7搭建ELK Cluster集群日志分析平台(二) 已经安装好elasticsearch 5.4集群和logst ...

  3. centos7搭建ELK Cluster集群日志分析平台(二):Logstash

    续  centos7搭建ELK Cluster集群日志分析平台(一) 已经安装完Elasticsearch 5.4 集群. 安装Logstash步骤 . 安装Java 8 官方说明:需要安装Java ...

  4. centos7搭建ELK Cluster集群日志分析平台(一):Elasticsearch

    应用场景: ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用.易用的监控架构, 很多公司利用它来搭建可视化的海量日志分析平 ...

  5. ELK+Kafka集群日志分析系统

    ELK+Kafka集群分析系统部署 因为是自己本地写好的word文档复制进来的.格式有些出入还望体谅.如有错误请回复.谢谢! 一. 系统介绍 2 二. 版本说明 3 三. 服务部署 3 1) JDK部 ...

  6. 集中式日志分析平台 - ELK Stack - 安全解决方案 X-Pack

    大数据之心 关注  0.6 2017.02.22 15:36* 字数 2158 阅读 16457评论 7喜欢 9 简介 X-Pack 已经作为 Elastic 公司单独的产品线,前身是 Shield, ...

  7. 【精】搭建redis cluster集群,JedisCluster带密码访问【解决当中各种坑】!

    转: [精]搭建redis cluster集群,JedisCluster带密码访问[解决当中各种坑]! 2017年05月09日 00:13:18 冉椿林博客 阅读数:18208  版权声明:本文为博主 ...

  8. 安装logstash+kibana+elasticsearch+redis搭建集中式日志分析平台

    安装logstash+kibana+elasticsearch+redis搭建集中式日志分析平台 2014-01-16 19:40:57|  分类: logstash |  标签:logstash   ...

  9. centos7搭建伪分布式集群

    centos7搭建伪分布式集群 需要 centos7虚拟机一台: jdk-linux安装包一个 hadoop-2.x安装包1个(推荐2.7.x) 一.设置虚拟机网络为静态IP(最好设成静态,为之后编程 ...

随机推荐

  1. HDU-6356 Glad You Came (线段树)

    题目链接:Glad You Came 题意:数组有n个数初始为0,m个询问,每个询问给出L R V(按照给定函数生成),将数组的下标L到R的数与V取较大值,最后输出给定的公式结果. 题意:哇~打比赛的 ...

  2. python语言程序设计2

    1, 代码高亮色彩体系 2, 缩进,一行代码开始前的空白区域,表达程序的格式框架 单层缩进,多层缩进 特点 概念,缩进是语法的一部分,缩进不正确的话可能会导致程序运行错误 用处(意义),是表达代码间包 ...

  3. win7笔记本VirtualBox安装黑苹果MacOS 10.13

    环境 时间:2018.04.09,没有指明时间的教程都是耍流氓 笔记本:某州优雅A460P-i7G D2,4G内存,Intel Core i7-2670QM四核八线程(老笔记本勉强能用),ssd硬盘, ...

  4. npm install —— 从一个简单例子,看本地安装与全局安装的区别

    npm的包安装分为本地安装(local).全局安装(global)两种,从敲的命令行来看,差别只是有没有-g而已,比如 npm install grunt # 本地安装 npm install -g ...

  5. DevOps on AWS之Cloudformation概念介绍篇

    Cloudformation的相关概念 AWS cloudformation是一项典型的(IAC)基础架构即代码服务..通过编写模板对亚马逊云服务的资源进行调用和编排.借助cloudformation ...

  6. TCP三路握手,本质是一个通信原理相关的问题

    在通信系统中,最基本的信息的传递都需要两步,发送方发送的消息和对方的回复确认:A->B Send, B->A Reply(ACK).如果多接触一下其他行业的通信流程和规范,例如航空.铁路调 ...

  7. PAT甲题题解-1007. Maximum Subsequence Sum (25)-求最大子区间和

    题意:给出n个数,求最大连续的子区间和,并且输出该区间的第一个和最后一个数. 如果所有数都小于0,那么则输出0,第一个数和最后一个数. 看数据k的范围,就知道肯定不能两层for循环来求区间和,O(n^ ...

  8. PAT甲题题解-1046. Shortest Distance (20)-做了一个假的最短路,水

    一开始以为是最短路,结果是给你一个环,让你求环上两点之间的距离...那还做毛线 然而还是得做毛线 #include <iostream> #include <cstdio> # ...

  9. 词频统计 SPEC 20160911

    本文档随时可能修改,并且没有另行通知. 请确保每一次在开始修改你的代码前,读标题中的日期,如果晚于你上次阅读, 请重读一次. 老五在寝室吹牛他熟读过<鲁滨逊漂流记>,在女生面前吹牛热爱&l ...

  10. 关于增强的for循环

    增强的for循环例子:public static<AnyType> void print(Collection<AnyType> coll){ for(AnyType item ...