Elasticsearch安装以及配置hanlp中文分词插件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch安装以及配置hanlp中文分词插件相关的知识,希望对你有一定的参考价值。
参考技术Aelasticsearch默认开启两个端口: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修改为:
继续测试上面的链接,访问成功,返回结果
可以看到分词效果比较好,而且停用词也被过滤了,大功告成!
elasticsearch 安装hanlp插件
1.HanLP分词器插件下载地址
https://github.com/pengcong90/elasticsearch-analysis-hanlp/releases
下载analysis-hanlp.zip
2.解压到ElasticSearch下plugins目录下
3.配置
修改analysis-hanlp目录下的hanlp.properties文件,修改root的属性,值为analysis-hanlp下的data 目录的地址
修改analysis-hanlp目录下的plugin-descriptor.properties文件,elasticsearch.version=你的es版本号(like:5.5.1)
修改es config目录下的jvm.options文件,最后一行添加
-Djava.security.policy=../plugins/analysis-hanlp/plugin-security.policy
4.HanLP有以下两种分词器
hanlp-index:尽可能的切分多的结果
hanlp-smart:切分少的词
---------------------
原文:https://blog.csdn.net/qwerty1994/article/details/78679072
以上是关于Elasticsearch安装以及配置hanlp中文分词插件的主要内容,如果未能解决你的问题,请参考以下文章
一docker-compose部署elasticsearch+hanlp(7.16.2版本)----附完整镜像