ELKstack是Elasticsearch、Logstash、Kibana三个开源软件的组合。目前都在Elastic.co公司名下。
ELK是一套常用的开源日志监控和分析系统,包括一个分布式索引与搜索服务Elasticsearch,
一个管理日志和事件的工具logstash,和一个数据可视化服务Kibana
logstash_1.5.3                  负责日志的收集,处理和储存
elasticsearch-1.7.2            负责日志检索和分析
kibana-4.1.2-linux-x64.tar.gz  负责日志的可视化
redis-2.4.14                      DB以及日志传输的通道来处理

用一张图来表示他们之间的关系

此文以两个服务器为例来部署

服务器A:192.168.0.1  java elasticsearch redis kibana logstash(agent indexer)

服务器B:192.168.0.2  java logstash(agent)

首先安装服务器A相关软件

一、安装基础软件

yum -y install curl wget lrzsz axel

二、安装配置redis服务

1、安装tcl8.6.1

a) tar -xf tcl8.6.1-src.tar.gz --strip-components=1
b) cd tcl8.6.1/unix
c) ./configure --prefix=/usr/local
d) make
e) make test
f) make install
g) make install-private-headers
h) ln -v -sf tclsh8.6 /usr/bin/tclsh
i) chmod -v 755 /usr/lib/libtcl8.6.so(可选,并且如报找不到文件,没关系)

2、安装redis-3.0.2

wget http://download.redis.io/releases/redis-3.0.2.tar.gz 
tar xzf redis-3.0.2.tar.gz /usr/local/redis
cd redis-3.0.2
make MALLOC=libc
make test
make install 

2、配置redis

a) mkdir /etc/redis

b) mkdir /var/redis

c) cp utils/redis_init_script /etc/init.d/redis

d) vim /etc/init.d/redis
头部添加:

#chkconfig: 345 60 60

#!/bin/bash

e) mkdir /var/redis/6379

f) cp redis.conf /etc/redis/6379.conf

g) vim /etc/redis/6379.conf
        #设置daemonize为yes
        #设置pidfile为/var/run/redis_6379.pid
        #设置loglevel
        #设置logfile为/var/log/redis_6379.log
        #设置dir为/var/redis/6379

h) sysctl vm.overcommit_memory=1

i) chkconfig --add redis

j) chkconfig redis on

3、重启服务

service redis start/stop

4、查看进程和端口
1)查看进程

ps -ef |grep redis
root     31927 25099  0 18:26 pts/0    00:00:00 vi /etc/init.d/redis

2)查看端口

netstat -tupnl |grep redis
tcp        0      0 0.0.0.0:6379                0.0.0.0:*                   LISTEN      31966/redis-server
tcp        0      0 :::6379                     :::*                        LISTEN      31966/redis-server

三、安装java环境

1、安装包

yum -y list java* 
yum -y install openjdk-7-jdk

2、查看版本

java -version
java version "1.7.0_91"
OpenJDK Runtime Environment (rhel-2.6.2.2.el6_7-x86_64 u91-b00)
OpenJDK 64-Bit Server VM (build 24.91-b01, mixed mode)

四、安装elasticsearch

1、下载elasticsearch

wget https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.2.noarch.rpm

2、安装elasticsearch

rpm -ivh elasticsearch-1.7.2.noarch.rpm

3、配置
1)备份配置

cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak

2)修改配置

echo "network.bind_host: 192.168.0.1" >> /etc/elasticsearch/elasticsearch.yml

4、启动elasticsearch服务

/etc/init.d/elasticsearch start
/etc/init.d/elasticsearch stop

5、查看进程和端口

1)查看进程

ps -ef |grep java

2)查看端口

netstat -tupnl |grep java

6、测试

curl -X GET http://192.168.54.147:9200
{"status" : 200,"name" : "Miguel O'Hara","cluster_name" : "elasticsearch","version" : {"number" : "1.7.2","build_hash" : "e43676b1385b8125d647f593f7202acbd816e8ec","build_timestamp" : "2015-09-14T09:49:53Z","build_snapshot" : false,"lucene_version" : "4.10.4"},"tagline" : "You Know, for Search"
}

7、添加到开机启动

update-rc.d elasticsearch defaults
update-rc.d: using dependency based boot sequencing

五、安装logstash

1、下载logstash

