12

我使用自制软件安装了rabbitmq。我正在尝试启动rabbitmq服务器,但我总是收到这个错误,我无法弄清楚为什么!

我已经安装了 erlang,并且没有在同一个端口上运行其他应用程序。

$rabbitmq 服务器
{error_logger,{{2013,2,11},{22,37,49}},"无法设置短节点名!\n请检查您的配置\n",[]}
{error_logger,{{2013,2,11},{22,37,49}},crash_report,[[{initial_call,{net_kernel,init,['Argument__1']}},{pid,},{registered_name,[ ]},{error_info,{exit,{error,badarg},[{gen_server,init_it,6,[{file,"gen_server.erl"},{line,320}]},{proc_lib,init_p_do_apply,3,[ {file,"proc_lib.erl"},{line,227}]}]}},{ancestors,[net_sup,kernel_sup,]},{messages,[]},{links,[]},{dictionary,[ {longnames,false}]},{trap_exit,true},{status,running},{heap_size,610},{stack_size,24},{reductions,249}],[]]}
{error_logger,{{2013,2,11},{22,37,49}},supervisor_report,[{supervisor,{local,net_sup}},{errorContext,start_error},{reason,{'EXIT',nodistribution} },{offender,[{pid,undefined},{name,net_kernel},{mfargs,{net_kernel,start_link,[[rabbitmqprelaunch1593,shortnames]]}},{restart_type,permanent},{shutdown,2000},{child_type ,工人}]}]}
{error_logger,{{2013,2,11},{22,37,49}},supervisor_report,[{supervisor,{local,kernel_sup}},{errorContext,start_error},{reason,shutdown},{offender,[ {pid,undefined},{name,net_sup},{mfargs,{erl_distribution,start_link,[]}},{restart_type,permanent},{shutdown,infinity},{child_type,supervisor}]}]}
{error_logger,{{2013,2,11},{22,37,49}},std_info,[{application,kernel},{exited,{shutdown,{kernel,start,[normal,[]]}}} ,{类型,永久}]}
{"内核 pid 终止",application_controller,"{application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}}"}

崩溃转储被写入:erl_crash.dump
内核 pid 终止 (application_controller) ({application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}})

顺便说一句,erl -sname abc给出相同的输出

更新

这就是我所拥有的/etc/hosts

127.0.0.1 本地主机
255.255.255.255 广播主机
4

6 回答 6

3

检查您的计算机名称和 /etc/hosts 中的短主机名或别名,匹配此

  • 检查您的计算机名称[wendy@nyc123]$

    nyc123 是您的计算机名称
  • 检查您的短主机名

    [wendy@nyc123]$ 主机名 -s

    [wendy@nyc123]$ nyc456

由于您的计算机名称和短主机名不匹配,可能会发生此错误。要匹配此,您可以更改计算机主机名或别名。

  • 更改计算机主机名

    [wendy@nyc123]$ 主机名 nyc456

    关闭您的终端并再次打开

    [温迪@nyc456]$

    计算机名称已更改

或者

  • 更改 /etc/hosts 中的别名

    127.0.0.1 nyc123.com nyc123

    保存并再次检查

    [wendy@nyc123]$ 主机名 -s

    [wendy@nyc123]$ nyc123

重启你的rabbitmq!

[root@nyc123]$ rabbitmq-server start</p>


    RabbitMQ 3.6.0. Copyright (C) 2007-2015 Pivotal Software, Inc.</p>
##  ##      Licensed under the MPL.  See http://www.rabbitmq.com/</p>
##  ##</p>
##########  Logs: /var/log/rabbitmq/rabbitmq@nyc123.com.log</p>
######  ##        /var/log/rabbitmq/rabbitmq@nyc123.com-sasl.log</p>
##########</p>
          Starting broker... completed with 6 plugins.</p>
于 2015-12-30T07:30:05.023 回答
2

I looked for a similar error on google, and it looks like it can happen if your /etc/hosts file is in the wrong format. Try fixing it and see if that helps.

References:


Edit: For completeness, it seems like setting a long name (of the form abc@abc) worked.

于 2013-02-11T22:49:47.283 回答
1

我昨天也遇到了这个问题,找到了根本原因:我将系统的主机名更改为“长”名称,pm3(hc desktop)。

如果您的服务器的主机名过长或无效,Linux 仍然可以工作,并且不会向您提示错误消息。因为您只需修改 /etc/hostname 文件并重新启动。但是,rabbitmq 服务器可能无法工作,并给您这个“短名称”错误消息。

我将主机名改回“pm3”,重新启动,一切顺利。

于 2014-08-27T01:24:23.533 回答
1

在这里找到了答案: 控制 rabbitmq 'name' not 'sname'

将您的机器名称设置为简单的名称,并使其成为 locahost 的别名

于 2014-01-13T07:02:50.270 回答
0

我解决了更改计算机名称的问题(在 Windows 8.1 上)。问题是这个名字有一个奇怪的字符 (é) 西班牙字母。我的计算机名称是 Andrés,我将其更改为 Andres,重新启动计算机,一切正常。我认为兔子无法识别那个奇怪角色的名字(安德烈斯)。

于 2018-02-25T21:34:46.207 回答
0

删除旧式配置文件 /etc/rabbitmq/rabbitmq.config 并使用 rabbitmq.conflisteners.tcp.default = 5672 之后再次重新启动 rabbitmq 服务器在我的情况下解决了 ec2 实例中的问题

于 2018-09-25T15:54:35.533 回答