目录
elasticsearch安装ik中文分词器-CSDN博客下载镜像
前言
最近,项目需要使用elasticsearch,所以就想快速安装一个使用,最开始是docker安装了7.10.1版本。
后面计划使用Java开发,发现有 RestHighLevelClient 和 Elasticsearch Java API Client两种客户端连接方式。
然后网上查阅了一下:
在elasticsearch版本之后,elasticsearch官方将它的高级客户端RestHighLevelClient标记为弃用状态。同时推出了全新的Java API客户端Elasticsearch Java API Client,该客户端也将在elasticsearch8.0及以后版本中成为官方推荐使用的客户端。
Elasticsearch Java API Client 支持除 Vector tile search API 和 Find structure API 之外的所有 Elasticsearch API。且支持所有API数据类型,并且不再有原始JsonValue属性。它是针对Elasticsearch8.0及之后版本的客户端,目前Elasticsearch已经更新至8.0.1,所以我们需要学习新的Elasticsearch Java API Client的使用方法。
版本选择
一下内容都是基于elasticsearch 7.10.1版本:
安装elasticsearch
参考文档:(文档中包含中文分词器的使用)
elasticsearch安装ik中文分词器-CSDN博客
下载镜像
下载镜像,并将镜像上传到自己的私有仓库 : harbor.nl.com/es/elasticsearch:7.10.1
docker pull elasticsearch:7.10.1
修改系统参数
vi /etc/sysctl.conf
调整参数
vm.max_map_count=262144
刷新参数
sysctl -p
创建相关目录
mkdir -p /data/elk7/elasticsearch/{data,logs,config,plugins}
安装ik中文插件
打开github地址:https://github.com/medcl/elasticsearch-analysis-ik
打开releases页面,下载7.10.1版本
注意:这个版本,必须和elasticsearch对应。
下载完成后,将文件elasticsearch-analysis-ik-7.10.1.zip上传到/opt目录
解压到指定目录
mkdir /data/elk7/elasticsearch/plugins/elasticsearch-analysis-ik
unzip /opt/elasticsearch-analysis-ik-7.10.1.zip -d /data/elk7/elasticsearch/plugins/elasticsearch-analysis-ik
设置文件权限
chmod 777 -R /data/elk7/elasticsearch/
配置文件
内容如下:
vi /data/elk7/elasticsearch/config/elasticsearch.yml
cluster.name: "docker-cluster"
node.name: "master"
network.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"
#设置密码
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.license.self_generated.type: basic
启动elasticsearch
以单例模式启动
启动
docker run -d --name=elasticsearch \
--restart=always \
--privileged \
-p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e "ELASTIC_PASSWORD=123com456" \
-v /data/elk7/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /data/elk7/elasticsearch/data:/usr/share/elasticsearch/data \
-v /data/elk7/elasticsearch/logs:/usr/share/elasticsearch/logs \
-v /data/elk7/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
harbor.nl.com/es/elasticsearch:7.10.1
等待30秒左右,查看docker日志,是否有错误日志
docker logs -f elasticsearch
访问elasticsearch页面,修改对应的ip
http://ip:9200/
注意:这里是挂载的plugins目录,用来存放插件的。
查看插件接口
http://ip:9200/_cat/plugins
输出:
e30bb0e85e63 analysis-ik 7.17.6
说明插件安装成功了。
安装 elasticsearch-head和kibana
Docker安装Elasticsearch及相关插件详细步骤,全程亲测避坑_冰糖码奇朵的博客-CSDN博客
elasticsearch-head
启动时需要如果有密码需要加上密码
-e "http://elastic:changeme@your-es-host:9200"
docker run -d --name elasticsearch-head -p 9108:9100 -e "ES_HOSTS=http://elastic:123com456@172.171.16.134:9200" docker.io/mobz/elasticsearch-head:5-alpine
然后,你可以在浏览器中访问(带着账号密码)
http://172.171.16.134:9108/?auth_user=elastic&auth_password=123com456
来打开 Elasticsearch-Head 界面。你应该能看到你的 Elasticsearch 集群信息。
注意:账号密码不要有 $ % @ 等特殊字符 ,会导致带着账号密码访问的时候无法访问。
kibana
尝试了通过配置文件的方式,没有启动成功
使用下面这种方式
--link=elasticsearch:elasticsearch \
-e ELASTICSEARCH_USERNAME=elastic -e ELASTICSEARCH_PASSWORD=123.com$%^ \
-p 5601:5601 \
可以连接成功
docker run -d \
--name kibana \
--restart=always \
--link=elasticsearch:elasticsearch \
-e ELASTICSEARCH_USERNAME=elastic -e ELASTICSEARCH_PASSWORD=123com456 \
-p 5601:5601 \
harbor.nl.com/es/kibana:7.10.1