2

私は rabbitmq を初めて使用します。rabbitmq-server を 1 つの EC2 インスタンスにインストールしましたが、別の 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