ELK搭建(filebeat、elasticsearch、logstash、kibana)
ELK部署(文章有点儿长,搭建时请到官网将tar包下载好,按步骤可以完成搭建使用)
ELK指的是ElasticSearch、LogStash、Kibana三个开源工具
LogStash是负责数据的收集和过滤处理
ElasticSearch 是一个开源分布式搜索引擎,负责数据的存储、检索和分析
Kibana 是提供可视化的页面,对数据进行可视化预览
首先前提安装好java环境,java1.8
yum -y list java
yum install java-1.8.0-openjdk.x86_64
然后在官方下载ElasticSearch Kibana LogStash包
https://www.elastic.co/cn/downloads
这边用的版本elasticsearch-6.3.2 Kibana-6.3.2 LogStash-6.3.2
一、对系统参数做调整
vim /etc/security/limits.conf (修改如下内容)
* soft nofile 65536
* hard nofile 65536
* soft nproc 65536
* hard nproc 65536

vim /etc/security/limits.d/20-nproc.conf (修改如下内容)
* soft nproc 4096
root soft nproc unlimited

vim /etc/sysctl.conf (添加如下内容)
vm.max_map_count = 655360
fs.file-max=655360

sysctl -p 使内容生效
确保所有生效 必须重启服务器一遍 reboot
二、安装Elasticsearch
elasticsearch需要新建一个用户用来启动
useradd -d /home/els -m els
su els
mkdir -p /home/els/tools/
将tar包放置 /home/els/tools
cd /home/els/tools
tar -xzf elasticsearch-6.3.2.tar.gz
mv elasticsearch-6.3.2 /home/els/
cd /home/els/elasticsearch-6.3.2/
vim config/elasticsearch.yml(修改如下内容)
path.data: /home/els/elasticsearch-6.3.2/data #自定义 数据存放地址
path.logs: /home/els/elasticsearch-6.3.2/logs #自定义 日志存放地址
http.cors.enabled: true #开启跨域访问支持 默认为false
http.cors.allow-origin: "*" #跨域访问允许的域名地址,支持正则
network.host: 0.0.0.0 #任意IP可以访问
chown -R els.els /home/els/elasticsearch-6.3.2
nohup ./bin/elasticsearch &
浏览器访问 ip:9200 得到如下内容 便搭建成功

三、搭建elasticsearch_head
mkdir -p /root/ELK
cd /root/ELK
yum install git npm
git clone https://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
nohup npm run start &
然后浏览器访问ip:9100 连接你的Elasticsearch ip:9200

