APP下载
报价宝  ›  科技  › 

Docker + Elasticsearch 丛集环境搭建

报价宝 来源:baojiabao.com 发布时间:2019-08-04 04:47:00 10月25日更新
报价宝综合消息Docker + Elasticsearch 丛集环境搭建

执行

先用docker分别启动两个es服务,由于后面需要进行配置,这里假设es1所在的机器公网ip为:123.11.23.1,es2所在机器ip:123.11.23.2

# 执行ES1

docker run --name es1 -e "ES_JAVA_OPTS=-Xms128m -Xmx128m" -d -p 9200:9200 -p 9300:9300 docker.elastic.co/elasticsearch/elasticsearch-oss:6.3.2

# 执行ES2

docker run --name es2 -e "ES_JAVA_OPTS=-Xms128m -Xmx128m" -d -p 19200:9200 -p 19300:9300 docker.elastic.co/elasticsearch/elasticsearch-oss:6.3.2

启动的时候指定了jvm引数,此外还可以通过编辑config/jvm.options配置档案进行引数调整。

测试命令:curl localhost:9200 && curl localhost:19200,注意到响应字段cluster_name,不出意料预设应该都是docker-cluster,然后两个es例项对应的name应该不同(随机分配)。

欢迎工作一到五年的Java工程师朋友们加入Java架构开发:828697593

本群提供免费的学习指导 架构资料 以及免费的解答

不懂得问题都可以在本群提出来 之后还会有职业生涯规划以及面试指导

同时大家可以多多关注一下小编 纯干货 大家一起学习进步

配置

Elasticsearch丛集环境由多个节点(es例项)之间互相发现并组成,因此核心关键就是正确配置,而主要的配置档案也仅有config/elasticsearch.yml。基于Docker启动服务的时候可以选择将配置目录(或档案)挂载出来,但这里并没有这么做,所以还可以进入到容器内部进行操作,以es1为例:

# 进入es1

docker exec -it es1 bash

# 编辑config目录下的elasticsearch.yml

vi config/elasticsearch.yml

下图Elasticsearch v6.3.2中的配置项较于低版本可是精简了很多(约定大于配置),由于本文仅介绍ES丛集的搭建,所以详尽的配置说明可以参考这里。

elasticsearch.yml

简单起见,本示例就不修改cluster.name这个配置项了,一个es丛集首先就是要保证各节点该配置的相同,还有一个配置属性:node.name,这里应该设定成更为容易理解的节点名称。

接着继续贴上两项配置,这也是让节点之间相互发现的关键所在:

# 当前机器公网ip

network.publish_host: 123.11.23.1

# 其它节点的位置

discovery.zen.ping.unicast.hosts: ["123.11.23.2:19300"]

总之,参考上述说明,根据实际情况分别配置好两个es例项,最后重启例项即可:

docker restart es1 && docker restart es2

测试

以下列出的几种方式都可以检视丛集状态:

检视日志:docker logs -f es1节点资讯:curl http://localhost:9200/_nodes?prettynodes

丛集健康:curl http://localhost:9200/_cluster/healthcluster health

外挂elasticsearch-headelasticsearch-head

竟然都看到最后了,给小编点个关注吧,小编还会持续更新的,只收藏不点关注的都是在耍流氓!

828697593

文章标签: 报价宝 降噪耳机价格 耳机价格 红米手机价格 华为手机价格 小米手机价格 电视机价格 笔记本电脑价格 笔记本价格 汽车价格 数码相机价格 手机价格 笔记本电脑价格 小米手机价格 红米手机价格