2011-08-23 36 views
7

Tôi có hộp A và nó có một người tiêu dùng trên đó mà lắng nghe trên một máy chủ Rabbit MQBinding địa chỉ IP bên ngoài vào máy chủ Rabbit MQ

Tôi có hộp B rằng sẽ công bố một thông điệp tới người nghe

Vì vậy, miễn là tất cả điều này trong hộp A và tôi bắt đầu máy chủ Rabbit MQ w/mặc định nó hoạt động tốt.

Các giá trị mặc định là host = 127.0.0.1 trên cổng 5672, nhưng khi tôi telnet box.a.ip.addy 5672 từ hộp BI get:

Trying box.a.ip.addy... 
telnet: connect to address box.a.ip.addy: No route to host 
telnet: Unable to connect to remote host: No route to host 

telnet trên cổng 22 là tốt, tôi có thể ssh vào Box A từ Box B

Vì vậy, tôi giả sử tôi cần thay đổi ip mà máy chủ RabbitMQ sử dụng Tôi đã tìm thấy: http://www.rabbitmq.com/configure.html và bây giờ tôi có tệp cấu hình ở vị trí tài liệu được sử dụng, với tên rabbitmq.config và chứa:

[ 
    {rabbit, [{tcp_listeners, {"box.a.ip.addy", 5672}}]} 
]. 

Vì vậy, tôi đã dừng máy chủ và khởi động lại máy chủ RabbitMQ. Nó đã thất bại. Dưới đây là các lỗi từ nhật ký lỗi. Đó là một chút trên đầu của tôi. (Trong thực tế nhất của việc này là)

=ERROR REPORT==== 23-Aug-2011::14:49:36 === 
FAILED 
Reason: {{case_clause,{{"box.a.ip.addy",5672}}}, 
     [{rabbit_networking,'-boot_tcp/0-lc$^0/1-0-',1}, 
      {rabbit_networking,boot_tcp,0}, 
      {rabbit_networking,boot,0}, 
      {rabbit,'-run_boot_step/1-lc$^1/1-1-',1}, 
      {rabbit,run_boot_step,1}, 
      {rabbit,'-start/2-lc$^0/1-0-',1}, 
      {rabbit,start,2}, 
      {application_master,start_it_old,4}]} 

=INFO REPORT==== 23-Aug-2011::14:49:37 === 
    application: rabbit 
    exited: {bad_return,{{rabbit,start,[normal,[]]}, 
         {'EXIT',{rabbit,failure_during_boot}}}} 
    type: permanent 

và đây là một số chi tiết từ khi bắt đầu lên nhật ký:

Erlang has closed 
Error: {node_start_failed,normal} 
^M 
Crash dump was written to: erl_crash.dump^M 
Kernel pid terminated (application_controller) ({application_start_failure,rabbit,{bad_return,{{rabbit,start,[normal,[]]},{'EXIT',{rabbit,failure_during_boot}}}}})^M 

Xin giúp

+1

Chỉ để che phần hiển nhiên: Bạn có sử dụng 'box.a.ip.addy' khi bạn thành công ssh từ hộp B không? –

+0

smh no, tôi không muốn tiết lộ địa chỉ IP của mình – KacieHouser

Trả lời

9

cậu cố gắng thêm?

RABBITMQ_NODE_IP_ADDRESS = box.a.ip.addy

đến tập tin /etc/rabbitmq/rabbitmq.conf?

mỗi http://www.rabbitmq.com/configure.html#customise-general-unix-environment

Ngoài ra mỗi tài liệu này lại tuyên bố rằng mặc định là liên kết với tất cả các giao diện. Có lẽ có một thiết lập cấu hình hoặc biến môi trường đã được thiết lập trong hệ thống của bạn để hạn chế máy chủ để localhost ghi đè bất cứ điều gì khác bạn làm.

CẬP NHẬT: Sau khi đọc lại, tôi nhận thấy rằng telnet lẽ ra phải trả về "Kết nối bị từ chối" chứ không phải "Không có tuyến đường để lưu trữ". Tôi cũng sẽ kiểm tra xem bạn có gặp sự cố liên quan đến tường lửa hay không.

+1

Đó là một vấn đề liên quan đến tường lửa, iptables chỉ cho phép ở cổng 22, cảm ơn bạn: D – KacieHouser

0

Bạn cần phải mở cổng tcp trên tường lửa của bạn

Sử dụng Linux, Tìm iptables tập tin cấu hình:

[email protected] ~$ find/-name "iptables" 2>/dev/null 
/etc/sysconfig/iptables 

Chỉnh sửa các tập tin:

sudo vi /etc/sysconfig/iptables 

Vá tệp bằng cách thêm cổng:

# Generated by iptables-save v1.4.7 on Thu Jan 16 16:43:13 2014 
*filter 
-A INPUT -p tcp -m tcp --dport 15672 -j ACCEPT 
COMMIT 
Các vấn đề liên quan