docker pull itzg/elasticsearch:latest
cd /home/docker
mkdir -p es/data1 es/data2 es/data3
二.创建ElasticSearch配置文件
在centos窗口中,使用vim命令分别创建如下文件:es1.yml,es2.yml,es3.yml
es1.yml
cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 192.168.60.126
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.60.126:9300","192.168.60.126:9301","192.168.60.126:9302"]
discovery.zen.minimum_master_nodes: 2
es2.yml
cluster.name: elasticsearch-cluster
node.name: es-node2
network.bind_host: 0.0.0.0
network.publish_host: 192.168.60.126
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.60.126:9300","192.168.60.126:9301","192.168.60.126:9302"]
discovery.zen.minimum_master_nodes: 2
es3.yml
cluster.name: elasticsearch-cluster
node.name: es-node3
network.bind_host: 0.0.0.0
network.publish_host: 192.168.60.126
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.60.126:9300","192.168.60.126:9301","192.168.60.126:9302"]
discovery.zen.minimum_master_nodes: 2
注:本机虚拟机ip:192.168.9.219 读者请自行更改
启动ElasticSearch集群容器
在centos窗口中,执行如下命令:
[root@centos1 es]# docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9200:9200 -p 9300:9300 -v /home/docker/es/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/docker/es/data1:/usr/share/elasticsearch/data --name es01 itzg/elasticsearch:latest
[root@centos1 es]# docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9201:9201 -p 9301:9301 -v /home/docker/es/config/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/docker/es/data2:/usr/share/elasticsearch/data --name es02 itzg/elasticsearch:latest
[root@centos1 es]# docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9202:9202 -p 9302:9302 -v /home/docker/es/config/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/docker/es/data3:/usr/share/elasticsearch/data --name es03 itzg/elasticsearch:latest
注:设置-e ES_JAVA_OPTS="-Xms256m -Xmx256m" 是因为/etc/elasticsearch/jvm.options 默认jvm最大最小内存是2G,读者启动容器后 可用docker stats命令查看
四、验证是否搭建成功
1.在浏览器地址栏访问http://192.168.60.126:9200/_cat/nodes?pretty 查看节点状态
注:节点名称带表示为主节点*
2.使用elasticsearch-head前端框架
1.拉取镜像
docker pull mobz/elasticsearch-head:5
2.启动容器
docker run -d -p 9100:9100 --name es-manager mobz/elasticsearch-head:5
3.浏览器访问http://192.168.60.126:9100/
写在最后,这里要多提一点索引分片设置以及副本,官方推荐设置,读者根据自身需要进行修改:
curl -XPUT 'http://localhost:9200/_all/_settings?preserve_existing=true' -d '{
"index.number_of_replicas" : "1",
"index.number_of_shards" : "10"
}'
————————————————
原文链接:https://blog.csdn.net/belonghuang157405/article/details/83301937