博客
关于我
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/

    你可能感兴趣的文章
    mysql 死锁(先delete 后insert)日志分析
    查看>>
    MySQL 死锁了,怎么办?
    查看>>
    MySQL 深度分页性能急剧下降,该如何优化?
    查看>>
    MySQL 深度分页性能急剧下降,该如何优化?
    查看>>
    MySQL 添加列,修改列,删除列
    查看>>
    mysql 添加索引
    查看>>
    MySQL 添加索引,删除索引及其用法
    查看>>
    mysql 状态检查,备份,修复
    查看>>
    MySQL 用 limit 为什么会影响性能?
    查看>>
    MySQL 用 limit 为什么会影响性能?有什么优化方案?
    查看>>
    MySQL 用户权限管理:授权、撤销、密码更新和用户删除(图文解析)
    查看>>
    mysql 用户管理和权限设置
    查看>>
    MySQL 的 varchar 水真的太深了!
    查看>>
    mysql 的GROUP_CONCAT函数的使用(group_by 如何显示分组之前的数据)
    查看>>
    MySQL 的instr函数
    查看>>
    MySQL 的mysql_secure_installation安全脚本执行过程介绍
    查看>>
    MySQL 的Rename Table语句
    查看>>
    MySQL 的全局锁、表锁和行锁
    查看>>
    mysql 的存储引擎介绍
    查看>>
    MySQL 的存储引擎有哪些?为什么常用InnoDB?
    查看>>