當前位置:成語大全網 - 英語詞典 - Elasticsearch安裝以及配置hanlp中文分詞插件

Elasticsearch安裝以及配置hanlp中文分詞插件

elasticsearch默認開啟兩個端口:9200,用於ES節點和外部通訊;9300,用於ES節點之間通訊

報錯: org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root ,不能以root用戶的身份運行elasticsearch

解決方法:新建用戶組和用戶,並賦予其elasticsearch文件夾的權限

再次運行

WARN: java.lang.UnsupportedOperationException: seccomp unavailable: CONFIG_SECCOMP not compiled into kernel, CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER are needed ,使用新的linux版本即可,不影響使用

啟動失敗,出現上面四個錯誤,壹壹解決

ERROR[1]:無法創建本地文件問題,用戶最大可創建文件數太小

解決方法:切換到root用戶,編輯limits.conf配置文件

ERROR[2]:無法創建本地線程問題,用戶最大可創建線程數太小

解決方法:切換到root用戶,進入limits.d目錄下,修改90-nproc.conf 配置文件

ERROR[3]:最大虛擬內存太小

解決方法:切換到root用戶下,修改配置文件sysctl.conf

ERROR[4]:這是在因為Centos6不支持SecComp,而ES5.2.0默認bootstrap.system_call_filter為true進行檢測,所以導致檢測失敗,失敗後直接導致ES不能啟動

解決方法:在elasticsearch.yml中配置bootstrap.system_call_filter為false

解決完成後,重新啟動,啟動成功

如果要在後臺運行,使用 ./bin/elasticsearch -d 啟動

訪問 http://192.168.1.200:9200/,返回數據

現在啟動elasticsearch,提示jar包沖突

現在啟動elasticsearch,沒有異常,我們測試壹下hanlp分詞插件有沒有生效

訪問: http://192.168.1.200:9200/_analyze?text=%E4%B8%AD%E5%9B%BD%E7%9A%84%E5%86%9B%E4%BA%8B%E5%AE%9E%E5%8A%9B%E4%B8%8E%E6%97%A5%E4%BF%B1%E5%A2%9E&analyzer=hanlp

elasticsearch報錯並且退出運行

看上去是權限的問題,這就用到hanlp目錄下的 plugin-security.policy 文件,修改 /elasticsearch/config/jvm.options 文件,在末尾添加

繼續測試上面的鏈接,提示找不到hanlp.properties,hanlp無法加載詞典,elasticsearch退出運行,解決方法:修改 /elasticsearch/bin/elasticsearch.in.sh 文件,將ES_CLASSPATH修改為:

繼續測試上面的鏈接,訪問成功,返回結果

可以看到分詞效果比較好,而且停用詞也被過濾了,大功告成!