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- ...
随机推荐
- 洛谷 P1617 爱与愁的一千个伤心的理由
P1617 爱与愁的一千个伤心的理由 题目背景 (本道题目隐藏了两首歌名,找找看哪~~~) <爱与愁的故事第一弹·heartache>第二章. 经历了心痛后,爱与愁大神不行了. 题目描述 ...
- Qt之设置应用程序图标
简述 应用程序图标,通常显示在应用程序的顶层窗口的左上角,通过调用QWindow:setWindowIcon()函数来实现. 为了改变可执行程序文件本身的图标,因为它被呈现在桌面上,它必须采用另一种依 ...
- FPGA实现网络通信时的网络字节序问题
在上位机软件发送字符abcd 在鲨鱼上抓包 用逻辑分析仪从FPGA网络接收管脚分析 数据接收后存储在位宽为8bit的ram中 从ram中读32bitUDP数据为 64636261 依据以上那个现象, ...
- pintos操作系统thread部分的实现
pintos是斯坦福大学自己开发的一个教学用操作系统.里面的代码给我们留了很多坑.我们的目标就是解决这些坑!详细的实现大家能够看看这篇blog,尽管我的代码并非所有跟着他写的,可是这确实是一篇非常好地 ...
- Spring表达式语言SpEL简单介绍
Spring3引入了Spring表达式语言(Spring Expression Language,SpEL). SpEL有非常多特性.比較经常使用的包含: 1.使用bean的id来引用bean, 以下 ...
- Knockout源代码精析-怎样解析demo元素,获取到bindings(二)?
接上文这里開始分析applyBindingsToNodeInternal.applyBindingsToNodeInternal方法例如以下: function applyBindingsToNode ...
- 关于Javakeywordsynchronized——单例模式的思考
精彩的设计模式盛宴刚刚落下帷幕.三天的时间.真是学习到了非常多.当中,遗留的非常多的问题.今天就谈谈synchronized这个keyword.关于对synchronizedkeyword的思考是从单 ...
- sql server执行动态拼接sql(带传参数)和去掉小数点后0的函数
1 exec sp_executesql N'SELECT 2 [Extent2].[Id] AS [Id], 3 [Extent2].[Name] AS [Name], 4 [Extent2].[D ...
- JAVA设计模式之【代理模式】
代理模式 通过代理对象间接访问 代购 客户端不想或者不能直接访问一个对象,可以通过一个称为代理的第三者来实现间接访问,该方案称为代理模式 角色 抽象主题角色Subject 声明真实主题类与代理类的公共 ...
- 使用NFS共享硬盘
1. 安装 sudo apt install nfs-kernel-server 2. 配置 sudo vi /etc/exports /mnt/NewDisk *(rw,sync,no_ ...