目錄
- 安裝部署 Elasticsearch
- 下載FSCrawler
- 下載并運(yùn)行 Search-UI
- 踩坑路障
Elasticsearch 版本為 7.8.0则拷,fscrawler 版本為 2.7
一、下載并啟動(dòng) Elasticsearch
推薦從國內(nèi)鏡像站下載:https://repo.huaweicloud.com/elasticsearch/站叼,選擇指定平臺(tái)的指定版本萎河。
解壓:tar-zxvf elasticsearch-7.8.0-linux-x86_64.tar.gz
啟動(dòng):./bin/elasticsearch
測(cè)試:curl http://localhost:9200/?pretty
啟動(dòng)時(shí)可能出現(xiàn)內(nèi)存不夠片效、Xpack這兩個(gè)問題焦除,詳見踩坑路障
二激况、下載FSCrawler
FSCrawler 用于掃描本地文件,并發(fā)送給 Elasticsearch踢京∮辏可做到自動(dòng)掃描宦棺、分詞等功能瓣距。
下載,選擇es7對(duì)應(yīng)的版本:https://fscrawler.readthedocs.io/en/latest/installation.html
解壓:unzip fscrawler-es7-2.7-20200717.105855-117.zip
創(chuàng)建Job:./bin/fscrawler file_job --config_dir E:\1software\fscrawler-es7-2.7-SNAPSHOT\data
PS E:\1software\fscrawler-es7-2.7-SNAPSHOT> .\bin\fscrawler file_job 13:16:08,201 INFO [f.p.e.c.f.c.BootstrapChecks] Memory [Free/Total=Percent]: HEAP [10.6mb/247.5mb=4.32%], RAM [8.2gb/15.9gb=51.64%], Swap [9.1gb/19.9gb=45.71%].
13:16:08,230 WARN [f.p.e.c.f.c.FsCrawlerCli] job [file_job] does not exist
## 創(chuàng)建 file_job 的配置文件
13:16:08,231 INFO [f.p.e.c.f.c.FsCrawlerCli] Do you want to create it (Y/N)?
## 這個(gè)地址代咸,是我們要去修改的
13:16:10,976 INFO [f.p.e.c.f.c.FsCrawlerCli] Settings have been created in [C:\Users\user\.fscrawler\file_job\_settings.yaml]. Please review and edit before relaunch
編輯配置蹈丸,位于上面日志輸出的 C:\Users\user\.fscrawler\file_job\_settings.yaml
配置說明詳見 FSCrawler官網(wǎng):
---
name: "file_job"
fs:
## 文件夾掃描地址
url: "F:\\fstp\\prd"
update_rate: "15m"
## 包含的文件
includes:
- "*/*.html"
- "*/*.txt"
## 不包含的文件
excludes:
- "*/~*"
json_support: false
filename_as_id: true
add_filesize: true
remove_deleted: true
add_as_inner_object: false
store_source: false
index_content: true
attributes_support: false
raw_metadata: false
xml_support: false
index_folders: true
lang_detect: false
continue_on_error: false
ocr:
language: "eng"
enabled: false
pdf_strategy: "ocr_and_text"
## 輸出的類型
output_type: "doc"
follow_symlinks: false
elasticsearch:
nodes:
- url: "http://127.0.0.1:9200"
bulk_size: 100
flush_interval: "5s"
byte_size: "10mb"
再次啟動(dòng)fscrawler:./bin/fscrawler file_job --config_dir E:\1software\fscrawler-es7-2.7-SNAPSHOT\data
測(cè)試:curl http://localhost:9200/file_job/_count
結(jié)果:
{
"count": 191,
"_shards": {
"total":1,
"successful":1,
"skipped":0,
"failed":0
}
}
三、下載Search-UI
下載 Elasticsearch 的搜索 UI 示例呐芥,地址 Github:https://github.com/elastic/search-ui/tree/master/examples/elasticsearch逻杖。
主要是編輯三個(gè)文件:buildRequest.js
、runRequest.js
思瘟、buildState.js
buildRequest.js:查詢請(qǐng)求體的構(gòu)建
runRequest.js:ajax 請(qǐng)求的地址荸百,要根據(jù)自己的配置換成代理或者9200
buildState.js:處理響應(yīng)數(shù)據(jù),決定展示數(shù)據(jù)的字段滨攻。如 nps_link
為鏈接地址够话、title
為標(biāo)題、score
為匹配度等
四光绕、踩坑
-
ES 啟動(dòng)失敗1
- 異常信息:
Error occurred during initialization of VM 女嘲,Could not reserve enough space for 2097152KB object heap
- 原因:不能為堆對(duì)象保留2G的空間,內(nèi)存空間不足
- 解決方案1:修改jvm配置诞帐,編輯
config/jvm.options
欣尼,修改-Xms512m -Xmx512m
即可。 - 解決方案2:增加啟動(dòng)參數(shù)停蕉,
ES_JAVA_OPTS="-Xms512m -Xmx512m ./bin/elasticsearch"
- 解決方案3:如果都沒有用愕鼓,請(qǐng)檢查Windows的環(huán)境變量钙态,是否是以前裝過ES并做了相關(guān)服務(wù),如果有菇晃,則刪掉之前的配置
- 異常信息:
-
ES 啟動(dòng)警告
- 警告信息:
future versions of Elasticsearch will require Java 11;
- 解決方案:警告最好使用java11驯绎,但是會(huì)向下兼容。不需要處理
- 警告信息:
-
ES 啟動(dòng)失敗2
- 錯(cuò)誤信息:
org.elasticsearch.bootstrap.StartupException: ElasticsearchException[X-Pack is not supported and Machine Learning is not available for [windows-x86]; you can use the other X-Pack features (unsupported) by setting xpack.ml.enabled: false in elasticsearch.yml]
- 原因:X-Pack 不支持Windows
- 解決方案:編輯
config/elasticsearch.yml
谋旦,添加一行xpack.ml.enabled: false
- 錯(cuò)誤信息: