天天看点

RabbitMQ 开发环境安装部署前言正文

文档

前言

Fedora 和 RHEL库里面的RabbitQM已经不维护了,推荐选择Bintray。

正文

Binary 也可以用来安装Erlang(rabbitmq的编写语言)。服务器Centos 7.7。非集群模式。

安装

1.导入sign key,使yum能信任里面的package。使用

rpm --import

rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc           

复制

2.增加

/etc/yum.repos.d/rabbitmq.repo

文件,内容如下。baseurl里面最后一位

/v3.8.x/el/7/

的7对应系统版本,centos8 为

/v3.8.x/el/8/

[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.8.x/el/7/ 
gpgcheck=0
repo_gpgcheck=0
enabled=1           

复制

3.3.7版本的RabbitMQ在2020停止维护,选择3.8版本新版。

4.下载rpm文件。

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.3/rabbitmq-server-3.8.3-1.el7.noarch.rpm           

复制

5.通过yum文件安装

yum install rabbitmq-server-3.8.3-1.el7.noarch.rpm -y           

复制

配置

配置为自启动的守护进程

chkconfig rabbitmq-server on           

复制

启动与停止

systemctl start rabbitmq-server
systemctl stop rabbitmq-server
systemctl restart rabbitmq-server           

复制

开发测试环境配置

服务默认的设置基本够用。

1.添加用户,赋予权限

默认有个guest/guest用户,但是只能localhost访问。

rabbitmqctl add_user full_access 111111 # 创建full_access 用户,密码111111
rabbitmqctl set_user_tags full_access administrator # 给用户赋administrator角色           

复制

2.查看用户,可以看到有2个用户。

[root@test ~]# rabbitmqctl list_users
Listing users ...
user	tags
guest	[administrator]
full_access	[administrator]           

复制

3.添加vhost

rabbitmqctl add_vhost test_host1            

复制

4.给full_access用户在test_host1上赋读写权限

rabbitmqctl set_permissions -p test_host1 full_access ".*" ".*" ".*"#后三个参数都是正则            

复制

生产环境配置

占个位先configure。production-checklist

端口

系统的防火墙会影响到通信,需要开一些端口。比较常用的

  • 5672/5671客户端非安全/安全连接端口
  • 15672 启用

    management

    插件时候的 http api客户端,management UI,rabbitmqadmin
  • 1883/8883,

    MQTT

    插件的mqtt客户端非安全/安全连接端口。
  • 61613/61614,

    STOMP

    插件的非安全/安全客户端端口

配置management UI

访问地址:http://ip:15672

  1. 开启/关闭
rabbitmq-plugins enable rabbitmq_management #开启rabbitmq_management,对应有disable           

复制