ELK( ElasticSearch+ Logstash+ Kibana)分布式日志系统部署文档
开始在公司实施的小应用,慢慢完善之~~~~~~~~文档制作 了好作运维同事之间的前期普及。。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
软件下载地址:
https://www.elastic.co/downloads
在实际部署中,根据服务器的性能配置,ELK可部署在同一个机器上,也可以分别安装在不同的机器上,只要能保证网络连通。但建议ElasticSearch和Kibana部署在同一个机器上,这样可以加快检索速度。
Shipper: 分布式部署在各应用服务器,收集并转发日志。
Broker:将日志集中收集、排队并转发。
Indexer:收集和转发数据至ElasticSearch。在ElasticSearch建立索引并存储日志数据。
Web interface:基于nginx的Kibana3 http访问接口,提供UI搜索ElasticSearch的数据。
一,ElasticSearch
1,解压elasticsearch-1.4.4.tar.gz
2,启动命令bin/elasticsearch
3,通过http://ip:9200/验证
二,Logstash
1,解压logstash-1.4.2.tar.gz
2.a 作为indexer文件的logstash.conf(样例,从REDIS里获取数据)
input {
redis {
host => '10.x.x.x'(REDIS的地址)
data_type => 'list'
port => "6379"
key => 'logstash:redis'
type => 'redis-input'
}
}
- output {
elasticsearch {
host => "10.x.x.x"(elasticsearch的地址)
}
}
2.b 作为shipper的logstash.conf配置(样例,将日志注入REDIS,可作过滤)
input {
file {
type => "app_ip_java_debug"
path => "/var/logs/tomcat/*.out"
}
}
#filter {
# grep {
# match => [ "@message", "freshclam" ]
# }
# }
- output {
redis {
host => '10.x.x.x'(送出到REDIS的地址)
data_type => 'list'
key => 'logstash:redis'
}
}
3,启动命令bin/logstash agent -f logstash.conf
三,Redis
1, 下载redis-2.8.18.tar.gz
2, 安装参考http://blog.csdn.net/testcs_dn/article/details/39756477
四,Kibana
1, 解压kibana-4.0.0-linux-x64.tar.gz
2, 编辑conf/kibana.yml文件(将elasticseach服务地址定位)
elasticsearch_url: "http://localhost:9200"
3, 启动命令bin/kibana
4, 通过http://ip:5601/验证
五,附录(网上其它类似配置和搜索条件)
以nginx访问日志为例,配置如下:
1)Shipper.conf
input {
file {
type => "nginx"
path => [ "/nginx/path/logs/access.log" ]
start_position => "beginning"
sincedb_path => "/some/place/sincedb_nginx"
}
}
filter {
grok {
match => [ "message", "%{IP:client} (%{USER:indent}|-) (%{USER:auth}|-) \[%{HTTPDATE:local_time}\] \"%{WORD:method} (?<request_url>%{URIPATH})(?<request_params>%{URIPARAM}) HTTP/%{NUMBER:protocol}\" %{NUMBER:status} %{NUMBER:bytes_sent} %{QS:http_referer} %{QS:user_agent}" ]
}
date {
locale => "en"
match => [ "local_time", "dd/MMM/YYYY:HH:mm:ss Z" ]
timezone => "Asia/Shanghai"
}
}
output {
redis {
host => "192.168.1.130"
port => 6379
data_type => "list"
key => "nginx"
}
}
2) Indexer.conf
input {
redis {
host => "192.168.1.130"
port => 6379
# these settings should match the output of the agent
data_type => "list"
key => "nginx"
codec => json
}
}
output {
elasticsearch_http {
host => "192.168.1.130"
index => "%{type}-%{+YYYY.MM.dd}"
index_type =>"%{type}"
flush_size => 1000
}
}
Kibana查询介绍
Kibana查询语法遵循Lucene的语法规范
常用的有以下几种
1)逻辑查询
操作符:AND(&&), OR(||), NOT(!)
优先级:! > && > ||
默认情况下是或操作,如:field:(hello world)匹配field值为hello或world的事件
2)范围查询
支持类型:date,数值,字符串
闭区间:[min to max] 等价于 >=min && <= max
开区间:{min to max} 等价于 >min && <max
半开闭区间: [min to max} {min to max]
NOTE: 对于date和数值类型,min或max可以使用*
3)子查询
使用(),如: field:(hello world),(hello world)为一子查询
4)通配符
?:匹配一个字符
*: 匹配0个或多个字符
NOTE:通配符会导致使用大量内存,从而降低响应速度,要慎用
5)保留字符转义
保留字符有:+ - && || ! ( ) { } [ ] ^ " ~ * ? : \ /
如果搜索条件中含有保留字符,使用\转义
ELK( ElasticSearch+ Logstash+ Kibana)分布式日志系统部署文档的更多相关文章
- 使用ELK(Elasticsearch + Logstash + Kibana) 搭建日志集中分析平台实践--转载
原文地址:https://wsgzao.github.io/post/elk/ 另外可以参考:https://www.digitalocean.com/community/tutorials/how- ...
- Centos6.5使用ELK(Elasticsearch + Logstash + Kibana) 搭建日志集中分析平台实践
Centos6.5安装Logstash ELK stack 日志管理系统 概述: 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的 ...
- CentOS 6.x ELK(Elasticsearch+Logstash+Kibana)
CentOS 6.x ELK(Elasticsearch+Logstash+Kibana) 前言 Elasticsearch + Logstash + Kibana(ELK)是一套开源的日志管理方案, ...
- 基于CentOS6.5或Ubuntu14.04下Suricata里搭配安装 ELK (elasticsearch, logstash, kibana)(图文详解)
前期博客 基于CentOS6.5下Suricata(一款高性能的网络IDS.IPS和网络安全监控引擎)的搭建(图文详解)(博主推荐) 基于Ubuntu14.04下Suricata(一款高性能的网络ID ...
- 键盘侠Linux干货| ELK(Elasticsearch + Logstash + Kibana) 搭建教程
前言 Elasticsearch + Logstash + Kibana(ELK)是一套开源的日志管理方案,分析网站的访问情况时我们一般会借助 Google / 百度 / CNZZ 等方式嵌入 JS ...
- ELk(Elasticsearch, Logstash, Kibana)的安装配置
目录 ELk(Elasticsearch, Logstash, Kibana)的安装配置 1. Elasticsearch的安装-官网 2. Kibana的安装配置-官网 3. Logstash的安装 ...
- ELK(elasticsearch+logstash+kibana)入门到熟练-从0开始搭建日志分析系统教程
#此文篇幅较长,涵盖了elk从搭建到运行的知识,看此文档,你需要会点linux,还要看得懂点正则表达式,还有一个聪明的大脑,如果你没有漏掉步骤的话,还搭建不起来elk,你来打我. ELK使用elast ...
- 【linux】【ELK】搭建Elasticsearch+Logstash+Kibana+Filebeat日志收集系统
前言 ELK是Elasticsearch.Logstash.Kibana的简称,这三者是核心套件,但并非全部. Elasticsearch是实时全文搜索和分析引擎,提供搜集.分析.存储数据三大功能:是 ...
- 【转】ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台
[转自]https://my.oschina.net/itblog/blog/547250 摘要: 前段时间研究的Log4j+Kafka中,有人建议把Kafka收集到的日志存放于ES(ElasticS ...
随机推荐
- J.Hilburn:高档男装市场颠覆者_网易财经
J.Hilburn:高档男装市场颠覆者_网易财经 J.Hilburn:高档男装市场颠覆者
- I - Caocao's Bridges - hdu 4738(求桥)
题意:曹操的船之间有一些桥连接,现在周瑜想把这些连接的船分成两部分,不过他只能炸毁一座桥,并且每座桥上有士兵看守,问,他最少需要排多少士兵去炸桥如果不能做到,输出‘-1’ 注意:此题有好几个坑,第一个 ...
- SCGHR 分析思路
-- 分析某个模块业务 a:添加表,登记表,历史表,信息表 --- (把表名搞清楚,再看具体的字段) 先搞清楚大概的数据流向,在着手具体的数据,大处布局,小处着手 b:表中的字段,以及各表直接传递什么 ...
- vbs自学备份
最小化所有窗口: Set obj = CreateObject("Shell.Application")obj.MinimizeAll 最小化某窗口: Const strTitle ...
- ActionScript通用开发框架
ActionScript 3(简称as)自2006年诞生以来,出现了一大批很优秀框架.就我的知识领域,运用包括pureMVC.pushButton Engine(组件框架).Robotlegs.Ash ...
- android 使用String.format("%.2f",67.876)自已定义语言(俄语、西班牙语)会把小数点变为逗号
市场人员反映公司的app使用系统设置俄语.西班牙语,double数据会把小数点变为逗号.调试一下,是自定义的语言时候(例如,俄语.西班牙语)转换String.format("%.2f&quo ...
- RDIFramework.NET平台代码生成器V1.0发布(提供下载)
RDIFramework.NET平台代码生成器V1.0发布(提供下载) RDIFramework.NET(.NET快速开发整合框架)框架做为信息化系统快速开发.整合的框架,其目的一至是给用户和开发 ...
- sql 处理以字符隔开的字符串(类似split)
sql 处理以字符隔开的字符串(类似split)的处理方法. CREATE PROCEDURE dbo.Vip_SendMails @userids varchar(MAX), ), ), @c va ...
- 自定义绘制View
Paint(画笔) Canvas(画布) The Canvas class holds the "draw" calls. To draw s ...
- Oracle Linux 挂载存储
#启动多路径multipathd服务 service multipathd restart #设置开机自动启动multipathd服务 chkconfig multipathd on #查看信息mul ...