Elasticsearch+logstash安装部署
ELK安装部署
ELK安装部署
ELK是elastic公司提供的一套完整的收集日志并分析展示的产品,分别表示Elasticsearch、Logstash和kibana。

Elasticsearch简称ES,是一个建立在全文搜索引擎Apache Lucene基础上的实时的分布式搜索及分析引擎。
Logstash是一个具有实时传输能力的数据收集引擎,由三个组件构成,其中input组件负责收集数据,常用的数据源包括文件类型、数据库类型;filter组件是用来用来过滤数据;output组件是Logstash的输出组件,可以输出到指定的文件,指导的网络端口或者输出到ES。
Kibana为Elasticsearch提供了一个分析和可视化的web平台,通过Kibana可以对Elasticsearch的索 据进行查询,聚合,删除等各种操作。
使用ELK的目的
受理项目为了提高统计功能的效率,采用Logstash将数据库中的业务数据导入到ES中,通过ES提供的方法以及java Api来完成统计,借助ES搜索引擎的特性来提高统计的效率。
安装包版本要求
ELK版本 7.8,JDK要求1.8以上(Linux系统为例):
目前所用版本:elasticsearch-7.8.0 、logstash-7.8.0.tar、jdk-8u151-linux-x64
Elasticsearch安装配置启动
安装jdk
自行搜索安装以及配置环境变量方法,本文不做阐述。
安装ES
- 将ES安装包解压到user/local/elk/elastic-search(自定义);
- 修改ES配置文件:/config/elasticsearch.yml
cluster.name: web-application
node.name: node-1
# 启动输入密码访问
xpack.security.transport.ssl.enabled: true
xpack.security.enabled: true
# 设置外网可以访问
network.host: 0.0.0.0
# 启动输入密码访问
xpack.security.transport.ssl.enabled: true
xpack.security.enabled: true
# 设置外网可以访问
network.host: 0.0.0.0
- 启动elasticsearch
ES的启动需要切换非root权限的用户,请配置人员自己创建用户来启动ES若启动失败,自行根据错误信息搜索解决方案
后台启动执行命令:
nohup ./bin/elasticsearch & 或者 ./bin/elasticsearch -d
- 验证启动成功
浏览器访问http://localhost:9200 (localhost为服务器地址)
Logstash安装配置启动
将Logstash安装包解压到user/local/elk/logstash (自定义)
配置文件见第二大节详解
启动Logstash(若启动失败,自行根据异常信息搜索解决方案)
后台启动执行命令:
nohup ./bin/logstash -f config/jdbc_oracle.conf &
Logstash配置文件详解
本文章通过Logstash将数据库中的业务数据导入到elasticsearch中,所以Logstash数据来源为数据库,输出为我们安装好的ES。
SQL文件配置
将需要的SQL文件放在自定义路径下(/home/A1/logstash-7.8.0/config),可配置多个SQL作为输出。
Oracle依赖包配置
Oracle依赖包ojdbc6.jar放在lib文件夹中,绝对路径要写到下面的启动文件中。
配置启动文件
ogstash启动时候需要指定配置文件,在config文件夹下面新建配置文件elasticsearch_sync.conf
配置文件内容如下:
# 输入
input {
jdbc {
jdbc_driver_library => "/home/mysql-connector-java-5.1.10.jar"
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_connection_string => "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useSSL=false"
jdbc_user => "root"
jdbc_password => "123456"
# 设置监听间隔 各字段含义(从左至右)分、时、天、月、年,全为*默认含义为每分钟都更新
schedule => "* * * * *"
# 查询sql,可以通过更新字段来区分那些是需要更新的
statement_filepath => "/home/logstash-7.8.0/config/complete.sql"
# 记录最后的运行时间,注意目录需要创建好
last_run_metadata_path => "/home/logstash-7.8.0/config/ logstash_jdbc_last_run_person"
use_column_value => false
tracking_column => "update_time"
# 分页处理数据
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
# 类型,对象后面输出的类型
type => "complete_corporate"
}
}
# 过滤
filter {
# 用ruby解决相差8小时的时区问题, update_time必须要通过statement_filepath配置的sql可以查询出来
ruby {
code => "event.set('update_time', event.get('update_time').time.localtime + 8*60*60)"
}
}
# 输出
output {
if[type] == "complete_corporate"{
elasticsearch {
hosts => "localhost:9200"
user => elastic
password => elastic
# 索引名
index => "complete_corporate_index"
# 文档名
document_type => "complete_corporate"
# 文档ID(主键)
document_id => "%{body_card_no}"
}
}
# 将数据输出到控制台
stdout {
codec => json_lines
}
}
启动Logstash
执行命令后台启动:
nohup ./bin/logstash -f config/elasticsearch_sync.conf &
验证
在浏览器输入http://localhost:9200/_cat/indices?v
,查看ES是否有刚才导入的索引。
Elasticsearch+logstash安装部署的更多相关文章
- elasticsearch+logstash+kibana部署
这篇博客讲的是elasticsearch+logstash+kibana部署的方法. 内容大纲: 1.elasticsearch+logstash+kibana部署 2.收集Tomcat日志 3.收集 ...
- ELK (Elasticsearch+Logstash+Kibana)部署
部署机器: 服务端:dev-server X.X.X.X ( logstash-1.5.4,elasticsearch-1.7.1,kibana-4.1.1 ) 客户端:dev-cli ...
- ElasticSearch+Kibana安装部署
在安装ElasticSearch时遇到了很多坑,所以在这里做个笔记记录一下. 首先我考虑的是使用docker进行部署,结果发现虚拟机直接内存溢出,我也是无解了,也就是说使用docker部署还得注意容器 ...
- ELK 安装部署小计
ELK的安装部署已经是第N次了! 其实也很简单,这里记下来,以免忘记. #elasticsearch安装部署 wget https://artifacts.elastic.co/downloads/e ...
- ELK文档-安装部署
一.ELK简介 请参考:http://www.cnblogs.com/aresxin/p/8035137.html 二.ElasticSearch安装部署 请参考:http://blog.51cto. ...
- Docker安装部署ELK教程(Elasticsearch+Kibana+Logstash+Filebeat)
Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等. Logstash 是一个完全开 ...
- ELK( ElasticSearch+ Logstash+ Kibana)分布式日志系统部署文档
开始在公司实施的小应用,慢慢完善之~~~~~~~~文档制作 了好作运维同事之间的前期普及.. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 软件下载地址: https://www.e ...
- elasticsearch+kibana+metricbeat安装部署方法
elasticsearch+kibana+metricbeat安装部署方法 本文是elasticsearch + kibana + metricbeat,没有涉及到logstash部分.通过beat收 ...
- ELK6.0部署:Elasticsearch+Logstash+Kibana搭建分布式日志平台
一.前言 1.ELK简介 ELK是Elasticsearch+Logstash+Kibana的简称 ElasticSearch是一个基于Lucene的分布式全文搜索引擎,提供 RESTful API进 ...
- ELKF安装使用教程。elasticsearch+logstash+kibana+filebeta。
近期因工作需要学习了ELKF的安装和使用.网络上的中文我看大部分也比较老版本了,我想写一下,希望能给他人带来一点帮助.小弟不才,有错位之处,还请大家原谅指点. ELKF就是:elasticsearch ...
随机推荐
- Git分支命名规范总结
Git分支命名规范总结 在Git分支命名规范中,通常通过前缀明确区分需求(功能开发)和Bug修复,以下是具体规则及示例: 一.命名规范区分原则 需求分支(Feature) 前缀:feature/ 或 ...
- 【Java】可比较泛型建数组传递报强转类型错误解决方案
问题 可比较泛型怎么新建数组? 自己写基于AVL树的散列表时,在自动扩容的时候需要遍历AVL树的Key,所以需要AVL树提供一个方法返回一个Key数组以遍历,初始实现如下: /** * 用于辅助遍历K ...
- 【Node.js】npm配置国内镜像源
[服务器]npm配置国内镜像源 零.问题 配置Node.js的HTTPS的时候,下载不了 一.解决 这里使用的是淘宝的镜像: npm config set registry https://regis ...
- 调用dll中form,太古老了,可是
太古老了,可是用的不多.应该考虑商品化项目首选. library Prj_dll; { Important note about DLL memory management: ShareMem mus ...
- 为Avalonia应用添加图标
前言 为了让自己开发的应用更加好看,开发者往往需要增加一些图标. 本文分享在开发Avalonia应用时如何为应用增加图标,希望可以帮助到正在学习使用Avalonia并有此需求的开发者. 实践 经过搜索 ...
- spring项目使用EMQX,使用@Autowired注入失败报错空指针问题记录
目录 java客户端使用MQTT订阅消息大致流程 MQTTConnect部分代码 MQTTListener部分代码 问题分析 问题原因 解决方法 总结 参考 java客户端使用MQTT订阅消息大致流程 ...
- java开发中简简单单的全局异常处理
今天吃饭时,被公司新来的同事问道:"项目controller层里好多都没写try,catch,难道异常不用处理吗?".虽然正吃饭时被打扰,让我很讨厌,但是既然他诚心诚意的问了,本着 ...
- JAVA stream集合List<Map>转二维集合Map<String,Map<String,Object>>
简介 将一个 List<Map> 转换为一个二维的 Map 结构通常意味着我们需要创建一个 Map<K, Map<K, V>>.这里,外部的 Map 使用某个键(比 ...
- Windows执行bat脚本乱码
解决方案: 将脚本编码设置为ANSI
- this 和super 关键字的区别
this关键字 (1) 每个类的每个非静态方法(没有被static修饰)都会隐含一个this关键字,它指向调用这个方法的对象:当在方法中使用本类属性时,都会隐含地使用this关键字,当然也可以明确使用 ...