【问题标题】:Rabbitmq ignores configuration on Ubuntu 12Rabbitmq 忽略 Ubuntu 12 上的配置
【发布时间】:2012-09-25 18:27:52
【问题描述】:

我在 Ubuntu 12 的系统包中安装了rabbitmq-server,无论我做什么,它似乎都忽略了任何配置文件。

网络上的所有内容都说服务器会查找/etc/rabbitmq/rabbitmq.conf,但即使我创建了该文件,服务器也会报告没有配置:

> /usr/sbin/rabbitmq-server 

node           : rabbit@ip-10-160-149-160
app descriptor : /usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin/../ebin/rabbit.app
home dir       : /var/lib/rabbitmq
config file(s) : (none)

我尝试将RABBITMQ_CONFIG_FILE 设置为指向该文件,但没有效果。

Fwiw,我的 rabbitmq-env.conf 似乎想从 /etc/rabbitmq.conf.d 获取脚本,但这些似乎应该是 bash 脚本,而不是 Erlang 配置。

【问题讨论】:

  • 我尝试在 rabbitmq-env.conf 中设置 CONFIG_FILE 无济于事,尽管在该文件中设置 NODENAME 确实有效,因此服务器正在读取 env 文件。我尝试了“CONFIG_FILE”(正确)和“RABBITMQ_CONFIG_FILE”。两者都没有任何效果。

标签: ubuntu rabbitmq


【解决方案1】:

我终于幸运地完全删除了/etc/rabbitmq/rabbitmq-env.conf。我还注意到 erlang 配置是 rabbitmq.config 而不是 'conf',尽管修复它仍然没有解决问题。

删除rabbitmq-env.conf至少允许服务器找到rabbitmq.config。天哪,真是一团糟。

【讨论】:

  • 同时运行 2.7.1(通过 apt-get)进行快速测试。发现此评论很有帮助,尽管其他人可能会遇到其他问题(例如“访客”没有默认虚拟主机的权限)。
【解决方案2】:

设置 RABBITMQ_CONFIG_FILE 有效,但您应该将其设置为文件名不带 .config 扩展名!这意味着实际文件必须具有扩展名 .config。

我今天浪费了很多时间来解决这个问题。

【讨论】:

  • 在这里工作。 rabbitmq v3.6.1。同样在这样做之后,您需要执行sudo service rabbitmq-server restart 以使这些更改生效。如果您是第一次为 v3.7.0 以下的 rabbitmq 创建配置文件,请使用此示例配置 github.com/rabbitmq/rabbitmq-server/blob/v3.6.x/docs/…
【解决方案3】:

1) RabbitMQ 提供了一个示例配置文件,具体取决于您的发行版,您可以在这些目录中找到它,

  Generic UNIX - $RABBITMQ_HOME/etc/rabbitmq/
    Debian - /etc/rabbitmq/
    RPM - /etc/rabbitmq/
    Mac OS X (Macports) - ${install_prefix}/etc/rabbitmq/, the Macports prefix is usually /opt/local
    Windows - %APPDATA%\RabbitMQ\

2) 为了在 debian 上创建配置文件,我将示例文件移动到 /etc/rabbitmq 目录。

3) 将 rabbitmq.config.example 重命名为 rabbitmq.config

4) 在 rabbitmq-env.conf 中,将 CONFIGFILE 变量分配给上述配置文件的路径,但没有提及文件扩展名(.config)

CONFIGFILE=/etc/rabbitmq/rabbitmq

5) 重启rabbitmq-server。在 debian 上

sudo /etc/init.d/rabbitmq-server start

【讨论】:

    【解决方案4】:

    我成功地将配置放入/etc/rabbitmq/rabbitmq.config。无需删除/etc/rabbitmq/rabbitmq-env.conf

    Ubuntu 12.04 上的 RabbitMQ 2.7.1

    【讨论】:

      【解决方案5】:

      总之 1.tylko rabbitmq.config 文件不带rabbitmq-env.conf 可以工作,但需要重置服务器: /etc/init.d/rabbitmq-server(开始,停止),不要: rabbitmqctl (stop_app、reset、start_app) 2 rabbitmq.config 和 rabbitmq-env.conf 可能是,但是: 在 RabbitMQ-env.conf 中必须指定路径: CONFIG_FILE = /etc/rabbitmq/rabbitmq 没有配置分机!

      至少对我来说:) Debian 7.0 兔子 3.1 erl 1.15

      【讨论】:

      • 谢谢。我在config docs 中很清楚 env var 值应该排除配置 ext
      【解决方案6】:

      总之
      1. 只有没有rabbitmq-env.conf的rabbitmq.config文件有效,但需要重置服务器:/etc/init.d/rabbitmq-server (start, stop),不要:rabbitmqctl (stop_app, reset, start_app)
      2.rabbitmq.config and rabbitmq-env.conf可能是,但是:在rabbitmq-env.conf中必须指定路径:CONFIG_FILE = /etc/rabbitmq/rabbitmq不带config ext!

      至少对我来说 :) Debian 7.0 Rabbit 3.1 erl 1.15

      【讨论】:

        【解决方案7】:
        1. 创建rabbitmq-env.conf: echo CONFIG_FILE=/etc/rabbitmq/my-rabbitmq.conf > /etc/rabbitmq/rabbitmq-env.conf
        2. 下载systcl模式配置文件: wget https://raw.githubusercontent.com/rabbitmq/rabbitmq-server/master/docs/rabbitmq.conf.example -O /etc/rabbitmq/my-rabbitmq.conf
        3. 重启服务器: systemctl restart rabbitmq-server.service
        4. 观察日志变化: tail -n 50 /var/log/rabbitmq/rabbit@rabbitmq.log|head -n 20
        5. 查看结果 my-rabbitmq.conf result

        查看更多:https://www.rabbitmq.com/configure.html#customise-environment

        【讨论】:

          猜你喜欢
          • 2014-05-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-07-20
          • 2015-08-31
          相关资源
          最近更新 更多