前言
这只是一个技术文档方向的一篇文章,请不要像我索取任何的泄露数据库,博主也不会提供任何的数据内容。本篇文章只是做一个技术文章备份,以及自此期间出现的问题。
工具
以下的工具均来自这个网址:点击直达
这是一个全文搜索的软件,网上介绍非常牛逼。
Logstash
这个是用来导入到Elasticsearch中的一个工具。
Kibana
这个是一个对Elasticsearch的后台。
1. 安装ElasticSearch & Kibana
首先下载最新的Elasticsearch(点击直达)
部署
安装Java
由于Elasticsearch需要Java(点击直达)环境,所以在我们部署环境之前我们还需要把Java环境部属成功,这里就忽略Java的部署步骤。
安装
Elasticsearch没有安装这一说,因为他是一个绿色版的软件,我们下载好之后直接安装即可。
我这里下载是的Windows版的是zip压缩包,名称为elasticsearch-8.12.1.zip将文件加压。
运行
下载安装包,解压,然后进行接下,你会发现它包含如下内容:
bin
config
data
jdk
lib
logs
modules
plugins
它的主要配置文件是config/elasticsearch.yml
。
找到elasticsearch-8.12.1.zip解压的目录,然后定位到bin\elasticsearch.bat打开即可
使用浏览器打开链接http:// localhost:9200/
,如果看到类似以下的内容,那么恭喜你,你已经正常运行ElasticSearch实例了。
{
"name" : "MacBook-Pro.local",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "jyxqsR0HTOu__iUmi3m3eQ",
"version" : {
"number" : "7.9.0",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "a479a2a7fce0389512d6a9361301708b92dff667",
"build_date" : "2020-08-11T21:36:48.204330Z",
"build_snapshot" : false,
"lucene_version" : "8.6.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
问题解决
1.Elasticsearch启动后访问不了9200的解决方案
原因是是因为开启了 ssl 认证。
在 ES/config/elasticsearch.yml 文件中把xpack.security.http.ssl:enabled
设置成false
即可,重新保存启动即可
2. windows 下直接启动 ElasticSearch ,见到 started 为成功启动,访问 htttp://localhost:9200 需要输入密码,是因为开启了密码验证模式。
找了一轮没看到有账号密码,
解决方法一
干脆就设置免密登录就好。重新保存启动即可
解决方法二
在你的elasticsearch包的bin目录下cmd,输入以下命令:
elasticsearch-reset-password -u elastic
接着就会在控制台输出New value,就是新的密码了,就可以使用它登录了(用户名就是 elastic)。
安装Kibana
同样Kibana也是一个绿色的软件无需安装,直接打开bin\kibana.bat即可。
前提是你的Elasticsearch要打开。
怎么安装Kibana(点击直达)后台管理软件呢?同样本工具也需要使用到Java(点击直达)请自行安装。
测试
这样后台和搜索引擎已经配置结束,后面才是真正的内容。
安装Logstash
同样Logstash也是一个绿色的软件,Logstash(点击直达)将数据导入到Elasticsearch中。但是如果导入数据的话,这里还需要一些配置文件才能正确的使用。
解压logstash文件,进入config目录下,可以看到一个logstash-sample.conf文件,复制一份并命名为logstash-movies.conf。
配置文件自己可以随便命名,只要你自己能正确找到,并识别就行
导入说明
这里我将使用之前泄露的12306.txt为例进行txt导入操作,此txt实际是等同于一个csv文件。
其中一行的内容格式如下:
2***@qq.com—-6**5—-郑**—-3325***0011—-z6**05—-1506**64—-27466**6@qq.com
其中敏感数据已经打了码,但数据格式为:邮箱、密码、姓名、身份证、账号、手机
编辑文件:
# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.
# 读取数据配置
input {
file {
# 导入文件目录地址
path => "D:/Tool/ml-25m/movies.csv"
start_position => "beginning"
}
}
# 过滤 格式化数据配置
filter {
# 配置读取csv文件
csv {
# 设置拆分符为 逗号
separator => ","
# 指定csv文件的字段 按顺序匹配
columns => ["id","content","genre"]
}
# 对genre字段内容进行处理
mutate {
split => { "genre" => "|" }
remove_field => ["path", "host","@timestamp","message"]
}
# 对content字段内容进行处理
mutate {
split => ["content", "("]
# 添加字段 title
add_field => { "title" => "%{[content][0]}"}
# 添加字段 year
add_field => { "year" => "%{[content][1]}"}
}
mutate {
# 对year字段进行类型转换
convert => {
"year" => "integer"
}
strip => ["title"]
# 删除字段
remove_field => ["path", "host","@timestamp","message","content"]
}
}
# 输出配置
output {
# es相关配置
elasticsearch {
hosts => "http://localhost:9200"
index => "movies"
document_id => "%{id}"
#user => "elastic"
#password => "changeme"
}
stdout {}
}
bin目录,启动logstash:通过-f 参数指定配置文件启动
logstash.bat -f D:\Tool\logstash-7.12.0-windows-x86_64\logstash-7.12.0\config\logstash-movies.conf
问题
-
启动数据没办法写入到elasticsearch中:
原因:因为我是在Windows环境启动,配置文件相关目录是Windows系统文件系统,注意分隔符。
配置
如果以上都没有问题,那么登陆http://127.0.0.1:5601就可以查看具体的内容了。
首次使用Kibana大致的需要一下操作。
打开http://127.0.0.1:5601/在managerment->movies->可以看到导入了1万条数据
查找输入如158*(星号为通配符),响应速度非常快,秒出结果,几亿条大概响应时间为5-10s
结束
本篇到此结束
2、本站永久网址:https://www.xheishou.com
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
暂无评论内容