之前的文章记录了从win10系统安装虚拟机centos7,再安装jdk8,开发环境,还有elasticsearch6.6.0和kibana6.6.0今天的安装需要在之前的基础上,

安装步骤都在我之前的博客哦!

本文记录安装logstash6.0版本

首先去官网下载最新版本:https://www.elastic.co/downloads/logstash

因为在linux中安装,所以找到这个tar.gz结尾的文件,如图

下载完成是这样的文件:

依旧上传到centos7中的/opt/elk目录中

将文件赋权给elk用户,

关于用户创建,赋权,方法都在我之前的文章中有提到,ll命令会显示文件的权限

首先切换到elk用户,在执行操作,注意不要用root用户直接解压,这样文件权限还是属于root,不利于下面的操作

解压文件logstash-6.6.0.tar.gz,执行命令:

tar -zxvf logstash-6.6.0.tar.gz

 下面不着急,首先配置一下同步数据库,先得有jdbc驱动,于是我去maven下载吧

下载地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java/5.1.47

点击这个jar即可下载到本地

文件是这样的:

 

上传到centos7中和我们的logstash安装目录中的bin文件夹中,方便在配置文件中获取。

 

 准备一下很关键的配置文件:(文件名 mysql-logstash.conf,放置于bin目录下)

input {
 stdin { }
    jdbc {
        #需要同步的数据库
        jdbc_connection_string => "jdbc:mysql://192.168.1.6:3306/***"

        jdbc_user => "root"

        jdbc_password => "root"
        #本地jar包
        jdbc_driver_library => "mysql-connector-java-5.1.47.jar"

        jdbc_driver_class => "com.mysql.jdbc.Driver"

        jdbc_paging_enabled => "true"

        jdbc_page_size => "50000"
        #获取到记录的SQL查询语句
        statement => "SELECT * FROM details"
        #定时字段 各字段含义(由左至右)分、时、天、月、年,全部为*默认含义为每分钟都更新
        schedule => "* * * * *"
    }
 }

 output {
     stdout {
        codec => json_lines
    }
    elasticsearch {
        #ESIP地址与端口
        hosts => "192.168.5.193:9200"
        #ES索引名称(自己定义的)
        index => "details"
        #文档类型
        document_type => "category"
        #文档类型id,%{category_id}意思是取查询出来的category_id的值,并将其映射到es中_id字段中
        document_id => "%{id}"
    }
}

然后在bin目录下使用./logstash -f mysql-logstash.conf启动logstash

稍等一会可以看到控制台会打印数据库查到的数据的相关信息,则数据同步成功

打开kibana进行查询

 

可以看到mysql中的数据进入了elasticsearch中.

同样,logstash也可以像之前文章中elasticsearch和kibana那样后台启动,并把日志输出到指定文件。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