设为首页 收藏本站
查看: 1055|回复: 0

[经验分享] Logstash+ElasticSearch+Kibana4日志分析系统安装详解

[复制链接]

尚未签到

发表于 2019-1-29 10:14:38 | 显示全部楼层 |阅读模式
ELK日志分析系统

  
  环境:centos6.5
  准备好ELK三个安装包,去官网下载最新版

  

1、安装jdk
  网上有的教程叫下载oracle的jdk,其实没必要,系统自带的openjdk就行了,不过需要先
  看下版本,1.7是不行的,要1.8以上

  

  
  升级到1.8
  先删除1.7版本
  # yum remove -y java-1.7.0-openjdk
  
  然后安装1.8版本,看到下面信息即可

  
  2、安装elasticsearch
  下载安装包(tar)https://www.elastic.co/downloads/elasticsearch
  
  直接解压到/usr/local下面
  tar -xzvf elasticsearch-1.5.2.tar.gz -C /usr/local
  
  加载模块
  execstack -c /usr/local/elasticsearch-1.5.2/lib/sigar/libsigar-x86-linux.so
  
  启动
  /usr/local/elasticsearch-1.5.2/bin/elasticsearch -d
  
  
  检查启动状态
  [root@nginx ~]# curl 127.0.0.1:9200
  

  
  说明启动成功
  
  如果你看到报错信息如下:
  
  [2015-05-13 16:18:01,985][WARN ][bootstrap                ] jvm uses the client vm, make sure to run `java` with the server vm for best performance by adding `-server` to the command line
  [2015-05-13 16:18:01,992][ERROR][bootstrap                ] Exception
  java.lang.RuntimeException: Java version: 1.7.0_45 suffers from critical bug https://bugs.openjdk.java.net/browse/JDK-8024830 which can cause data corruption.
  Please upgrade the JVM, see http://www.elastic.co/guide/en/elasticsearch/reference/current/_installation.html for current recommendations.
  If you absolutely cannot upgrade, please add -XX:-UseSuperWord to the JVM_OPTS environment variable.
  Upgrading is preferred, this workaround will result in degraded performance.
  
  那我只能说,扇脸,用力,叫你不听我的,叫你不听我的!!!
  解决办法:
  Yum install -y java-1.8.0-openjdk
  

  3、安装redis,下载2.8版本的
  下载redishttp://redis.io/  
  如果下载2.8以上版本,依赖解决起来会麻烦很多
  
  Wget https://github.com/antirez/redis/archive/2.8.20.tar.gz
  
  安装依赖tcl(别问我这个tcl跟卖家电的TCL有什么关系,我母鸡啊)
  
  # yum install -y tcl
  
  如果你想作死不装TCL的话,那你就会看到不一样的效果,看下图~~~

  
  编译安装
  make
  make test
     make install
  cp redis.conf /etc/
  配置redis
  # vim /usr/local/redis/etc/redis.conf
  daemonize yes#设置后台运行
  启动redis
  # redis-server /redis.conf

  说明启动成功
  
  
  
  4、安装logstash
直接解压过去就行了
[root@nginx elk]# tar -xzvf logstash-1.4.2.tar.gz -C /usr/local/

创建日志推送配置文件
[root@nginx elk]# mkdir /usr/local/logstash-1.4.2/etc

[root@nginx elk]# vim /usr/local/logstash-1.4.2/etc/logstash_agent.conf

input {
        file {
                type => "nginx_access log"#这里定义的是日志文件名
                path => ["/usr/local/nginx/logs/host.access.log"]#这里定义的是日志文件路径
        }
}
output {
        redis {
                host => "localhost"#这里定义redis主机地址,这里是本机
                data_type => "list"
                key => "logstash:redis"
        }
}

创建indexer配置文件
[root@nginx elk]# vim /usr/local/logstash-1.4.2/etc/logstash_indexer.conf

input {
        redis {
                host => "localhost"
                data_type => "list"
                key => "logstash:redis"
                type => "redis-input"
        }
}
filter {
        grok {
                type => "nginx_access"
                match => [
                        "message", "%{IPORHOST:http_host} %{IPORHOST:client_ip} \[%{HTTPDATE:timestamp}\] \"(?:%{WORD:http_verb} %{NOTSPACE:http_request}(?: HTTP/%{NUMBER:http_version})?|%{DATA:raw_http_request})\" %{NUMBER:http_status_code} (?:%{NUMBER:bytes_read}|-) %{QS:referrer} %{QS:agent} %{NUMBER:time_duration:float} %{NUMBER:time_backend_response:float}",
                        "message", "%{IPORHOST:http_host} %{IPORHOST:client_ip} \[%{HTTPDATE:timestamp}\] \"(?:%{WORD:http_verb} %{NOTSPACE:http_request}(?: HTTP/%{NUMBER:http_version})?|%{DATA:raw_http_request})\" %{NUMBER:http_status_code} (?:%{NUMBER:bytes_read}|-) %{QS:referrer} %{QS:agent} %{NUMBER:time_duration:float}"
                ]
        }
}
output {
        elasticsearch {
                embedded => false
                protocol => "http"
                host => "localhost"
                port => "9200"
        }
}
启动logsyash

nohup /usr/local/logstash-1.4.2/bin/logstash -f /usr/local/logstash-1.4.2/etc/logstash_agent.conf &

nohup /usr/local/logstash-1.4.2/bin/logstash -f /usr/local/logstash-1.4.2/etc/logstash_indexer.conf &





  5、安装kibana
同样不需要安装,解压就能用
[root@nginx elk]# tar -xzf kibana-4.0.2-linux-x86.tar.gz -C /usr/local/
  
  启动
  
  [root@nginx elk]# nohup /usr/local/kibana-4.0.2-linux-x86/bin/kibana &
  
  
  然后打开浏览器输入IP加端口5601即可访问

  
  进来之后他要你创建一个默认索引,可是怎么办没有create啊,下面会灰色的,是不是我做错了,好紧张,好害怕~~~~~~~~
  
  好吧,其实都不是,这个如果你装完kibana你那个日志文件要是一直没有新的日志产生呢这里就一直是灰的,这个时候你只需要去访问一下你的网站,然后就行了
  (当时我碰到这个问题的时候,因为用的虚拟机做的,卡了几个小时啊坑爹啊)
  
  
  
  
然后你就可以看到下面的情况了,选择timestamp,点击create创建,完成


搭建成功



  6、客户机配置
  
  上面我们是获取本机的日志而已,其他客户机怎么配置呢?
  客户机只需要安装logstash
解压
[root@nginx elk]# tar -xzvf logstash-1.4.2.tar.gz -C /usr/local/

创建日志推送配置文件
[root@nginx elk]# mkdir /usr/local/logstash-1.4.2/etc

[root@nginx elk]# vim /usr/local/logstash-1.4.2/etc/logstash_agent.conf

input {
        file {
                type => "nginx_access log"#这里定义的是日志文件名
                path => ["/usr/local/nginx/logs/host.access.log"]#这里定义的是日志文件路径
        }
}
output {
        redis {
                host => "10.1.1.231"#这里定义redis主机地址
                data_type => "list"
                key => "logstash:redis"
        }
}

启动logsyash

nohup /usr/local/logstash-1.4.2/bin/logstash -f /usr/local/logstash-1.4.2/etc/logstash_agent.conf &
  
  完成!!!!
  

  
  参考资料:http://kibana.logstash.es/content/
  

  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-669050-1-1.html 上篇帖子: ElasticSearch Groovy脚本远程代码执行漏洞 下篇帖子: 针对Elasticsearch的开源分析及可视化平台——Kibana
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表