logstash5安装并实现mariadb数据写入到elasticsearch
java环境这里默认安装了 ,一般源码安装,这里就不说了
一、安装logstash
安装logstash可以用yum安装,也可以用源码安装:
yum安装:
1.导入GPG:
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
2.创建repo文件,vim /etc/yum.repos.d/logstash.repo
[logstash-.x]
name=Elastic repository for .x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=
autorefresh=
type=rpm-md
3.安装logstash
yum install logstash
二、源码安装(推荐)
1.官网下载需要的稳定版本
2.解压:
unzip logstash-5.5..zip
3.移到安装目录,创建软链接,我这里安装到/opt/app目录
mv logstash-5.5. /opt/app/
ln -s logstash-5.5./ logstash
4.修改配置文件
vim /opt/app/logstash/config/logstash.yml
path.data: /opt/app/logstash/data/
pipeline.workers:
pipeline.output.workers:
pipeline.batch.size:
path.config: /opt/app/logstash/etc #放配置文件
config.reload.automatic: false #这里yes的话后面会报错,后面有提到这个问题
config.reload.interval:
path.logs: /data/logs/logstash
vim /opt/app/logstash/config/startup.options 修改部分选项如下:
JAVACMD=/opt/app/jdk/bin/java
LS_HOME=/opt/app/logstash
LS_JAVA_OPTS="/opt/app/jdk"
LS_PIDFILE=/opt/app/logstash/run/logstash.pid
LS_USER=logstash
LS_GROUP=logstash
LS_GC_LOG_FILE=/data/logs/logstash/gc.log
5.创建目录和用户
useradd -g -u logstash -s /sbin/nologin
mkdir /opt/app/logstash/run -p
mkdir /data/logs/logstash -p
mkdir /opt/app/logstash/data/ -p
mkdir /opt/app/logstash/etc -p
chown logstash:logstash /opt/app/logstash -R
chown logstash:logstash /data/logs/logstash
6.创建启动脚本,通过systemd管理:
vim /etc/systemd/system/logstash.service
[Unit]
Description=logstash [Service]
Type=simple
User=logstash
Group=logstash
EnvironmentFile=-/etc/default/logstash
#ExecStart=/opt/app/logstash/bin/logstash
ExecStart=/opt/app/logstash/bin/logstash --path.settings /opt/app/logstash/config
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
WorkingDirectory=/
Nice=
LimitNOFILE= [Install]
WantedBy=multi-user.target
vim /etc/default/logstash
JAVACMD="/opt/app/jdk/bin/java"
LS_HOME="/opt/app/logstash"
LS_SETTINGS_DIR="/opt/app/logstash/config"
LS_PIDFILE="/opt/app/logstash/run/logstash.pid"
LS_USER="logstash"
LS_GROUP="logstash"
LS_GC_LOG_FILE="/data/logs/logstash/gc.log"
LS_OPEN_FILES=""
LS_NICE=""
SERVICE_NAME="logstash"
SERVICE_DESCRIPTION="logstash"
这样logstash就可以启动了
三、实现logstash写入mariadb数据到elasticsearch
1.安装插件:(这是一个基于jdbc的数据导入插件,可以从各种能对接此驱动的数据库导入数据到ES,还可以自行设定导入执行频率,规则等。
cd /opt/app/logstash
bin/logstash-plugin install logstash-input-jdbc
出现success表明安装成功
tips:
安装插件国外源太慢,解决办法:
(1)先安装gem
yum install gem
(2)替换国内的镜像
gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
(3)验证是否成功
#gem sources -l
***CURRENTSOURCES*** https://gems.ruby-china.org/
(4)修改Gemfile数据源地址
cd /opt/app/logstash
修改Gemfile文件的source的值为:“https://gems.ruby-china.org/”
修改Gemfile.jruby-1.9.lock文件的remote的值为:“https://gems.ruby-china.org/
(5)执行安装插件
bin/logstash-plugin install logstash-input-jdbc
2.安装所需的java驱动包:
解压到自定义目录,这个路径会在logstash配置文件中配置使用,我这里是:
/opt/app/logstash/lib/mysql-connector-java-5.1.44
3.生成配置文件,这里有工具可以生成
、、、、、、
tips:
logstash 启动后报错:
Logstash is not able to start since configuration auto reloading was enabled but the configuration contains plugins that don't support it. Quitting... {:pipeline_id=>"main", :plugins=>[LogStash::Inputs::Stdin]}
解决办法:
config.reload.automatic: false #关闭这个选项
logstash5安装并实现mariadb数据写入到elasticsearch的更多相关文章
- 通过Hive将数据写入到ElasticSearch
我在<使用Hive读取ElasticSearch中的数据>文章中介绍了如何使用Hive读取ElasticSearch中的数据,本文将接着上文继续介绍如何使用Hive将数据写入到Elasti ...
- Logstash读取Kafka数据写入HDFS详解
强大的功能,丰富的插件,让logstash在数据处理的行列中出类拔萃 通常日志数据除了要入ES提供实时展示和简单统计外,还需要写入大数据集群来提供更为深入的逻辑处理,前边几篇ELK的文章介绍过利用lo ...
- SQL数据同步到ElasticSearch(三)- 使用Logstash+LastModifyTime同步数据
在系列开篇,我提到了四种将SQL SERVER数据同步到ES中的方案,本文将采用最简单的一种方案,即使用LastModifyTime来追踪DB中在最近一段时间发生了变更的数据. 安装Java 安装部分 ...
- flink---实时项目--day01--1. openrestry的安装 2. 使用nginx+lua将日志数据写入指定文件中 3. 使用flume将本地磁盘中的日志数据采集到的kafka中去
1. openrestry的安装 OpenResty = Nginx + Lua,是⼀一个增强的Nginx,可以编写lua脚本实现⾮非常灵活的逻辑 (1)安装开发库依赖 yum install -y ...
- Centos7 编译安装 Nginx、MariaDB、PHP
前言 本文主要大致介绍CentOS 7下编译安装Nginx.MariaDB.PHP.面向有Linux基础且爱好钻研的朋友.技艺不精,疏漏再所难免,还望指正. 环境简介: 系统: CentOS 7,最小 ...
- PHP如何通过SQL语句将数据写入MySQL数据库呢?
1,php和MySQL建立连接关系 2,打开 3,接受页面数据,PHP录入到指定的表中 1.2两步可直接使用一个数据库链接文件即可:conn.php <?phpmysql_connect(&qu ...
- 如何将爬取的数据写入ES中
前面章节一直在说ES相关知识点,现在是如何实现将爬取到的数据写入到ES中,首先的知道ES的python接口叫elasticsearch dsl 链接:https://github.com/elasti ...
- Python3 Pandas的DataFrame格式数据写入excle文件、json、html、剪贴板、数据库
Python3 Pandas的DataFrame格式数据写入excle文件.json.html.剪贴板.数据库 一.DataFrame格式数据 Pandas是Python下一个开源数据分析的库,它提供 ...
- Redis 安装,配置以及数据操作
Nosql介绍 Nosql:一类新出现的数据库(not only sql)的特点 不支持SQL语法 存储结构跟传统关系型数据库中那种关系表完全不同,nosql中存储的数据都是k-v形式 Nosql的世 ...
随机推荐
- Python编程学习笔记 随时更新
import urllib.request import re url = 'http://stock.sohu.com/news/' html = urllib.request.urlopen(ur ...
- RobotFramework自动化2-自定义关键字【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/robotframework/ 前言 有时候一个页面上有多个对象需要操作,如果一个个去定 ...
- H. Fake News (medium)
H. Fake News (medium) 题意 以前是给出 S T 串,问在 S 中有多少个子串为 T 的个数,子串可以不连续,保持位置相对一致. 现在给出 n ,要你构造 S T 串. 分析 这种 ...
- 反汇编引擎Capstone
反汇编引擎Capstone Capstone是Kali Linux自带的一款轻量级反汇编引擎.它可以支持多种硬件构架,如ARM.ARM64.MIPS.X86.该框架使用C语言实现,但支持C++.P ...
- luogu P1041 传染病控制
题目背景 近来,一种新的传染病肆虐全球.蓬莱国也发现了零星感染者,为防止该病在蓬莱国大范围流行,该国政府决定不惜一切代价控制传染病的蔓延.不幸的是,由于人们尚未完全认识这种传染病,难以准确判别病毒携带 ...
- NOI2016 高中OI生涯的最后一站
你乘坐的航班XXX已经抵达终点站——四川绵阳. “呼——”机舱外的天空灰沉沉的,不禁有些压抑与紧张. 一出机场,就看见南山中学的牌子,黄色衣服的志愿者们,还有热情的老师们. 感觉刚才的情绪又一扫而空了 ...
- maven自己主动编译,解决你每次代码改动须要又一次编译的繁琐
maven结构的项目,我们在每次改动代码后都会须要手动编译,以下命令能够解决此问题.仅仅要代码改动.会自己主动帮你编译. 进入项目文件夹运行:mvn -U eclipse:clean eclipse: ...
- Python中将打印输出日志文件
一. 利用sys.stdout将print行导向到你定义的日志文件中,例如: import sys # make a copy of original stdout route stdout_back ...
- 搜索引擎Solr-6.6.0搭建
一.简介 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过Http ...
- GCD部分使用方法
1,用gcd延迟运行任务 假设我们须要某个方法在一段时间后运行.那么我们经常会调用这个方案 - (void)viewDidLoad{ [super viewDidLoad]; [self perfor ...