wget  https://download.elastic.co/logstash/logstash/packages/centos/logstash-1.5.4-1.noarch.rpm

2、安装logstash

rpm -ivh logstash-1.5.4-1.noarch.rpm

3、配置(默认没有这个配置文件)

vim /etc/logstash/conf.d/logstash_indexer.conf
input {redis {host => "192.168.0.1"data_type => "list"key => "logstash:redis"type => "redis-input"port => "6379"}
}
output {elasticsearch {host => "192.168.0.1"}
}

4、启动服务

/etc/init.d/logstash start

5、使用jps -mlv或ps -ef来查看下进程

ps -ef|grep logst

6、设置开机启动

update-rc.d logstash defaults
update-rc.d: using dependency based boot sequencing

六、安装kibana(前端web)

1、下载

wget https://download.elastic.co/kibana/kibana/kibana-4.1.2-linux-x64.tar.gz

2、解压到指定目录

tar zxvf kibana-4.1.2-linux-x64.tar.gz -C /opt

3、创建日志目录

mkdir -p /opt/kibanalog

4、配置
1)备份配置

cp /opt/kibana-4.1.2-linux-x64/config/kibana.yml /opt/kibana-4.1.2-linux-x64/config/kibana.yml.bak

2)修改配置

sed -i 's!^elasticsearch_url: .*!elasticsearch_url: "http://192.168.0.1:9200"!g' /opt/kibana-4.1.2-linux-x64/config/kibana.yml
sed -i 's!^host: .*!host: "192.168.0.1"!g' /opt/kibana-4.1.2-linux-x64/config/kibana.yml

5、启动服务

cd  /opt/kibanalog && nohup /opt/kibana-4.1.2-linux-x64/bin/kibana &

6、查看进程和端口
1)查看进程

ps aux |grep kibana

2)查看端口

netstat -tupnl|grep 5601

7、在windows上访问

http://192.168.0.1:5601

8、设置开机启动

echo "cd /opt/kibanalog && nohup /opt/kibana-4.1.2-linux-x64/bin/kibana &" >> /etc/rc.local

到此服务器A的相关软件全部安装完成;

现在安装日志采集端的程序(服务器B),可以有多个

clientB安装配置logstash(agent)

1、安装java环境

yum -y list java* 
yum -y install openjdk-7-jdk

1、下载logstash

wget  https://download.elastic.co/logstash/logstash/packages/centos/logstash-1.5.4-1.noarch.rpm

2、安装logstash

rpm -ivh logstash-1.5.4-1.noarch.rpm

3、配置(默认没有这个配置文件)
1)配置logstash_agent

vim /etc/logstash/conf.d/logstash_agent.confinput {file {path => "/tmp/*.log"start_position => beginning}
}output {redis {host => "192.168.0.1"data_type => "list"key => "logstash:redis"}
}

5、启动服务

/etc/init.d/logstash start
logstash started.

6、使用jps -mlv或ps -ef来查看下进程

ps -ef|grep logst

7、设置开机启动

update-rc.d logstash defaults
update-rc.d: using dependency based boot sequencing

至此服务器B也安装配置完成,根据日志采集端的需要可以配置N个服务B

如何查看日志

1、查看redis日志

cat /var/log/redis/redis-server.log

2、查看elasticsearch日志

cat /var/log/elasticsearch/elasticsearch.log
tail -300f  /var/log/elasticsearch/elasticsearch.log

3、查看logstash日志

cat /var/log/logstash/logstash.errtail -30f /var/log/logstash/logstash.err

4、查看kibana日志

cat /opt/kibanalog/nohup.out
tail -30f /opt/kibanalog/nohup.out

错误处理

1)unable to fetch mapping, do you have indices matching the pattem?

kibana 报这个错误就是因为没有从logstash 过来任何数据一般检查一下数据传输

