CentOS8部署rabbitMQ以及在項目中的配置

一、部署rabbitMQ

1、添加EPEL源

dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

2、安裝 Erlang

dnf -y install wget
wget https://github.com/rabbitmq/erlang-rpm/releases/download/v21.3.8.6/erlang-21.3.8.6-1.el7.x86_64.rpm
dnf install -y erlang-21.3.8.6-1.el7.x86_64.rpm
erl

3、添加RabbitMQ倉庫

vi /etc/yum.repos.d/rabbitmq-server.repo
[rabbitmq-server]
name=rabbitmq-server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

4、安裝RabbitMQ

dnf makecache -y --disablerepo='*' --enablerepo='rabbitmq-server'
dnf install -y rabbitmq-server
rpm -qi rabbitmq-server

5、配置防火牆(注意:這裏防火牆設置時候幾個linux的區別)

firewall-cmd --zone=public --permanent --add-port={4369,25672,5671,5672,15672,61613,61614,1883,8883}/tcp
firewall-cmd --reload

6、啓動RabbitMQ服務和管理界面

#啓動服務
systemctl start rabbitmq-server.service
#設置開機啓動
systemctl enable rabbitmq-server.service
#重新啓動服務
systemctl restart rabbitmq-server.service
#查看服務當前狀態
systemctl status rabbitmq-server.service 
rabbitmqctl status
#查看插件的啓用和禁用狀態
rabbitmq-plugins enable rabbitmq_management
chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/
# 添加admin用戶以及設置密碼和用戶去權限
rabbitmqctl add_user admin xxxxx
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

7、訪問RabbitMQ管理界面
用瀏覽器訪問http://機器IP:15672打開管理界面,使用上一步配置好的admin賬號登錄。

二、項目中配置

項目是SpringBoot集成RabbitMQ的項目,基本配置:

spring:
 rabbitmq:
      host: ${RABBIT_MQ_HOST:192.168.113.128}
      port:  ${RABBIT_MQ_PORT:5672}
      username: master
      password: master
      virtual-host: /
      publisher-confirms: true

這裏注意:
1、你在瀏覽器訪問的圖形界面port不是你想項目中的配置的port,否則你會糾結一整天。
2、virtual-host一定要加,具體看你在admin->user中的Can access virtual hosts配置,不然你又會糾結一天。
3、在admin->user新建用戶組以後一定要配置權限:

rabbitmqctl set_permissions -p / 你新建的用戶 ".*" ".*" ".*"

沒有這一步,你又會糾結一天。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章