我有一台运行 Ubuntu 14.04 和 220 GB 内存的服务器,我想在上面运行 elasticsearch。根据文档,一个节点的 RAM 不应超过 32 GB,因此我想我必须在这台机器上运行多个节点才能使用所有 RAM。我正在考虑运行 4 个节点,每个节点具有 28 GB 的内存。
我如何将其设置为 ubuntu 服务,以便所有节点在系统重启后自动恢复?我想我必须以某种方式编辑/etc/init.d/elasticsearch - 谁能帮帮我?
非常感谢你们!
最佳答案
一段时间后我放弃了,删除了 elasticsearch 存储库安装并下载了 zip 文件。然后我创建了两个 upstart-jobs,到目前为止一切都很顺利。
- 包装器
description "Start several ES-instances at once (this is a wrapper)."
start on (local-filesystems and net-device-up IFACE!=lo)
stop on runlevel [06]
respawn
# Give up respawn if restart occurs 5 times in 120 seconds
respawn limit 5 120
env NUM_INSTANCES=4
pre-start script
for i in $(seq 1 $NUM_INSTANCES)
do
start elasticsearch-instance ID=$i
done
end script
pre-stop script
curl -XPOST "http://localhost:9200/_cluster/nodes/_local/_shutdown"
end script
- 实例
description "starts up an elasticsearch instance (node)"
stop on stopping elasticsearch
respawn
instance $ID
limit nofile 64000 64000
setuid elasticsearch
setgid elasticsearch
env JAVA_OPTS="-XX:+UseCompressedOops"
env ES_HEAP_SIZE=28G
exec /data/elasticsearch/bin/elasticsearch -Des.config=/data/elasticsearch/config/elasticsearch.yml
关于ubuntu - 在一个 Ubuntu 服务器上将多个 elasticsearch 节点作为服务运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26162690/