博客
关于我
ElasticSearch docker单机部署及常用插件安装
阅读量:784 次
发布时间:2019-03-24

本文共 2026 字,大约阅读时间需要 6 分钟。

部署ElasticSearch环境

部署ElasticSearch

1.1 拉取镜像

需要使用Docker仓库中的ElasticSearch镜像。可以运行以下命令拉取镜像:

docker pull docker.elastic.co/elasticsearch/elasticsearch:7.9.3

如果网络不方便,可以使用镜像助手先下载。注意确保网络连接正常,镜像大小较大。

1.2 运行容器

运行ElasticSearch容器并设置必要的环境变量:

docker run -itd --name es -p 9200:9200 -p 9300:9300 --log-opt max-size=100m --log-opt max-file=3 --restart=unless-stopped -e "discovery.type=single-node" elasticsearch:7.9.3

想了解更多启动参数,可以在ElasticSearch官方文档中查阅。

1.3 配置跨域

默认情况下,ElasticSearch不允许跨域访问,需要手动配置。

进入容器修改配置:

docker exec -it es /bin/bash

进入/config目录:

cd config

编辑elasticsearch.yml文件:

vi elasticsearch.yml

添加以下配置:

http.cors.enabled: true
http.cors.allow-origin: "*"

保存后重启容器:

docker restart es

部署监控工具 - cerebro

2.1 运行容器

运行cerebro监控工具:

docker run -p 9000:9000 lmenezes/cerebro

2.2 配置

在conf/application.conf文件中,可以手动配置ElasticSearch地址:

hosts = [
{
host = "http://localhost:9200"
name = "Some Cluster"
}
]

安装中文插件

3.1 插件下载

从GitHub下载对应版本的插件,比如:

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.9.3/elasticsearch-analysis-ik-7.9.3.zip

3.2 解压文件

在指定目录下解压:

unzip elasticsearch-analysis-ik-7.9.3.zip -d /ik

3.3 安装插件

将插件复制到ElasticSearch容器中:

docker cp /path/to/ikardım.es:/usr/share/elasticsearch/plugins/

重启容器后即可生效:

docker restart es

安装拼音插件

4.1 配置和安装

在Docker容器中安装pinyin插件:

docker exec -it es /bin/bash
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.9.3/elasticsearch-analysis-ik-7.9.3.zip

4.2 测试功能

创建索引并测试分词:

curl -X PUT http://localhost:9200/name_index/ --data '{"mappings":{"properties":{"name":{"type":"text","analyzer":"ik_max_word","search_analyzer":"ik_max_word","fields":{"keyword":{"type":"keyword","ignore_above":256}},"pinyin":{"type":"text","analyzer":"name_analyzer","search_analyzer":"name_analyzer"}}}}'

分词测试:

curl -X GET http://localhost:9200/name_index/_analyze?text="刘德华"&analyzer="name_analyzer"

白盒测试结束后,可以进行性能测试和集群验证。

后续工作

  • 安装ElasticSearch安全插件search-guard,并配置访问权限。
  • 复制ElasticSearch配置到其他节点,完成集群部署。
  • 测试多租户环境下的权限分配和数据隔离。
  • 进行负载测试,优化ElasticSearch性能。
  • 转载地址:http://hnikk.baihongyu.com/

    你可能感兴趣的文章
    python3下使用cv2.imwrite存储带有中文路径图片或者绝对路径图片
    查看>>
    python3与django中@property详解
    查看>>
    python3中如何表示无穷大
    查看>>
    Python3中提示:no module named 'wxpy'
    查看>>
    python3中选择文件对话框的格式打开和保存图片
    查看>>
    python3为什么print永远都是地址_Python3 print 函数用法总结
    查看>>
    Python3之uuid模块
    查看>>
    Python3之写入Excel文档(xlsxwriter)
    查看>>
    Python3之打印操作打印流重定向(下)
    查看>>
    python3判断字典、列表、元组为空以及字典是否存在某个key的方法
    查看>>
    Python3利用pymysql操作 MySQL
    查看>>
    python3处理json文件中含有中文dumps的应用
    查看>>
    Python3子进程输出
    查看>>
    Python3学习笔记3,变量、运算符
    查看>>
    Python3学习笔记(urllib模块的使用)
    查看>>
    python3安装scapy_Linux下安装scapy-python3
    查看>>
    python3实现socket通信
    查看>>
    Python关于numpy.transpose函数详细解析附代码
    查看>>
    Python3导入自定义模块的3种方式
    查看>>
    python3打开txt文件_使用Python 3从文本文件读取句子并添加到列表中
    查看>>