We have to use 3 old servers as Elasticsearch cluster. Each server is
CPU(s): 32
Thread(s) per core: 2
Model name: Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz
Memory: 94GB
Disk: 4x1,5TB SSD + 25TB HDD
Could you advice the best practice how to utilise the most performance and reliability out of these 3 boxes (and may be more are comming in future)
We were thinking of having 3 docker containers on each physical node = total 9 elastic nodes in elastic cluster. But I have issue that nodes on different hosts do not see each other. (detail code below - any help appretiated)
However , is it a good idea to use Docker for production wouldn't be better to use each physical node as Elastic node? Or shall we split the host by VMvare into multiple VM? What would be the best recommended approach?
Thank you for yor advices. .
3 docker containers started on first physical host works OK (estabilished a cluster of 3 nodes) but we are unable to start another docker container on second host . The docker is started but unable to join cluster on 1st host. I havent found much threads resolving this issue.
this is the code we run the cluster on first host (and it is working) but 4th node (node03) on second host we cant configure to estabilish connection with cluster on host1. Trying overlay network etc,,..
docker run -d --restart=always -p 9200:9200 -p 9300:9300 --name es-node0 --network es-net --cpuset-cpus="0-7" --cap-add=IPC_LOCK --ulimit nofile=65536:65536 --ulimit memlock=-1:-1 -v /mnt/ssd1/esdata1:/usr/share/elasticsearch/data -e cluster.name=docker-cluster -e bootstrap.memory_lock=true -e http.cors.enabled=true -e http.cors.allow-origin=* -e "ES_JAVA_OPTS=-Xms24g -Xmx24g" -e Des.bootstrap.mlockall=true -e Des.network.host=bond0 -e Des.discovery.zen.ping.multicast.enabled=false elasticsearch:6.8.0
docker run -d --restart=always -p 9201:9200 -p 9301:9300 --name es-node1 --network es-net --cpuset-cpus="8-15" --cap-add=IPC_LOCK --ulimit nofile=65536:65536 --ulimit memlock=-1:-1 -v /mnt/ssd2/esdata2:/usr/share/elasticsearch/data -e cluster.name=docker-cluster -e bootstrap.memory_lock=true -e http.cors.enabled=true -e http.cors.allow-origin=* -e "ES_JAVA_OPTS=-Xms24g -Xmx24g" -e Des.bootstrap.mlockall=true -e Des.network.host=bond0 -e Des.discovery.zen.ping.multicast.enabled=false -e discovery.zen.ping.unicast.hosts="es-node0" elasticsearch:6.8.0
docker run -d --restart=always -p 9202:9200 -p 9302:9300 --name es-node2 --
network es-net --cpuset-cpus="24-31" --cap-add=IPC_LOCK --ulimit nofile=65536:65536 --ulimit memlock=-1:-1 -v /mnt/ssd3/esdata3:/usr/share/elasticsearch/data -e cluster.name=docker-cluster -e bootstrap.memory_lock=true -e http.cors.enabled=true -e http.cors.allow-origin=* -e "ES_JAVA_OPTS=-Xms24g -Xmx24g" -e Des.bootstrap.mlockall=true -e Des.network.host=bond0 -e Des.discovery.zen.ping.multicast.enabled=false -e discovery.zen.ping.unicast.hosts="es-node0" elasticsearch:6.8.0docker run -d --restart=always -p 9203:9200 -p 9303:9300 --name es-node3 --network es-net --cpuset-cpus="8-15" --cap-add=IPC_LOCK --ulimit nofile=65536:65536 --ulimit memlock=-1:-1 -v /mnt/ssd1/esdata1:/usr/share/elasticsearch/data -e cluster.name=docker-cluster -e bootstrap.memory_lock=true -e http.cors.enabled=true -e http.cors.allow-origin=* -e "ES_JAVA_OPTS=-Xms24g -Xmx24g" -e Des.bootstrap.mlockall=true -e Des.network.host=bond0 -e Des.discovery.zen.ping.multicast.enabled=false -e discovery.zen.ping.unicast.hosts="10.2.46.21:9300" elasticsearch:6.8.0