본문 바로가기
기술, 개발/RabbitMQ

RabbitMQ 최신 버전 우분투 설치

by Jaejin Sim 2025. 9. 10.
반응형

RabbitMQ 최신 버전 우분투 설치

RabbitMQ 설치

 # 이렇게 하면 최신 버전으로 설치 안 함. 다시 체크 apt-get install rabbitmq-server

RabbitMQ 최신 버전 설치

참고 문헌

https://www.rabbitmq.com/install-debian.html#apt-quick-start-packagecloud

아래 스크립트 파일 생성 하여 서버에서 실행

# 스크립트 파일 작성
$ vim rabbitmq_installer.sh

# 실행 권한 설정
$ chmod +x rabbitmq_installer.sh

# 스크립트 파일 실행
$ ./rabbitmq_installer.sh

rabbitmq_installer.sh

#!/bin/sh

sudo apt-get install curl gnupg apt-transport-https -y

## Team RabbitMQ's signing key
curl -1sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg > /dev/null

## Add apt repositories maintained by Team RabbitMQ
sudo tee /etc/apt/sources.list.d/rabbitmq.list <<EOF
## Modern Erlang/OTP releases
##
deb [arch=amd64 signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] https://deb1.rabbitmq.com/rabbitmq-erlang/ubuntu/noble noble main
deb [arch=amd64 signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] https://deb2.rabbitmq.com/rabbitmq-erlang/ubuntu/noble noble main

## Latest RabbitMQ releases
##
deb [arch=amd64 signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] https://deb1.rabbitmq.com/rabbitmq-server/ubuntu/noble noble main
deb [arch=amd64 signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] https://deb2.rabbitmq.com/rabbitmq-server/ubuntu/noble noble main
EOF

## Update package indices
sudo apt-get update -y

## Install Erlang packages
sudo apt-get install -y erlang-base \
erlang-asn1 erlang-crypto erlang-eldap erlang-ftp erlang-inets \
erlang-mnesia erlang-os-mon erlang-parsetools erlang-public-key \
erlang-runtime-tools erlang-snmp erlang-ssl \
erlang-syntax-tools erlang-tftp erlang-tools erlang-xmerl

## Install rabbitmq-server and its dependencies
sudo apt-get install rabbitmq-server -y --fix-missing

RabbitMQ 서비스 자동 시작 세팅

 

# enabled 설정 확인 
$ systemctl is-enabled rabbitmq-server 

# RabbitMQ 서비스가 자동으로 시작하도록 구성
$ systemctl enable rabbitmq-server

$ systemctl is-enabled rabbitmq-server
enabled
  • enable 설정하지 않았는데 이미 등록되었음.
  • systemctl enable rabbitmq-server 명령어 실행하지 않았음

RabbitMQ 버전 확인

rabbitmqctl status

 

$ rabbitmqctl status
Status of node rabbit@localhost ...
Runtime

OS PID: 203889
OS: Linux
Uptime (seconds): 410
Is under maintenance?: false
RabbitMQ version: 3.11.7

RabbitMQ 실행 상태 확인

systemctl status rabbitmq-server

 

$ systemctl status rabbitmq-server
● rabbitmq-server.service - RabbitMQ broker
     Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-01-18 01:35:13 UTC; 1min 42s ago

RabbitMQ 서비스 구동 (시작|중지)

# 시작
systemctl start rabbitmq-server
# 중지
systemctl stop rabbitmq-server

관리 기능 설정

관리 기능 키기

sudo rabbitmq-plugins enable rabbitmq_management
$ rabbitmq-plugins enable rabbitmq_management
Enabling plugins on node rabbit@mscheckout:
rabbitmq_management
The following plugins have been configured:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch
Applying plugin configuration to rabbit@mscheckout...
The following plugins have been enabled:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch

started 3 plugins.

사용자 추가

 sudo rabbitmqctl add_user 사용자ID 비밀번호
$ rabbitmqctl add_user wowls5000 12345678!
Adding user "wowls5000" ...
Done. Don't forget to grant the user permissions to some virtual hosts! See 'rabbitmqctl help set_permissions' to learn more.

사용자 태그 추가

rabbitmqctl set_permissions -p "/" "wowls5000" ".*" ".*" ".*"
$ rabbitmqctl set_user_tags wowls5000 administrator
Setting tags for user "wowls5000" to [administrator] ...

사용자 vhost 권한 추가

rabbitmqctl set_permissions -p "/" "wowls5000" ".*" ".*" ".*"
$ rabbitmqctl list_permissions
Listing permissions for vhost "/" ...
user	configure	write	read
guest	.*	.*	.*

$ rabbitmqctl set_permissions -p "/" "wowls5000" ".*" ".*" ".*"
Setting permissions for user "wowls5000" in vhost "/" ...

사용자 권한 확인

rabbitmqctl list_permissions
$ rabbitmqctl list_permissions
Listing permissions for vhost "/" ...
user	configure	write	read
guest	.*	.*	.*
wowls5000	.*	.*	.*

사용자 확인

rabbitmqctl list_users
$ rabbitmqctl list_users
Listing users ...
user	tags
guest	[administrator]
wowls5000	[administrator]

HTTP API 정상 호출 확인

curl -s -u wowls5000:12345678! <http://localhost:15672/api/nodes/>

 

 

 

 

반응형

'기술, 개발 > RabbitMQ' 카테고리의 다른 글

Dead Letter Exchange (메세지 만료)  (0) 2025.09.10
컨슈머 병렬 처리, 메세지 손실 방지  (0) 2025.09.10
Queue and Exchange  (0) 2025.09.10
RabbitMQ 개념  (0) 2025.09.10
RabbitMQ 도커 설치  (0) 2025.09.10