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

    你可能感兴趣的文章
    Mysql8在Windows上离线安装时忘记root密码
    查看>>
    MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
    查看>>
    mysql8的安装与卸载
    查看>>
    MySQL8,体验不一样的安装方式!
    查看>>
    MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
    查看>>
    Mysql: 对换(替换)两条记录的同一个字段值
    查看>>
    mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
    查看>>
    MYSQL:基础——3N范式的表结构设计
    查看>>
    MYSQL:基础——触发器
    查看>>
    Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
    查看>>
    mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
    查看>>
    mysqldump 参数--lock-tables浅析
    查看>>
    mysqldump 导出中文乱码
    查看>>
    mysqldump 导出数据库中每张表的前n条
    查看>>
    mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
    查看>>
    Mysqldump参数大全(参数来源于mysql5.5.19源码)
    查看>>
    mysqldump备份时忽略某些表
    查看>>
    mysqldump实现数据备份及灾难恢复
    查看>>
    mysqldump数据库备份无法进行操作只能查询 --single-transaction
    查看>>
    mysqldump的一些用法
    查看>>