docker部署elasticsearch集群

天大地大妈咪最大 提交于 2020-10-27 16:23:29

昨天有个伙伴一直想让我写个搭建elasticsearch集群的文章,由于时间有限,用docker部署了一把,不多说了,直接上安装配置吧。

1、拉取镜像

docker pull elasticsearch:5.6

2、创建配置文件路径及data存放路径

cd /home/dingzhen

mkdir -p ES/config

cd ES

mkdir data1  data2 data3

4、集群配置文件

在ES/config/路径下创建配置文件并配置

es1.yml文件

cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 192.168.111.129
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.111.129:9300","192.168.111.129:9301","192.168.111.129:9302"]
discovery.zen.minimum_master_nodes: 2


es2.yml文件

cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 192.168.111.129
http.port: 9201
transport.tcp.port: 9301
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.111.129:9300","192.168.111.129:9301","192.168.111.129:9302"]
discovery.zen.minimum_master_nodes: 2


es3.yml文件

cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 192.168.111.129
http.port: 9202
transport.tcp.port: 9302
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.111.129:9300","192.168.111.129:9301","192.168.111.129:9302"]
discovery.zen.minimum_master_nodes: 2

5、启动集群

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 -v /home/dingzhen/ES/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/dingzhen/ES/data1:/usr/share/elasticsearch/data --name ES01 elasticsearch:5.6
 
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9201:9201 -p 9301:9301 -v /home/dingzhen/ES/config/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/dingzhen/ES/data2:/usr/share/elasticsearch/data --name ES02 elasticsearch:5.6

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9202:9202 -p 9302:9302 -v /home/dingzhen/ES/config/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/dingzhen/ES/data3:/usr/share/elasticsearch/data --name ES03 elasticsearch:5.6

6、连接集群测试

浏览器:

http://192.168.111.129:9200/_cat/nodes?pretty

或者使用的elasticsearch-head.crx插件连接集群

出现如下界面,集群部署成功!

 

 

附录扩展:
1、docker 停止和删除所有容器:docker stop $(docker ps -q) & docker rm $(docker ps -aq)
 
2、ERROR: [1] bootstrap checks failed
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
 
vi /etc/sysctl.conf 

添加下面配置:

vm.max_map_count=655360
  • 执行
sysctl -p
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!