四、安装Logstash
Logstash的安装同样如此,可以直接用root用户 将6.3.2的tar包解压,进入目录
Vim /你定义的目录/logstash-6.3.2/config/test.conf
input {
file{
path => [“/var/log/messages”,] #这可以是个列表 多个Log日志也是可以的
start_position => "beginning"
}
}
output{
ctdout{
codec => rubydebug #直接输出到屏幕
}
elasticsearch {
hosts => ["http://13.1.18.135:9200"] #同时输出到elastisearch
index => "syslog-%{+YYYY.MM.dd}"
action => "index"
document_type => "test"
}
cd /你定义的目录/logstash-6.3.2/
./bin/logstash -f config/test.conf

屏幕有输出,同时浏览器访问ip:9100,也能看到根据索引的输出信息
后期会详细说Logstash检索功能以及通过缓存中间件来传递数据接收数据
五、安装kibana
同样时将tar包解压到你的目录下
tar zxvf kibana-6.2.2-darwin-x86_64.tar.gz
cd /你的目录/kibana-6.2.2-darwin-x86_64
vim config/kibana.yml (修改如下内容)
server.host: "0.0.0.0"
elasticsearch.url: "http://localhost:9200" #我这里使用同一台服务器 不是的话请用IP
nohup ./bin/kibana -H 0.0.0.0 & #后台启用
浏览器访问 ip:5601

然后到左边菜单最下方Management 设置索引值

create Index Patern
输入 syslog* *匹配所有,与之前Logstash中输出output的index值


最后创建
然后到左边菜单中Discover中查看信息
左边设置当前的索引 ,右上角设置检索日期,和设置自动更新

搭建完成
接着以一个数据传递方式添加一个filebeat工具 是个轻量级的数据采集 可以直接输出到Logstash或者elasticsearch
配置同样简单
下载filebeat-6.3.2-linux-x86_64.tar.gz
解压到你的目录下 (修改下输入参数和输出参数)
vim filebeat-6.3.2-linux-x86_64/filebeat.yml

修改参数请按yml格式
可以输入多个地址
输入配置:
参数type , enabled, paths, fields(这个参数传入Logstash字段,用于判断)
输出配置:
output.logstash:
hosts: ["13.1.18.135:5022"] #表示传输到主机的5022端口负责接送数据
开启filebeat 注意-e -c顺序
./filebeat -e -c filebeat.yml
#可自行使用
#output.redis:
# hosts: ["13.1.18.135:6379"]
# password: '123456' #到redis.conf的 requirepass 123456 密码必须配置
# key: "log_file" #传输的键值
# db: 0 #0库
# timeout: 5 #超时时间
输出配置可以有Elasticsearch,中间件缓存 redis,rabbitmq,kafka等
此时需要修改之前的Logstash中配置文件的test.conf的input
input {
beats {
port => 5022 #开启5022端口接收数据
#Filebeat传来数据
}
}
#同上的redis配置
#input {
# redis{
# port => '6379'
# host => '13.1.18.135'
# data_type => "list"
# type => "log"
# key => "log_file"
# db => '0'
# password => '123456'
#}
重启启动logstash
./bin/logstash -f config/test.conf
当前的传输过程如下图

后期需要可以为多个filebeat用于多台服务器的日志同时采集,elastcsearch也可以设置为多个节点
下篇文章关于logstash的检索配置
ELK搭建(filebeat、elasticsearch、logstash、kibana)的更多相关文章
- ELK系列(1) - Elasticsearch + Logstash + Kibana + Log4j2快速入门与搭建用例
前言 最近公司分了个ELK相关的任务给我,在一边学习一边工作之余,总结下这些天来的学习历程和踩坑记录. 首先介绍下使用ELK的项目背景:在项目的数据库里有个表用来存储消息队列的消费日志,这些日志用于开 ...
- ELK (Elasticsearch , Logstash, Kibana [+FileBeat])
ELK 简述: ELK 是: Elasticsearch , Logstash, Kibana 简称, 它们都是开源软件. Elasticsearch[搜索]是个开源分布式基于Lucene的搜索引擎, ...
- ELK日志系统:Elasticsearch+Logstash+Kibana+Filebeat搭建教程
ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程 系统架构 安装配置JDK环境 JDK安装(不能安装JRE) JDK下载地址:http://www.orac ...
- 【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 ...
- ELK 架构之 Elasticsearch、Kibana、Logstash 和 Filebeat 安装配置汇总(6.2.4 版本)
相关文章: ELK 架构之 Elasticsearch 和 Kibana 安装配置 ELK 架构之 Logstash 和 Filebeat 安装配置 ELK 架构之 Logstash 和 Filebe ...
- 【Big Data - ELK】ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台
摘要: 前段时间研究的Log4j+Kafka中,有人建议把Kafka收集到的日志存放于ES(ElasticSearch,一款基于Apache Lucene的开源分布式搜索引擎)中便于查找和分析,在研究 ...
- ELK(elasticsearch+logstash+kibana)入门到熟练-从0开始搭建日志分析系统教程
#此文篇幅较长,涵盖了elk从搭建到运行的知识,看此文档,你需要会点linux,还要看得懂点正则表达式,还有一个聪明的大脑,如果你没有漏掉步骤的话,还搭建不起来elk,你来打我. ELK使用elast ...
- 键盘侠Linux干货| ELK(Elasticsearch + Logstash + Kibana) 搭建教程
前言 Elasticsearch + Logstash + Kibana(ELK)是一套开源的日志管理方案,分析网站的访问情况时我们一般会借助 Google / 百度 / CNZZ 等方式嵌入 JS ...
- 使用ELK(Elasticsearch + Logstash + Kibana) 搭建日志集中分析平台实践--转载
原文地址:https://wsgzao.github.io/post/elk/ 另外可以参考:https://www.digitalocean.com/community/tutorials/how- ...
随机推荐
- Ruby中写换行
Ruby中写换行 print("Hello,\nRuby\n!\n") print("Hello, Ruby ! ") 这两个竟然是一样的:就是说,可以直接回车 ...
- dexposed框架Android在线热修复
移动client应用相对于Webapp的最大一个问题每次出现bug,不能像web一样在server就完毕修复,不须要发版本号.紧急或者有安全漏洞的问题, 假设是Webapp你可能最多花个1,2个小时紧 ...
- android官网被封掉了,仅仅好用这个站点进谷歌了!嘎嘎
http://developer.android.com/sdk/index.html 这个能够进去.可是必须是搜狐 .360,uc都不用特意FQ http://173.1 ...
- javaBean 练习—封装学生信息
编写一个封装学生信息的JavaBean对象,在页面中调用该对象,并将学生信息输出在页面中. package com.sp.test; public class Student { private St ...
- jquery简介 each遍历 prop attr
一.JQ简介 jQuery是一个快速.简洁的JavaScript框架,它封装了JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作.事件处理.动画设计和 ...
- Android tablayout增加选择tab 的事件.
tablayout在点击或者滑动的时候会触发监听事件 , 当你调用这个方法的时候 会触发事件 mTablayout.addOnTabSelectedListener(new TabLayout.On ...
- JavaScript学习——使用JS完成全选和全不选操作
1.我们希望在后台系统实现一个批量删除的操作(全选所有的复选框)和全不选,显示效果如下: 2.步骤分析: 第一步:确定事件(onclick)并为其绑定一个函数(事件绑定到编号前面的复选框里面) 第二步 ...
- windows下安装mycat,并简单使用
使用mycat需要先安装jdk1.7以上 参考:http://www.cnblogs.com/llhhll/p/9257764.html 1从官网下载解压后目录如下(1.6版本) 下载地址:https ...
- category和关联对象
如上所见,我们知道在category里面是无法为category添加实例变量的.但是我们很多时候需要在category中添加和对象关联的值,这个时候可以求助关联对象来实现. MyClass+Categ ...
- ActiveMQ学习笔记(22)----ActiveMQ的优化和使用建议
1. 什么时候使用ActiveMQ 1. 异步通信 2. 一对多通信 3. 做个系统的集成,同构,异构 4. 作为RPC的替代 5. 多个应用相互解耦 6. 作为事件驱动架构的幕后支撑 7. 为了提高 ...