Linux环境下ELK环境搭建,以及碰到的问题

 

   .ELK

ELK由ElasticSearch(ES)、Logstash和Kiabana三个开源工具组成。

ES是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

Logstash是一个完全开源的工具,可以对日志进行收集、分析、并将其存储供以后使用。

kibana也是一个开源和免费的工具,他Kibana可以为Logstash和ES提供的日志分析友好的Web界面,可以帮助您汇总、分析和搜索重要数据日志。

可以在ELK官网 https://www.elastic.co/下载最新版本的工具安装包,Windows环境选择后缀为zip格式的下载。如遇下载速度慢或下载中途停止,可以采用VPN代理下载或者云服务器下载。


windows环境搭建时参考了这篇微博:http://blog.csdn.net/pilihaotian/article/details/52452010


后因为公司需要,选择在linux环境下搭建ELK


一、准备

   查看linux服务器的jdk版本,ELK支持1.8以上版本

   java -version 命令查看

   tips:如linux自带的openjdk为1.7,可在官网上下载最新版的jdk安装http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

            1.选择合适的版本

           

           2.选择要安装java的位置

   3.解压文件 如:tar -xzvf 文件名.tar.gz

   4.配置环境变量,打开 /etc/profile   vim /etc/profile,键盘i键切换insert模式

     在文件末尾添加以下内容

    

      按“ESC"退出insert模式,":wq"退出并保存   

     命令:source /etc/profile,保存刚设置的环境变量 

   5.查看jdk版本:java -version

二.下载所需的ELK版本

  https://www.elastic.co/

  elasticsearch和logstash版本最好一致,kibana和es的版本也需对应起来

  我用的版本

  elasticsearch:2.3.5

  logstash:2.3.4

  kibana:4.5.4

  下载地址:http://pan.baidu.com/s/1jIdrxrS

三.安装

  三个软件的安装都很简单

 1. 以elasticsearch为例

  我下载的是zip

   unzip 文件名.zip

   解压文件后进入bin文件夹,命令:./elasticsearch 即可运行elasticsearch服务

   在浏览器输入http://localhost:9200,出现以下结果,则表示安装成功

  

  命令:crtl+c,关闭es服务

   2.head插件

    在plugins文件夹下新建一个文件夹,名为head

    将解压缩后的文件夹放在head文件夹下

    重新启动es服务,输入网址   http://localhost:9200/_plugin/head/ 

     一般会想要以ip地址访问,只要改个配置文件就好啦

     修改config下面的elasticsearch.yml

       networkhost:0.0.0.0

       即可以同时以ip地址和localhost访问

    tips:检测elasticsearch的连通性

        打开另一个终端,输入 curl -X GET http://localhost:9200 

3.安装logstash

    同上,解压后运行即可

    不同的是logstash需要配置conf文件

     如:

    

input {
    stdin{} } output { elasticsearch { action => "index" # 在ES上操作index hosts => "localhost:9200" # ES地址 index => "logstash--%{+YYYY-MM}" # 索引名 }

     input中可以指定不同的输入端,如通过file{}将采集的日志输出到elasticsearch中。

   命令:

bin/logstash -f logstash_agent.conf
   启动成功后,可在浏览器看到采集的日志信息。


四.搭建时碰到的问题和解决方法

  1.logstash安装比较顺利

  在安装elasticsearch时,不能以root用户启动服务,只能给非root用户赋权限后再启动服务。

  2.版本选择

   一开始安装时,下载的是官网的最新版本5.2.2,jdk也安装的是官网要求的1.8.0121

   然而启动时一直报错 error,Exception in thread "main" java.lang.UnsupportedClassVersionError: org/elasticsearch/bootstrap/Elasticsearch : Unsupported major.minor version 52.0

   版本更换到5.2.0也未解决问题

   建议安装时,不要选取最新版本,因为你永远不知道它下一步会给你带来什么样的大坑~~~

   elk的更新很频繁,建议使用较稳定的版本。

 3.logstash默认的读取file方式是单行数据,但服务器的日常日志信息通常是一大段

   可以修改.conf文件

   如:codec => multiline {
            pattern => "^\["
            negate => true
            what => "previous"
        }

      在pattern中写好符合的正则表达式,就能看到符合预期的日志信息展示。




   写给自己,小白一枚,在搭建ELK环境时对linux命令一问三不知

   在尝试搭建的过程中,一步步百度尝试,虽然费时间,但结果是令人满意的。


    

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值