本文介绍在RHEL 8系统上安装RabbitMQ Server的方法,按照以下步骤在RHEL 8服务器上安装并运行RabbitMQ。DabbitMQ是一个实现高级消息队列协议(AMQP)的开源消息代理软件。如果所用的是Ubuntu 18.04请参考在Ubuntu 18.04 LTS系统上安装RabbitMQ服务器的步骤。
第1步:在RHEL 8上安装Erlang 在安装RabbitMQ之前,必须安装受支持的Erlang/OTP版本。 先运行sudo yum -y install wget vim命令。 再运行wget命令下载文件: wget https://github.com/rabbitmq/erlang-rpm/releases/download/v20.3.8.17/erlang-20.3.8.17-1.el7.centos.x86_64.rpm 安装下载的erlang-20.3.8.17-1.el7.centos.x86_64.rpm包: sudo yum localinstall erlang-20.3.8.17-1.el7.centos.x86_64.rpm 使用yum localinstall选项时将安装所需的依赖项。 通过运行erl命令确认安装: $ erl Erlang/OTP 20 [erts-9.3.3.7] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:10] [hipe] [kernel-poll:false] Eshell V9.3.3.7 (abort with ^G) 1>
第2步:添加PackageCloud Yum存储库 PackageCloud提供了一个包含RabbitMQ包的Yum存储库。 为RabbitMQ创建一个新的Repository文件: sudo vim /etc/yum.repos.d/rabbitmq_rabbitmq-server.repo 增加代码: [rabbitmq_rabbitmq-server] name=rabbitmq_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
第3步:在RHEL 8上安装RabbitMQ 配置RabbitMQ存储库后,通过运行以下命令在RHEL 8上安装RabbitMQ Server: sudo dnf makecache -y --disablerepo='*' --enablerepo='rabbitmq_rabbitmq-server' sudo dnf -y install rabbitmq-server 可以使用带有-qi选项的rpm命令查询包详细信息: $ rpm -qi rabbitmq-server
第4步:启动RabbitMQ服务 现在你已经在RHEL 8上安装RabbitMQ了,启动并启用该服务以在系统引导时启动: echo "127.0.0.1 $(hostname -s)" | sudo tee -a /etc/hosts sudo systemctl enable --now rabbitmq-server.service 检查RabbitMQ的状态: $ systemctl status rabbitmq-server.service
RabbitMQ内部详细信息: sudo rabbitmqctl status
步骤5:启用RabbitMQ管理仪表板 你可以选择启用RabbitMQ Management Web仪表板以便于管理: $ sudo rabbitmq-plugins enable rabbitmq_management Enabling plugins on node rabbit@rhel8: rabbitmq_management The following plugins have been configured: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatch Applying plugin configuration to rabbit@rhel8… The following plugins have been enabled: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatch started 3 plugins. Web服务应该侦听TCP端口15672: # ss -tunelp | grep 15672 tcp LISTEN 0 128 0.0.0.0:15672 0.0.0.0:* users:(("beam.smp",pid=9525,fd=71)) uid:111 ino:39934 sk:9 <-> 如果你有活动的Firewalld服务,请允许端口5672和15672: sudo firewall-cmd --add-port={5672,15672}/tcp --permanent sudo firewall-cmd --reload 通过打开URL:http://[server IP|Hostname]:15672来访问它:
默认情况下,guest用户存在且只能从localhost连接,使用密码guest在本地登录此用户。 要能够在网络上登录,请创建如下管理员用户: $ sudo rabbitmqctl add_user admin StrongPassword Adding user "admin" … $ sudo rabbitmqctl set_user_tags admin administrator Setting tags for user "admin" to [administrator] … 使用此管理员用户名和分配的密码登录,你应该看到类似于下面的界面:
要使用rabbitmqadmin命令行工具,请将其复制到$PATH: sudo updatedb sudo cp locate rabbitmqadmin /usr/local/bin/rabbitmqadmin sudo chmod +x /usr/local/bin/rabbitmqadmin 你需要安装python并配置为运行rabbitmqadmin,参考在RHEL 8系统上安装Python 3和Python 2.7及设置默认Python版本。
附:RabbitMQ用户管理命令 删除用户: sudo rabbitmqctl delete_user user 更改用户密码: sudo rabbitmqctl change_password user strongpassword 创建新的Virtualhost: sudo rabbitmqctl add_vhost /my_vhost 列出可用的虚拟主机: sudo rabbitmqctl list_vhosts 删除虚拟主机: sudo rabbitmqctl delete_vhost /myvhost 授予vhost的用户权限: sudo rabbitmqctl set_permissions -p /myvhost user ".*" ".*" ".*" 列出vhost权限: sudo rabbitmqctl list_permissions -p /myvhost 列出用户权限: rabbitmqctl list_user_permissions user 删除用户权限: rabbitmqctl clear_permissions -p /myvhost user
相关主题 |