由于elasticsearch的search guard 不支持 elasticsearch的jdbc,所以如果安装了search guard认证插件之后,基本上jdbc就废了,所以我们需要用到logstash来代替jdbc生成数据索引。

简介

Logstash是一个接收,处理,转发日志的工具。支持系统日志,webserver日志,错误日志,应用日志,总之包括所有可以抛出来的日志类型。
在一个典型的使用场景下(ELK):用Elasticsearch作为后台数据的存储,kibana用来前端的报表展示。Logstash在其过程中担任搬运工的角色,它为数据存储,报表查询和日志解析创建了一个功能强大的管道链。Logstash提供了多种多样的 input,filters,codecs和output组件,让使用者轻松实现强大的功能。

依赖条件:JAVA

Logstash运行仅仅依赖java运行环境(jre)。各位可以在命令行下运行java -version命令 显示类似如

 

1.下载安装Logstash

下载

进入elasticsearch官网的下载页面,寻找对应你elasticsearch版本的Logstash,例如对应我elasticsearch的Logstash是2.3.4

elk的logstash部署 logstash elasticsearch 配置_elk的logstash部署

 

elk的logstash部署 logstash elasticsearch 配置_配置文件_02

进入后选择RPM > 右键点击 -- 复制链接地址

wget https://download.elastic.co/logstash/logstash/packages/centos/logstash-all-plugins-2.3.4-1.noarch.rpm

安装

rpm -ivh logstash-all-plugins-2.3.4-1.noarch.rpm

2.下载mysql java 驱动

mysql的官网下载

elk的logstash部署 logstash elasticsearch 配置_java_03

elk的logstash部署 logstash elasticsearch 配置_elk的logstash部署_04

elk的logstash部署 logstash elasticsearch 配置_配置文件_05

 

 

下载后在window解压得到mysql-connector-java-5.1.40-bin.jar

 

 

以下内容为博主自己项目的配置内容,吃瓜群众不需理会!

1.修改配置文件

在/data/ 文件夹生成项目配置文件,

cd /data/

vim logstash_view_all.conf

修改以下内容

elk的logstash部署 logstash elasticsearch 配置_配置文件_06

elk的logstash部署 logstash elasticsearch 配置_elasticsearch_07

注:密码不需要填写加密后的结果,直接填123456

elk的logstash部署 logstash elasticsearch 配置_配置文件_08

2.设置项目中elasticsearch配置文件

cd /data/www/项目路径/ElasticSearch/

cp index_all-dist.sh index_all.sh

修改数据库名,ip,帐号密码,集群等信息,项目的Elasticsearch的文件夹路径等信息

vim index_all.sh

elk的logstash部署 logstash elasticsearch 配置_java_09

3.设置配置reindex.php文件

cp reindex-dist.php reindex.php

vim  reindex.php

修改ip地址

elk的logstash部署 logstash elasticsearch 配置_配置文件_10

 

4.开启elasticsearch并且配置开机自启动

systemctl start elasticsearch

systemctl enable elasticsearch

5.修改项目配置文件
在命令行查看elasticsearch帐号密码是否配置成功

curl -XGET "http://shifu:123456@127.0.0.1:9200"

6.修改项目中配置文件

vim Application/Common/Conf/config.php
/*elasticsearch相关配置*/
         'ELASTIC_SEARCH' => array(
                 'hosts'         => array(
                         'http://shifu:123456@192.168.117.128:9200'//安全插件配置的帐号密码为shifu,123456
                 ),                                                                                                           
                 'index'         => 'test'
         )

7.运行Logstash,生成索引;生成索引后,Logstash会自动关闭

/opt/logstash/bin/logstash -f /data/logstash_view_all.conf

查看Logstash的运行状态

ps -ef |grep logstash

elk的logstash部署 logstash elasticsearch 配置_java_11

查看索引生成效果

在浏览器中输入

http://dev.test.net:9200/test/_search

 成功生成显示

elk的logstash部署 logstash elasticsearch 配置_elasticsearch_12