我通过apt-get在ubuntu 12.04.2 LTS上安装了新的RabbitMQ 3.1.3,并尝试在同一台服务器上启动使用者,但我有连接问题:
[PhpAmqpLib\Exception\AMQPRuntimeException] Error Connecting to server(113): No route to host有工作服务器的状态:
Status of node rabbit@ns1 ... [{pid,2106}, {running_applications,[{rabbit,"RabbitMQ","3.1.3"}, {mnesia,"MNESIA CXC 138 12","4.5"}, {os_mon,"CPO CXC 138 46","2.2.7"}, {xmerl,"XML parser","1.2.10"}, {sasl,"SASL CXC 138 11","2.1.10"}, {stdlib,"ERTS CXC 138 10","1.17.5"}, {kernel,"ERTS CXC 138 10","2.14.5"}]}, {os,{unix,linux}}, {erlang_version,"Erlang R14B04 (erts-5.8.5) [source] [64-bit] [smp:4:4] [rq:4] [async-threads:30] [kernel-poll:true]\n"}, {memory,[{total,27728944}, {connection_procs,2704}, {queue_procs,5408}, {plugins,0}, {other_proc,9021680}, {mnesia,60016}, {mgmt_db,0}, {msg_index,31144}, {other_ets,770736}, {binary,1968}, {code,14560395}, {atom,1356081}, {other_system,1918812}]}, {vm_memory_high_watermark,0.4}, {vm_memory_limit,1262847590}, {disk_free_limit,1000000000}, {disk_free,214706556928}, {file_descriptors,[{total_limit,924}, {total_used,3}, {sockets_limit,829}, {sockets_used,1}]}, {processes,[{limit,1048576},{used,125}]}, {run_queue,0}, {uptime,1265}] ...done.我对iptables(ports)没有任何限制:
Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination而etc/hosts是可以的。
127.0.0.1 localhost {IP-ADDRESS} ns1.***.org ns1 # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters我做错了吗?
UPD: sudo netstat -nlp | grep 5672 sudo netstat -nlp | grep 5672返回: tcp6 0 0 :::5672 :::* LISTEN 2106/beam.smp
来自rabbitMQ日志:
=INFO REPORT==== 2-Jul-2013::16:05:11 === started TCP Listener on [::]:5672 =INFO REPORT==== 2-Jul-2013::16:05:11 === Server startup complete; 0 plugins started. =INFO REPORT==== 2-Jul-2013::16:35:04 === accepting AMQP connection <0.1130.0> (127.0.0.1:44112 -> 127.0.0.1:5672) =ERROR REPORT==== 2-Jul-2013::16:35:14 === closing AMQP connection <0.1130.0> (127.0.0.1:44112 -> 127.0.0.1:5672): {handshake_timeout,handshake}我试图将localhost更改为ip6-localhost ,有时在尝试启动使用者时,它会返回:
[PhpAmqpLib\Exception\AMQPRuntimeException] Error Connecting to server(110): Connection timed outUPD2如果我使用调试标志和--env=prod ( php .../app/console rabbitmq:consumer -w -d consumer_name )启动php .../app/console rabbitmq:consumer -w -d consumer_name ,则消费者启动并工作。
I installed fresh RabbitMQ 3.1.3 on ubuntu 12.04.2 LTS by apt-get, and try to start consumers on the same server, but I have connection problem:
[PhpAmqpLib\Exception\AMQPRuntimeException] Error Connecting to server(113): No route to hostThere is status of working server:
Status of node rabbit@ns1 ... [{pid,2106}, {running_applications,[{rabbit,"RabbitMQ","3.1.3"}, {mnesia,"MNESIA CXC 138 12","4.5"}, {os_mon,"CPO CXC 138 46","2.2.7"}, {xmerl,"XML parser","1.2.10"}, {sasl,"SASL CXC 138 11","2.1.10"}, {stdlib,"ERTS CXC 138 10","1.17.5"}, {kernel,"ERTS CXC 138 10","2.14.5"}]}, {os,{unix,linux}}, {erlang_version,"Erlang R14B04 (erts-5.8.5) [source] [64-bit] [smp:4:4] [rq:4] [async-threads:30] [kernel-poll:true]\n"}, {memory,[{total,27728944}, {connection_procs,2704}, {queue_procs,5408}, {plugins,0}, {other_proc,9021680}, {mnesia,60016}, {mgmt_db,0}, {msg_index,31144}, {other_ets,770736}, {binary,1968}, {code,14560395}, {atom,1356081}, {other_system,1918812}]}, {vm_memory_high_watermark,0.4}, {vm_memory_limit,1262847590}, {disk_free_limit,1000000000}, {disk_free,214706556928}, {file_descriptors,[{total_limit,924}, {total_used,3}, {sockets_limit,829}, {sockets_used,1}]}, {processes,[{limit,1048576},{used,125}]}, {run_queue,0}, {uptime,1265}] ...done.I don't have any limitations by iptables (ports):
Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destinationAnd etc/hosts is OK.
127.0.0.1 localhost {IP-ADDRESS} ns1.***.org ns1 # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allroutersWhay I'm doing wrong?
UPD: sudo netstat -nlp | grep 5672 returns: tcp6 0 0 :::5672 :::* LISTEN 2106/beam.smp
From rabbitMQ logs:
=INFO REPORT==== 2-Jul-2013::16:05:11 === started TCP Listener on [::]:5672 =INFO REPORT==== 2-Jul-2013::16:05:11 === Server startup complete; 0 plugins started. =INFO REPORT==== 2-Jul-2013::16:35:04 === accepting AMQP connection <0.1130.0> (127.0.0.1:44112 -> 127.0.0.1:5672) =ERROR REPORT==== 2-Jul-2013::16:35:14 === closing AMQP connection <0.1130.0> (127.0.0.1:44112 -> 127.0.0.1:5672): {handshake_timeout,handshake}I tried to change localhost to ip6-localhost and sometimes when try to starting consumer, it returns:
[PhpAmqpLib\Exception\AMQPRuntimeException] Error Connecting to server(110): Connection timed outUPD2 If I start consumer with debug flag and --env=prod (php .../app/console rabbitmq:consumer -w -d consumer_name), consumer starts and working.
最满意答案
如果在rabbitmq服务器上未打开必要的端口,则在客户端尝试连接时会出现“无路由到主机”错误。
要修复它,请确保端口已打开,如果没有,请打开它们:
sudo iptables -I INPUT -p tcp --dport 5672 --syn -j ACCEPT sudo iptables -I INPUT -p tcp --dport 5673 --syn -j ACCEPT sudo iptables -I INPUT -p tcp --dport 15672 --syn -j ACCEPT这在时间上确定了它。 使用iptables永久设置它。
sudo vi /etc/sysconfig/iptables然后重启:
sudo service iptables restartProblem was fixed with reconfiguring listen address from 0.0.0.0:5672 to 127.0.0.1:5672 and small security fixes in OS.
更多推荐
发布评论