由于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
进入后选择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的官网下载
下载后在window解压得到mysql-connector-java-5.1.40-bin.jar
以下内容为博主自己项目的配置内容,吃瓜群众不需理会!
1.修改配置文件
在/data/ 文件夹生成项目配置文件,
cd /data/
vim logstash_view_all.conf
修改以下内容
注:密码不需要填写加密后的结果,直接填123456
2.设置项目中elasticsearch配置文件
cd /data/www/项目路径/ElasticSearch/
cp index_all-dist.sh index_all.sh
修改数据库名,ip,帐号密码,集群等信息,项目的Elasticsearch的文件夹路径等信息
vim index_all.sh
3.设置配置reindex.php文件
cp reindex-dist.php reindex.php
vim reindex.php
修改ip地址
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
查看索引生成效果
在浏览器中输入
http://dev.test.net:9200/test/_search
成功生成显示