Elasticsearch、Logstash、Kibana搭建统一日志分析平台相关推荐

  1. ELK(ElasticSearch+Logstash+ Kibana)搭建实时日志分析平台

    来源:http://www.cnblogs.com/zclzhao/p/5749736.html 一.简介 ELK 由三部分组成elasticsearch.logstash.kibana,elasti ...

  2. ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台

    ELK平台介绍 在搜索ELK资料的时候,发现这篇文章比较好,于是摘抄一小段: 以下内容来自: http://baidu.blog.51cto.com/71938/1676798 日志主要包括系统日志. ...

  3. ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平

    ELK平台介绍 在搜索ELK资料的时候,发现这篇文章比较好,于是摘抄一小段: 以下内容来自:http://baidu.blog.51cto.com/71938/1676798 日志主要包括系统日志.应 ...

  4. 使用ELK搭建统一日志分析平台

    使用ELK(Logstash+ElasticSearch+Kibana)搭建统一日志分析平台 一.背景分析 为了应付我们日益复杂的业务需求,系统设计趋近模块化,每个模块各司其职由不同人员开发,打印的日 ...

  5. ELK6.0部署:Elasticsearch+Logstash+Kibana搭建分布式日志平台

    一.前言 1.ELK简介 ELK是Elasticsearch+Logstash+Kibana的简称 ElasticSearch是一个基于Lucene的分布式全文搜索引擎,提供 RESTful API进 ...

  6. 搭建ELK日志分析平台(下)—— 搭建kibana和logstash服务器

    27.6 安装kibana 27.7 安装logstash 27.8 配置logstash 27.9 kibana上查看日志 27.10 收集nginx日志 27.11 使用beats采集日志 本文是 ...

  7. 搭建ELK日志分析平台(上)—— ELK介绍及搭建 Elasticsearch 分布式集群

    笔记内容:搭建ELK日志分析平台(上)-- ELK介绍及搭建 Elasticsearch 分布式集群 笔记日期:2018-03-02 27.1 ELK介绍 27.2 ELK安装准备工作 27.3 安装 ...

  8. 使用elk+redis搭建nginx日志分析平台(引)

    http://www.cnblogs.com/yjf512/p/4199105.html elk+redis 搭建nginx日志分析平台 logstash,elasticsearch,kibana 怎 ...

  9. ELK+redis搭建nginx日志分析平台

    ELK+redis搭建nginx日志分析平台 发表于 2015-08-19   |   分类于 Linux/Unix   |   ELK简介 ELKStack即Elasticsearch + Logs ...

最新文章

  1. 软件架构设计(第2版)——程序员向架构师转型必备
  2. php阻止form提交表单提交,防止表单提交时刷新页面-阻止form表单的默认提交行为...
  3. 初识linux之给我一个家
  4. python 数据分析排名_2018年上半年热门编程语言排行榜
  5. C语言(CED)编写程序,求sum=1*1*1+2*2*2+3*3*3+4*4*4+5*5*5+····+n*n*n
  6. 《Spark核心技术与高级应用》——3.2节构建Spark的开发环境
  7. python 输入密码不显示_Python开发实例:隐藏输入密码时屏幕回显
  8. 跨境电商独立站门槛高,为什么还有无数人挤破头想入坑!
  9. 【iOS QR Code】集成ZXingWidget(XCode Version 4.5.2,iOS 6.0 SDK)
  10. 使用requests通过代码实现接口测试自动化
  11. 2019测试指南-web应用程序安全测试(二)识别应用程序入口点
  12. unity Scene窗口的任意比例放大和缩小
  13. 做游戏代理要找游戏源码平台
  14. 重归理性 国内SOA平台期待价值提升
  15. 汽车汽油电子喷射系统
  16. 考研常识-总结1(硕士、专硕;非全日制、全日制)
  17. Appium + IOS 自动化环境搭建教程(实践+总结+踩坑)
  18. 性能测试第七课--用户定义变量用户参数
  19. 联想小新 Pad Pro 12.6 怎么样
  20. 服务器之间的无线通讯,无线通讯技术之间的比较 - 常见无线通信(数据)传输技术 你知道哪些...

热门文章

  1. s5 android5.0内存泄漏,android-最初从位图泄漏了未引用的byte [],但被回收的()导致内存泄漏(直到活动停止)...
  2. java数据结构教程_Java数据结构
  3. HTML5column属性布局页脚,利用column多列属性调整页面文字列布局
  4. SpringBoot--Druid多数据源配置
  5. 第十五届全国大学生智能车东北赛区成绩
  6. 如何让Window对话窗口重新获得输入焦点
  7. 直线轨道上声音延迟信号分析
  8. 基于i.MX RT电磁智能车AI算法的一些讨论
  9. python 多线程 多进程 zmq_研二硕, Python +pyqt,多进程问题求助
  10. Linux下的权限掩码umask,Linux下的权限掩码umask