elk日志平台搭建小记
最近抽出点时间,搭建了新版本的elk日志平台
elastaicsearch 和logstash,kibana和filebeat都是5.6版本的
中间使用redis做缓存,版本为3.2
使用的系统为centos 7.4
JAVA环境首先要安装和设定好
全部在官网下载RPM安装包,直接安装就可以使用
下面说下配置,和重要的地方
1,elasticsearch
配置方面,并不麻烦,单机的话用以下配置就可以跑起来
配置文件是/etc/elasticsearch/elasticsearch.yml
配置如下,注释的就不再写了
cluster.name: elasticsearch
node.name: node-
path.data: /data/elasticsearch/data/
path.logs: /data/elasticsearch/logs/
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port:
discovery.zen.ping.unicast.hosts: ["172.17.3.14"]
discovery.zen.minimum_master_nodes:
action.destructive_requires_name: true
红色部分设置为false吧,否则无法启动。
2, logstash
安装完后默认配置文件路径在/etc/logstash/下,一般自定义配置文件放在conf.d下,默认的配置文件不要动
我安装logstash后出现一点问题,就是启动时候提示找不到JAVA的执行命令,我已经做了全局声明,但是还是不行,现在说下解决方法
先卸载掉logstash,然后把java的执行命令软链接到/usr/bin下面
然后再重新安装,然后生成启动脚本,在centos7下面是这样生成的
/usr/share/logstash/bin/system-install /etc/logstash/startup.options systemd
在centos6下面是这样生成的
/usr/share/logstash/bin/system-install /etc/logstash/startup.options sysv
然后我们就可以启动logstash了
我们可以把系统的messages日志输出到elasticsearch里面。配置如下
input {
file {
type => "flow"
path => "/var/log/messages"
}
}
output {
stdout {
codec => rubydebug
}
if [type] == "flow" {
elasticsearch {
index => "flows-%{+YYYY.MM.dd}"
hosts => "172.17.3.14:9200"
}
}
}
需要注意的是,input和output的type的值要一致
红色部分是定向到标准输出,为了调试方便,正式用的话可以不用。
通过redis,获取数据,并把数据输出到elasticsearch里
input {
redis {
host => "172.17.3.14"
port => ""
type => "nginx_access"
db => ""
data_type => "list"
key => "ucenterfront"
}
}
output {
stdout {
codec => rubydebug
}
if [type] == "nginx_access" {
elasticsearch {
hosts => "172.17.3.14:9200"
index => "ucenter-front-%{+YYYY.MM.dd}"
}
}
}
需要注意的是:input里面的key的值要和filebeat里定义的key值一致
type上下自然也要一致,out定义的index的值的红色部分可以和上面的key的值一致,也可以不一致,这个没有多大影响,在kibana建立索引时候,填index的值就可以。
另外特别需要注意的,input里面的type的值一定要与filebeat里的document_type的值一致,我就刚开始不一致,logstash里就没有数据。
其他的就没有特别需要注意的了,默认就行。
3,filebeat的安装
安装后配置文件在/etc/filebeat下面
filebeat.prospectors:
- input_type: log
paths:
- /data/logs/nginx/*.log
document_type: nginx_access
scan_frequency: 1s
#----------------------------- Redis output --------------------------------
output.redis:
hosts: ["172.17.3.14:6379"]
key: "ucenterfront"
db: 0
db_topology: 1
timeout: 5
reconnect_interval: 1
上面的document_type要和logstash里的type一致
修改发送时间间隔为1秒
4,安装kibana
直接安装,配置文件在/etc/kibana/kibana.yml
server.host: "172.17.3.14"
elasticsearch.url: "http://localhost:9200"
配置很简单,监听那个地址就在server后面写那个地址
下面的那个是elasticsearch的地址
至此,搭建完毕。
elk日志平台搭建小记的更多相关文章
- 基于Docker的ELK日志平台搭建
1.安装Docker Docker可简单理解为一个轻量级的虚拟机.Docker对进程进行封装隔离,隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器.Docker和传统虚拟化方式的不同.传统虚拟 ...
- ELK日志平台搭建
功能: 1. 查看当天的服务器日志信息(要求:在出现警告甚至警告级别以上的都要查询)2. 能够查看服务器的所有用户的操作日志3. 能够查询nginx服务器采集的日志(kibana作图)4. 查看tom ...
- Springboot项目使用aop切面保存详细日志到ELK日志平台
上一篇讲过了将Springboot项目中logback日志插入到ELK日志平台,它只是个示例.这一篇来看一下实际使用中,我们应该怎样通过aop切面,拦截所有请求日志插入到ELK日志系统.同时,由于往往 ...
- ELK 日志平台构建
elastic中文社区 https://elasticsearch.cn/ 完整参考 ELK实时日志分析平台环境部署--完整记录 https://www.cnblogs.com/kevingrace/ ...
- Springboot项目搭配ELK日志平台
上一篇讲过了elasticsearch和kibana的可视化组合查询,这一篇就来看看大名鼎鼎的ELK日志平台是如何搞定的. elasticsearch负责数据的存储和检索,kibana提供图形界面便于 ...
- 亿级 ELK 日志平台构建部署实践
本篇主要讲工作中的真实经历,我们怎么打造亿级日志平台,同时手把手教大家建立起这样一套亿级 ELK 系统.日志平台具体发展历程可以参考上篇 「从 ELK 到 EFK 演进」 废话不多说,老司机们座好了, ...
- 搭建ELK日志平台(单机)
系统版本:Ubuntu 16.04.7 LTS 软件架构:Filebeat+Kafka+Logstash+Elasticsearch+Kibana+Nginx 软件版本:Filebeat-7.16.0 ...
- ELK日志平台
1.ELK平台能够完美的解决我们上述的问题,ELK由ElasticSearch.Logstash和Kibana三个开源工具组成,不过现在还新增了一个Beats,它是一个轻量级的日志收集处理工具(Age ...
- SpringBoot+ELK日志系统搭建
一.ELK是什么 "ELK"是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash 和 Kibana.Elasticsearch 是一个搜索和分 ...
随机推荐
- SpringMVC 源码分析
一个东西用久了,自然就会从仅使用的层面上升到探究其原理的层面,在javaweb中springmvc更是如此,越是优秀的框架,其底层实现代码更是复杂,而在我看来,一个优秀程序猿就相当于一名武林高手,不断 ...
- T-SQL 带参数存储过程
创建带参数的存储过程 use StudentManager go if exists(select * from sysobjects where name='usp_ScoreQuery4') dr ...
- Calling async method synchronously
https://stackoverflow.com/questions/22628087/calling-async-method-synchronously/22629216#22629216 ht ...
- python运算符&优先性
(1)算数运算符: + - * / //(求整) %(求余) ** (2)比较运算符: > < > ...
- Delphi根据方法名调用方法
type TForm1 = class(TForm) public published procedure DoJsCall(str:string); ...
- linux5.6以下版本的不兼容问题
之前一直用的都是mysql5.6版本,最近突然使用到了mysql5.1版本,于是在导入数据的时候便出现了很多由于版本不兼容的问题. 1.mysql5.1没有datetime类型,所以对于时间类型,只能 ...
- 07 grep命令与正则表达式
grep命令 首先我们知道grep命令是用来做文件内容过滤的!如果你要在文件中查找一些对应的内容,我们如何来过滤找到其中我们需要符合条件的内容呢?grep命令结合正则表达式就可以实现: grep.eg ...
- 《Linux 性能及调优指南》3.1 确认瓶颈
翻译:飞哥 ( http://hi.baidu.com/imlidapeng ) 版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明. 原文名称:<Linux Performance ...
- 测试oracle数据库连接
1.ping 192.168.0.12.telnet 192.168.0.1 1521 按下ctrl+] 组合键出现命令回显才是端口连接成 3.tnsping 192.168.0.1:1521/db
- 点击DIV随机换颜色
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...