我正在尝试设置一个运行由Vagrant上的Puppet提供的ElasticSearch的本地Debian机器集群。
我使用的是官方的木偶模块。http://goo.gl/Z3q1NI中提供了初始化脚本。
资源调配运行时没有任何问题,但ES未启动。
当我运行时:
/etc/init.d/elasticsearch startES服务器未启动
我围绕start命令修改了脚本,试图找出原因:
echo $PATH
start-stop-daemon --start -b --user "$ES_USER" -c "$ES_USER" --pidfile "$PID_FILE" --exec $DAEMON -- $DAEMON_OPTS
echo start-stop-daemon --start -b --user "$ES_USER" -c "$ES_USER" --pidfile "$PID_FILE" --exec $DAEMON -- $DAEMON_OPTS这最终引起了反响:
root@es:~# /etc/init.d/elasticsearch start
[....] Starting Elasticsearch Server:
/bin:/usr/bin:/sbin:/usr/sbin
/sbin/start-stop-daemon --start -b --user elasticsearch -c elasticsearch --pidfile /var/run/elasticsearch.pid --exec /usr/share/elasticsearch/bin/elasticsearch -- -d -p /var/run/elasticsearch.pid -Des.default.config=/etc/elasticsearch/elasticsearch.yml -Des.default.path.home=/usr/share/elasticsearch -Des.default.path.logs=/var/log/elasticsearch -Des.default.path.data=/var/lib/elasticsearch -Des.default.path.work=/tmp/elasticsearch -Des.default.path.conf=/etc/elasticsearch
. ok当我在shell中复制完整的命令行时,服务按预期启动。
该路径看起来没有问题,并且该命令显然在脚本中呈现正确。
我在这个问题上发现了类似的问题,但解决方案涉及脚本中使用的路径或变量的初始问题,在这种情况下,这两者看起来都很好。
发布于 2014-05-22 15:45:21
ES_HEAP_SIZE设置得太高了,超过了我分配给这个流浪汉盒子的数量。通过删除命令中的-b标志,我看到了这一点。
不确定当它直接在shell中运行(在两种情况下都是以根用户身份运行)时,它没有崩溃的确切原因,它可能与/usr/share/elasticsearch/bin/elasticsearch有关。
发布于 2015-02-05 20:28:41
我也遇到过类似的问题(elasticsearch在没有任何日志的情况下无法静默启动),错误的权限不是在配置文件上,而是在包含配置文件的目录上。
https://stackoverflow.com/questions/23793792
复制相似问题