2

我对 rabbitmq 很陌生,我在一个 EC2 实例上安装了 rabbitmq-server,并想在另一个 EC2 实例上创建一个使用者。

但我收到了这个错误:

socket.gaierror: [Errno -2] Name or service not known

那是节点状态:

ubuntu@ip-10-147-xxx-xxx:~$ sudo rabbitmq-server restart
ERROR: node with name "rabbit" already running on "ip-10-147-xxx-xxx"

DIAGNOSTICS
===========

nodes in question: ['rabbit@ip-10-147-xxx-xxx']

hosts, their running nodes and ports:
- ip-10-147-xxx-xxx: [{rabbit,46074},{rabbitmqprelaunch4603,51638}]

current node details:
- node name: 'rabbitmqprelaunch4603@ip-10-147-xxx-xxx'
- home dir: /var/lib/rabbitmq
- cookie hash: Gsnt2qHd7wWDEOAOFby=

这就是消费者代码:

import pika

cred = pika.PlainCredentials('guest', 'guest')
conn_params = pika.ConnectionParameters('10-147-xxx-xxx', credentials=cred)
conn_broker = pika.BlockingConnection(conn_params)

conn_broker = pika.BlockingConnection(conn_params)
channel = conn_broker.channel()
channel.exchange_declare(exchange='hello-exchange', type='direct', passive=False, durable=True, auto_delete=False)

channel.queue_declare(queue='hello-queue')
channel.queue_bind(queue='hello-queue', exchange='hello-exchange', routing_key='hola')

def msg_consumer(channel, method, header, body):
    channel.basic_ack(delivery_tag=method.delivery_tag)
    if body == 'quit':
        channel.basic_cancel(consumer_tag='hello-consumer')
        channel.stop_consuming()
    else:
        print body

    return

channel.basic_consume(msg_consumer, queue='hello-queue', consumer_tag='hello-consumer')
channel.start_consuming()
4

1 回答 1

0

您应该检查安全组是否允许您使用rabbitMQ端口,而且您似乎没有使用Rabbit默认端口(5672)所以它应该在您的连接参数中

于 2014-04-12T02:31:42.117 回答