docker-compose安装elasticseach7.11.2

前言

因现在公司大数据场景的需要,为环境搭建了一套es测试集群。之前虽然在上一家公司搭建过集群,可那时还是用的es5。而且是通过tar包进行搭建的。为了提高环境的搭建速度,正好有在使用docker,而且es的docker镜像官方也提供了,遂决定使用docker-compose安装es cluster环境。

参考官网:https://www.elastic.co/guide/en/elasticsearch/reference/7.11/docker.html

一、环境准备工作

按照官网的提示一步步进行,一般不会有问题。
1、首先拉取镜像
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.11.2
2、编辑docker-compose.yml文件
version: ‘2.2’
services:
es01:
image: docker.elastic.co/elasticsearch/elasticsearch:7.11.2
container_name: es01
environment:
- node.name=es01
- cluster.name=es-docker-cluster
- discovery.seed_hosts=es02,es03
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- “ES_JAVA_OPTS=-Xms512m -Xmx512m”
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- data01:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- elastic
es02:
image: docker.elastic.co/elasticsearch/elasticsearch:7.11.2
container_name: es02
environment:
- node.name=es02
- cluster.name=es-docker-cluster
- discovery.seed_hosts=es01,es03
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- “ES_JAVA_OPTS=-Xms512m -Xmx512m”
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- data02:/usr/share/elasticsearch/data
networks:
- elastic
es03:
image: docker.elastic.co/elasticsearch/elasticsearch:7.11.2
container_name: es03
environment:
- node.name=es03
- cluster.name=es-docker-cluster
- discovery.seed_hosts=es01,es02
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- “ES_JAVA_OPTS=-Xms512m -Xmx512m”
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- data03:/usr/share/elasticsearch/data
networks:
- elastic

volumes:
data01:
driver: local
data02:
driver: local
data03:
driver: local

networks:
elastic:
driver: bridge
文件过载地址可以更改,一般会指定data\logs\config这三个目录。如果不做挂载处理,es重启的话会丢失数据。(切记了)
另外,关于java heap的指定,一般会使用jvm.options文件,进行设置
设置 grep vm.max_map_count /etc/sysctl.conf
vm.max_map_count=262144
sysctl -w vm.max_map_count=262144 生效
然后关闭Swapness 设置为0

二、启动集群

执行docker-compose -f xxx/xxxxx/xxx/xxx.yml up -d 创建容器并启动服务。
然后通过docker logs [容器名] 查看日志,如果有报错信息,通常是权限的问题,根据日志内容进行排查。通常不会出现无法理解的bug出现。

三、配置文件

由于本次只是用于测试,所以搭建的仅仅算是伪分布式,而且没做什么优化。/usr/share/elasticsearch/config/elasticsearch.yml 文件中可以配置一些变量,这个在官网都有说明可以参考一下。另外集群的很多参数是通过命令进行生效的,如果想精通es,官网+源码是个不错的方式。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值