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

    你可能感兴趣的文章
    NI笔试——大数加法
    查看>>
    NLog 自定义字段 写入 oracle
    查看>>
    NLP 基于kashgari和BERT实现中文命名实体识别(NER)
    查看>>
    NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
    查看>>
    NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
    查看>>
    NLP学习笔记:使用 Python 进行NLTK
    查看>>
    NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
    查看>>
    NLP:使用 SciKit Learn 的文本矢量化方法
    查看>>
    Nmap扫描教程之Nmap基础知识
    查看>>
    Nmap端口扫描工具Windows安装和命令大全(非常详细)零基础入门到精通,收藏这篇就够了
    查看>>
    NMAP网络扫描工具的安装与使用
    查看>>
    NMF(非负矩阵分解)
    查看>>
    NN&DL4.1 Deep L-layer neural network简介
    查看>>
    NN&DL4.3 Getting your matrix dimensions right
    查看>>
    NN&DL4.8 What does this have to do with the brain?
    查看>>
    No 'Access-Control-Allow-Origin' header is present on the requested resource.
    查看>>
    NO 157 去掉禅道访问地址中的zentao
    查看>>
    No Datastore Session bound to thread, and configuration does not allow creation of non-transactional
    查看>>
    No fallbackFactory instance of type class com.ruoyi---SpringCloud Alibaba_若依微服务框架改造---工作笔记005
    查看>>
    No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc
    查看>>