gpt4 book ai didi

linux - Vagrant/Debian/Puppet/Elasticsearch init.d start-stop-daemon 不会启动服务

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:09:18 27 4
gpt4 key购买 nike

我正在尝试设置一个运行 ElasticSearch 的本地 Debian 集群集群,该集群由 Vagrant 上的 Puppet 提供。

我正在使用官方的 puppet 模块。初始化脚本可在此处获得 http://goo.gl/Z3q1NI .

配置运行没有任何问题,但 ES 未启动。

当我运行时:

/etc/init.d/elasticsearch start

ES服务器没有启动

我修改了启动命令周围的脚本以尝试找出原因:

    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 中复制完整的命令行时,服务会按预期启动。

PATH 看起来不错,命令显然在脚本中正确呈现。

我发现了类似的问题,但解决方案涉及 PATH 或脚本中使用的变量的初始问题,在这种情况下看起来都不错。

最佳答案

ES_HEAP_SIZE 设置得太高,超过了我分配给这个 vagrant box 的值。我通过删除命令中的 -b 标志看到了这一点。

不确定为什么直接在 shell 中运行(在两种情况下都以 root 身份运行)时它没有中断,它可能与 /usr/share/elasticsearch/bin/elasticsearch.

关于linux - Vagrant/Debian/Puppet/Elasticsearch init.d start-stop-daemon 不会启动服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23793792/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com