나의 주니어 개발 일기/RabbitMQ

Rabbit MQ Queue 정보를 다른 Rabbit MQ 서버로 이전하는 방법

추억을 백앤드하자 2024. 2. 20. 16:51
728x90
반응형
SMALL

Rabbit MQ Queue 정보를 다른 Rabbit MQ 서버로 이전하고 싶을땐?

 

1. 사이트에서 다운로드 한다.

또는

1.RABBITMQ CLI로 다운로드 한다.

rabbitmqadmin export ./definitions.file.json

 

2. Rabbitmq.conf를 만든다.

mq에 대한 기본 정보들이 기입되어 있으며 management.load_definitions 값에 queue 정보가 정의되어있는

definitions.file.json 이 위치 경로를 입력한다.

rabbitmq.conf

listeners.tcp.default = 5672
management.tcp.port = 15672

##
## Security, Access Control
## ==============
##

loopback_users.guest = false

##
## Default User / VHost
## ====================
##

default_vhost= /
default_user = user
default_pass = password

# =======================================
# Management section
# =======================================

management.load_definitions = /etc/rabbitmq/my_definition.json

 

3. Docker compose에서 defitiion-file.json과 rabbitmq.conf 파일을 마운팅 시킨다.

2번에서 management.load_definitions값의 경로 /etc/rabbitmq/my_definition.json

docker에 마운팅되는 경로가 같아야 한다. /etc/rabbitmq/my_definition.json:ro

docker-compose.yml

version: '3'

services:
 test-rabbitmq:
  container_name: test-rabbitmq
  image: rabbitmq:management
  restart: unless-stopped
  volumes:
   - /infra/rabbitmq:/var/lib/rabbitmq
   - /infra/definitions.file.json:/etc/rabbitmq/my_definition.json:ro
   - /infra/rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf
  ports:
   - 1444:5672
   - 1113:15672
  environment:
    RABBITMQ_DEFAULT_USER: admin
    RABBITMQ_DEFAULT_PASS: admin

 

 

4. 이전 MQ정보가 새로운 MQ에 반영되었는지 최종 확인한다.

728x90
반응형
LIST