一、环境准备
-
本教程使用CentOS 8
-
RabbitMQ版本 和 Erlang 版本兼容性关系 RabbitMQ Erlang Version Requirements — RabbitMQ
本次教程使用目前最新rabbitmq-server-3.10.7-1.el8.noarch.rpm
,从上边网址我们能看到对应的erlang版本24.2-25.0
,所以这里我们选择用的erlang-25.0.4-1.el8.x86_64
3.rpm安装包下载并准备好
rabbitmq-server 3.10.7
erlang 25.0.4
rabbitmq-delayed-message-exchange 3.10.2 延时队列插件下载后缀.ez
二、安装
1.安装Erlang
rpm -ivh erlang-25.0.4-1.el8.x86_64.rpm
2.安装rabbitmq
rpm -ivh rabbitmq-server-3.10.7-1.el8.noarch.rpm
3.启动rabbitmq服务
# 启动rabbitmq
systemctl start rabbitmq-server
# 查看rabbitmq状态
systemctl status rabbitmq-server
# 停止rabbitmq
systemctl stop rabbitmq-server
三、RabbitMQWeb管理界面
默认情况下,rabbitmq没有安装web端的客户端软件,需要安装才可以生效
# 打开RabbitMQWeb管理界面插件
rabbitmq-plugins enable rabbitmq_management
添加配置文件,解决只能localhost访问,不能远程访问的问题
# 进入【/etc/rabbitmq】文件夹下
cd /etc/rabbitmq
# 编辑【rabbitmq.config】文件
vim rabbitmq.config
插入[{rabbit,[{loopback_users,[]}]}].
[{rabbit,[{loopback_users,[]}]}].
~
~
~
~
~
~
保存后重启服务,
URL地址:http://ip:15672/
默认账号:guest
默认密码:guest
四、安装 rabbitmq_delayed_message_exchange 插件
RabbitMQ的有些插件没有集成在初始的安装中,它们需要额外安装,这些文件的后缀为.ez
,安装时需要将.ez
文件拷贝到安装的插件目录。以下是不同系统中默认安装的插件目录路径:
插件目录 | |
---|---|
Linux | /usr/lib/rabbitmq/lib/rabbitmq_server-version/plugins |
Windows | C:Program FilesRabbitMQ abbitmq_server-versionplugins(安装rabbitmq的目录) |
Homebrew | /usr/local/Cellar/rabbitmq/version/plugins |
Generic Unix | rabbitmq_server-version/plugins (安装rabbitmq的目录) |
插件拷贝完成后可以通过命令sudo rabbitmq-plugins list
查看已有插件列表,eg:
[root@iZ2zedy98vjvmmssd8nmdiZ ~]# rabbitmq-plugins list
Listing plugins with pattern ".*" ...
Configured: E = explicitly enabled; e = implicitly enabled
| Status: * = running on rabbit@iZ2zedy98vjvmmssd8nmdiZ
|/
[ ] rabbitmq_amqp1_0 3.10.7
[ ] rabbitmq_auth_backend_cache 3.10.7
[ ] rabbitmq_auth_backend_http 3.10.7
[ ] rabbitmq_auth_backend_ldap 3.10.7
[ ] rabbitmq_auth_backend_oauth2 3.10.7
[ ] rabbitmq_auth_mechanism_ssl 3.10.7
[ ] rabbitmq_consistent_hash_exchange 3.10.7
[E*] rabbitmq_delayed_message_exchange 3.10.2
[ ] rabbitmq_event_exchange 3.10.7
[ ] rabbitmq_federation 3.10.7
[ ] rabbitmq_federation_management 3.10.7
[ ] rabbitmq_jms_topic_exchange 3.10.7
[E*] rabbitmq_management 3.10.7
[e*] rabbitmq_management_agent 3.10.7
[ ] rabbitmq_mqtt 3.10.7
[ ] rabbitmq_peer_discovery_aws 3.10.7
[ ] rabbitmq_peer_discovery_common 3.10.7
[ ] rabbitmq_peer_discovery_consul 3.10.7
[ ] rabbitmq_peer_discovery_etcd 3.10.7
[ ] rabbitmq_peer_discovery_k8s 3.10.7
[ ] rabbitmq_prometheus 3.10.7
[ ] rabbitmq_random_exchange 3.10.7
[ ] rabbitmq_recent_history_exchange 3.10.7
[ ] rabbitmq_sharding 3.10.7
[E*] rabbitmq_shovel 3.10.7
[E*] rabbitmq_shovel_management 3.10.7
[ ] rabbitmq_stomp 3.10.7
[ ] rabbitmq_stream 3.10.7
[ ] rabbitmq_stream_management 3.10.7
[ ] rabbitmq_top 3.10.7
[ ] rabbitmq_tracing 3.10.7
[ ] rabbitmq_trust_store 3.10.7
[e*] rabbitmq_web_dispatch 3.10.7
[ ] rabbitmq_web_mqtt 3.10.7
[ ] rabbitmq_web_mqtt_examples 3.10.7
[ ] rabbitmq_web_stomp 3.10.7
[ ] rabbitmq_web_stomp_examples 3.10.7
文件拷贝到插件目录后可以通过命令sudo rabbitmq-plugins enable plugin-name
启用插件,安装完成后重启rabbitmq,使插件生效
[root@iZ2zedy98vjvmmssd8nmdiZ ~]# systemctl restart rabbitmq-server