使用Docker快速安装部署ES和Kibana并配置IK中文分词器以及自定义分词拓展词库

使用Docker快速安装部署ES和Kibana的前提:首先需要确保已经安装了Docker环境

如果没有安装Docker的话,可以参考上一篇的内容:Linux上安装Docker

有了Docker环境后,就可以使用Docker安装部署ES和Kibana了

一、安装部署ES和Kibana

1、下载ealastic search和kibana(es的可视化管理页面)

 
  1. docker pull elasticsearch:7.6.2

  2. docker pull kibana:7.6.2

2、配置

 
  1. mkdir -p /mydata/elasticsearch/config

  2. mkdir -p /mydata/elasticsearch/data

  3. echo "http.host: 0.0.0.0" >/mydata/elasticsearch/config/elasticsearch.yml

  4. chmod -R 777 /mydata/elasticsearch/

3、启动ES

注意:下边这个启动es的命令,一定要设置占用的内存,不设置的话,es一启动就把虚拟机的整个内存耗尽了,会死机!!!

 
  1. docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \

  2. -e "discovery.type=single-node" \

  3. -e ES_JAVA_OPTS="-Xms64m -Xmx512m" \

  4. -v/mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \

  5. -v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \

  6. -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \

  7. -d elasticsearch:7.6.2

设置开机启动ES

docker update elasticsearch --restart=always

4、启动Kibana

docker run --name kibana -e ELASTICSEARCH_HOSTS=http://192.168.56.10:9200 -p 5601:5601 -d kibana:7.6.2

设置开机启动Kibana

docker update kibana --restart=always

5、测试

浏览器输入:http://192.168.xx.xx:9200,看到以下页面说明ES部署成功

浏览器输入:http://192.168.xx.xx:5601,看到以下页面说明Kibana部署成功

二、配置IK中文分词器

安装好ES和Kibana后,进入Kibana操作页面,使用ES默认的分词器来试一下,中文的分词效果

可以看到ES自带的分词器,它是简单的把每个汉字进行了分词,这肯定不是我们想要的效果

所以,我们需要自己来配置一下对中文分词支持比较好的IK分词器

IK分词器插件下载:https://pan.baidu.com/s/1Ie2fPooSd8QK8DLNQR-XbA   提取码:vszn

 
  1. cd /mydata/elasticsearch/plugins 进入plugins目录

  2. 然后在es的 plugins目录下

  3. mkdir ik 新建一个名字叫 ik 的文件夹

  4. 将下载的ik分词器插件压缩包上传到ik文件夹下,然后解压zip 就ok了

  5.  
  6. 最后给一下ik文件夹的权限 chmod -R 777 /mydata/elasticsearch/plugins/ik

  7.  
  8. 安装好后,检查下是否安装成功了

  9. 使用docker exec -it elasticsearch /bin/bash  命令 进入容器内部

  10. 进入容器的 cd /usr/share/elasticsearch/bin 目录

  11. 执行 elasticsearch-plugin list 命令(列出es安装的所有插件)

  12. 如果列出了 ik 就说明es的ik中文分词器安装成功了 

  13.  
  14. 装好ik分词器后,记得重启ES容器

  15. docker restart elasticsearch

配置好IK分词器后,再来用IK分词器看下效果

可以看到IK分词器对我们的中文进行了比较理想的分词

三、配置自定义分词拓展词库

IK分词器对中文有比较好的分词效果,但是它并不能对当前比较热门的网络流行词或者一些新的词进行分词处理

上图可以看到,IK分词器并不支持某一些词汇的分词处理

所以,我们需要配置一下自定义的分词拓展词库,来支持热门的网络流行词或新词。

1、配置自定义词库需要nginx的支持,首先需要安装好nginx

如果没有安装nginx的话,可以参考这个:使用Docker快速安装部署nginx

2、安装后nginx后,下边开始配置自定义的分词拓展词库

 
  1. [root@192 ~]# cd /mydata/nginx/html/

  2. [root@192 html]#

  3. [root@192 html]# mkdir es

  4. [root@192 html]# cd es

  5. [root@192 html]# vi fenci.txt

在/mydata/nginx/html/ 目录下新建一个es文件夹,然后新建一个fenci.txt的文件,在里边写需要支持分词的词汇,然后保存

3、配置IK的拓展词库

 
  1. cd /mydata/elasticsearch/plugins/ik/config

  2. vim IKAnalyzer.cfg.xml

  3.  
  4. #把里边注释掉的这一句打开并配置成你分词文本所在的nginx访问地址

  5. <!--用户可以在这里配置远程扩展字典 -->

  6. <entry key="remote_ext_dict">http://192.168.xx.xx/es/fenci.txt</entry>

4、重启ES容器

docker restart elasticsearch

重启后,再来看下效果

可以看到已经可以按照自定义的分词拓展词库来进行分词了

ES的一些基本配置就讲到这,如果觉得对你有帮助的话,可以点赞,或者点下关注,也欢迎在下方留言讨论

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值