1.安装erlang
安装rabbitmq
之前,需要安装erlang
,本文均使用rpm
文件进行安装,rabbitmq
的版本是3.8.30
,erlang
的版本是23.2.7
。
附erlang和rabbitmq安装包:https://www.aliyundrive.com/s/W2YJmV6NBrA
(阿里云盘)
也可去官网进行下载
erlang:https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-23.2.7-2.el7.x86_64.rpm
rabbitmq:https://github.com/rabbitmq/rabbitmq-server/releases?page=3
el7表示是适用于centos7操作系统。
erlang和rabbitmq版本对照:https://www.rabbitmq.com/which-erlang.html#eol-series
1.1 本地安装erlang
将erlang安装包上传至服务器,下面以/root/rabbitmq为例,上传成功之后执行安装
cd /root/rabbitmq
yum localinstall erlang-23.2.7-2.el7.x86_64.rpm #本地安装erlang
erl -v #查看erlang版本,确认安装成功
2 安装rabbitmq
cd /root/rabbitmq
yum localinstall rabbitmq-server-3.8.30-1.el7.noarch.rpm #本地安装rabbitmq
3 启动rabbitmq
# 启动rabbitmq
systemctl start rabbitmq-server
# 查看rabbitmq状态
systemctl status rabbitmq-server
# 设置rabbitmq服务开机自启动
systemctl enable rabbitmq-server
# 关闭rabbitmq服务
systemctl stop rabbitmq-server
# 重启rabbitmq服务
systemctl restart rabbitmq-server
启动成功如下图所示:
4 rabbitmq管理页面操作及授权
4.1 安装启动rabbitmq管理界面
默认情况下,rabbitmq没有安装web端的客户端软件,需要安装才可以生效
# 打开rabbitmq管理界面插件
rabbitmq-plugins enable rabbitmq_management
然后使用服务器ip:15672
就可以打开web管理页面
rabbitmq有一个默认的账号密码guest,但该情况仅限于本机localhost进行访问,所以需要添加一个远程登录的用户
4.2 添加远程用户
# 添加用户
rabbitmqctl add_user 用户名 密码
# 设置用户角色,分配操作权限
rabbitmqctl set_user_tags 用户名 角色
# 为用户添加资源权限(授予访问虚拟机根节点的所有权限)
rabbitmqctl set_permissions -p / 用户名 ".*" ".*" ".*"
角色有四种:
administrator
:可以登录控制台、查看所有信息、并对rabbitmq进行管理
monToring
:监控者;登录控制台,查看所有信息
policymaker
:策略制定者;登录控制台指定策略
managment
:普通管理员;登录控制
其他操作命令:
# 修改密码
rabbitmqctl change_ password 用户名 新密码
# 删除用户
rabbitmqctl delete_user 用户名
# 查看用户清单
rabbitmqctl list_users
5 修改默认端口
5.1 Linux系统rabbitmq是默认安装,那么默认安装位置一般是: /usr/lib/rabbitmq , 可执行命令查找安装位置: whereis rabbitmq
5.2 新增配置文件 (在/etc/rabbitmq路径下创建rabbitmq.conf文件)
vim /etc/rabbitmq/rabbitmq.conf
文件内容如下:
#默认client端口为5672
listeners.tcp.default=5673
#默认界面管理端口为15672
management.tcp.port=15673
5.3 修改rabbitmq-defaults文件,添加配置文件路径
cd /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.30/sbin/
#编辑rabbitmq-defaults文件
vim rabbitmq-defaults
#添加配置路径到文件中,保存退出
CONFIG_FILE=/etc/rabbitmq/rabbitmq.conf
重启rabbitmq
systemctl restart rabbitmq-server
如果失败则检查配置文件是否有错误执行提示中的命令: journalctl -xe 可查看失败原因
附:centos防火墙开放端口命令:
systemctl status firewalld #查看防火墙状态
systemctl start firewalld #开启防火墙
systemctl stop firewalld #关闭防火墙
service firewalld start #开启防火墙
若遇到无法开启
先用:systemctl unmask firewalld.service
然后:systemctl start firewalld.service
netstat -ntulp #查询开放的所有端口
netstat -ntulp | grep 8080 #查询8080端口是否开放
firewall-cmd --query-port=6379/tcp #查看6379端口是否已开
firewall-cmd --add-port=123/tcp --permanent #添加指定需要开放的端口123
firewall-cmd --query-port=123/tcp #查询指定端口123是否开启成功
firewall-cmd --permanent --remove-port=123/tcp #移除指定端口123
firewall-cmd --reload #重载入添加的端口