首页 > IT基础架构 > > elastic search集群配置
通过docker可以快速在一个host上面,搭建多节点cluster 环境。 创建如下两个节点
docker pull elasticsearch
docker run -d --name es-node2 -p 9200:9200 -v ~/docker/es-node2:/home/alex elasticsearch
docker run -d --name es-node3 --link es-node2 -v ~/docker/es-node3:/home/alex elasticsearch es-node2作为主node,es-node3作为从node
➜ ~ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fa8816f65854 elasticsearch "/docker-entrypoint.s" 34 minutes ago Up 3 seconds 9200/tcp, 9300/tcp es-node3
44a8cfc9fce1 elasticsearch "/docker-entrypoint.s" 36 minutes ago Up 5 seconds 0.0.0.0:9200->9200/tcp, 9300/tcp es-node2
配置elasticsearch.yml
进去Mac主机的映射目录,配置elasticsearch.yml
➜ ~ cd es-node2
➜ ~ cat elasticsearch.yml
加入
cluster.name: "cluster"
node.name: node-2
node.master: true
node.data: true
network.host: 0.0.0.0
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["172.17.0.2", "172.17.0.3"]
discovery.zen.minimum_master_nodes: 1
discovery.zen.ping.timeout: 3s
➜ ~ cd es-node3
➜ ~ cat elasticsearch.yml
加入
cluster.name: "cluster"
node.name: node-3
node.master: true
node.data: true
network.host: 0.0.0.0
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["172.17.0.2", "172.17.0.3"]
discovery.zen.minimum_master_nodes: 1
discovery.zen.ping.timeout: 3s
拷贝配置文件:
进入es-node2
➜ ~ bash -c "clear && DOCKER_HOST=tcp://192.168.99.100:2376 DOCKER_CERT_PATH=/Users/alex/.docker/machine/machines/default DOCKER_TLS_VERIFY=1 docker exec -it es-node2 sh"
# cp /home/alex/elasticsearch.yml /usr/share/elasticsearch/config
进入es-node3
➜ ~ bash -c "clear && DOCKER_HOST=tcp://192.168.99.100:2376 DOCKER_CERT_PATH=/Users/alex/.docker/machine/machines/default DOCKER_TLS_VERIFY=1 docker exec -it es-node3 sh"
# cp /home/alex/elasticsearch.yml /usr/share/elasticsearch/config
重启服务:
➜ ~ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e964e232c2d1 elasticsearch "/docker-entrypoint.s" 54 minutes ago Up 6 minutes 9200/tcp, 9300/tcp es-node3
18b936f6b729 elasticsearch "/docker-entrypoint.s" 54 minutes ago Up 6 minutes 0.0.0.0:9200->9200/tcp, 9300/tcp es-node2
分别重启container
➜ ~ docker restart 18b936f6b729
➜ ~ docker restart e964e232c2d1
http://192.168.99.100:9200/_cluster/health?pretty

可以看到如下信息: 两个node,作为data_nodes
"number_of_nodes" : 2,
"number_of_data_nodes" : 2,进入两个node,通过如下命令安装kopf插件,
root@44a8cfc9fce1:/# /usr/share/elasticsearch/bin/plugin install lmenezes/elasticsearch-kopf/v2.0.1

未完...
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31509949/viewspace-3167583/ ,如需转载,请注明出处,否则将追究法律责任。