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 ...
随机推荐
- 【SpringCloud】SpringCloud Alibaba Seata处理分布式事务
SpringCloud Alibaba Seata处理分布式事务 分布式事务问题 分布式前 单机库存没这个问题 O(∩_∩)O 从1:1->1:N->N:N 分布式之后 单体应用被拆分成微 ...
- git库移植
记一次个人项目移植到组织项目的git应用,留爪. 1. 首先保证你本地有一份完整的库 2. 在 gitee 组织里新建一份裸库 3. 本地库移除所有远程库 git remote //查看所有远程库 g ...
- Pycharm两种快速激活方式(附最新激活码和插件)
小张的Pycharm最近弹出提示框 Your license has expired提示过期....纳尼!!!! 是不是看到这个也很头疼,.于是我就在想有没有一种方式可以让他永久免费的,于是小张从网上 ...
- Linux内存管理神器:smem工具
大家好,我是良许. 今天给大家分享一款 Linux 系统里的内存管理神器:smem . smem 是Linux系统上的一款可以生成多种内存耗用报告的命令行工具.与现有工具不一样的是 smem 可以报告 ...
- 将Particle转成UGUI
在unity官方论坛看到的一个解决方案,可以将Particle直接转换成CanvasRenderer元素显示.新建一个UIParticleSystem.cs脚本,将以下代码复制进去: using Un ...
- ESP32+Arduino入门(三):连接WIFI获取当前时间
ESP32内置了WIFI模块连接WIFI非常简单方便. 代码如下: #include <WiFi.h> const char* ssid = "WIFI名称"; con ...
- 前端ai工具v0使用配置
资料 ai工具Vo Installation - Tailwind CSS 以vue3 + sass为例,配置如下 安装tailwindcss npm install -D tailwindcss n ...
- 适合Java程序员的Go入门笔记
0.背景 3年java开发背景(因此这篇文章的特点是:比较适合java程序员doge),业余时间有了解过一些go,如今加入字节团队主要技术栈是go,此篇主要结合go语言圣经和团队内go项目,总结一些基 ...
- AI提示词:通用 vscode linux c++ 项目CMakeLists和bulid模板
AI提示词 写vscode linux c++20 的CMakeLists.txt文件.build.rebuild文件 这是多项目结构,目录结构如下: projs: │ build.sh 顶层buil ...
- 《基于改进Wallace树的Posit乘法单元优化》(一)
原文 文章通过增加特定的计数器.重新设计部分积求和阶段计数器布局 以及改进最终求和阶段使用的加法器,提出一种名为3L-Wallace树的改进Wallace树算法,有效减少了部分积求和的阶段数, 从而降 ...