1. 安装 Erlang
1、创建usr/local/rabbitmq文件夹
mkdir /usr/local/rabbitmq
2、进入usr/local/rabbitmq文件夹
cd /usr/local/rabbitmq
3、复制官网的下载链接,通过wget命令去下载
wget https://github.com/erlang/otp/releases/download/OTP-25.0/otp_src_25.0.tar.gz
4、解压安装包
tar -xvzf otp_src_25.0.tar.gz
5、安装erlang需要的依赖
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel
6、在rabbitmq文件夹下新建一个erlang文件目录
mkdir erlang
7、进入第四步解压后的文件夹下去执行安装命令
cd /usr/local/rabbitmq/otp_src_25.0
./configure --prefix=/usr/local/rabbitmq/erlang --without-javac
8、编译并安装erlang
make && make install
9、配置erlang环境变量
vim /etc/profile
9.1 在最后一行添加以下内容:
#set erlang environment
export PATH=$PATH:/usr/local/rabbitmq/erlang/bin
补充知识:如果是mac电脑,在执行完 vim /etc/profile命令后,输入e,进入更新模式,然后将export PATH=$PATH:/usr/local/erlang/bin 复制到最后一行,按下键盘上⬆️ + :,再输入 wq进行保存退出。
9.2 输入以下命令,将上述修改后的环境变量进行保存生效
source /etc/profile
10、输入erl命令查看是否安装成功
二、安装
Messaging that just works — RabbitMQhttps://www.rabbitmq.com/#getstarted
解压包安装:
1、在/usr/local/rabbitmq目录下输入以下命令,该命令用来安装rabbitmq:
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.10.7/rabbitmq-server-generic-unix-3.10.7.tar.xz
2、解压安装包,如果 xz 和 tar解压工具未安装可以使用yum install xz 安装:
xz -d rabbitmq-server-generic-unix-3.10.7.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.10.7.tar
3、配置erlang环境变量
vim /etc/profile
4、添加rabbitmq的环境变量,在文件的最后一行。
export PATH=$PATH:/usr/local/rabbitmq/rabbitmq_server-3.10.7/sbin
补充知识:如果是mac电脑,在执行完 vim /etc/profile命令后,输入e,进入更新模式,然后将export PATH=$PATH:/usr/local/rabbitmq/rabbitmq_server-3.10.7/sbin 复制到最后一行,按下键盘上⬆️ + :,再输入 wq进行保存退出。
5、将修改的环境变量生效
source /etc/profile
6、进入到解压后的rabbitmq目录中,执行以下命令安装rabbitmq管理界面:
rabbitmq-plugins enable rabbitmq_management
7、开启rabbitmq服务
启动服务:rabbitmq-server -detached //使用后台守护进程开启
查看状态:ps -ef | grep rabbitmq
查看rabbit运行状态:rabbitmqctl status
关闭rabbitmq:rabbitmqctl stop
### 以下是防火墙开启关闭放行等命令
启动:systemctl start firewalld
查看状态:firewall-cmd --state
查看放行端口:firewall-cmd --zone=public --list-ports
关闭防火墙:systemctl stop firewalld.service
firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口
firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口
firewall-cmd --reload # 配置立即生效
systemctl restart firewalld ## 重启防火墙
8、登陆阿里云服务器后台开启15672端口号,然后去访问 ip + 15672进入rabbitmq后台
例如:http://localhost:15672
### 可以进入到图形化界面,如果进不去的话。排查一下rabbitmq是否启动,防火墙是否放行5672和15672,还有阿里云安全组是否放行5672和15672
在本地默认账号密码为 guest,但是这个用户只允许在本地登录,所以用 IP地址:15672访问登录时时出现"User can only log in via localhost"提示。
8.1 解决方案:
新增一个新的用户并授予管理员角色去登录,这里我们创建一个 admin 123456
添加用户:rabbitmqctl add_user admin 123456
设置权限:rabbitmqctl set_user_tags admin administrator
修改密码:rabbitmqctl change_password admin admin123
9、此时我们就可以访问 ip+15672进入rabbitmq的后台系统了,账号密码就是admin 123456
如果访问不了,说明端口号没开启,可以看下面的补充知识。
rpm 安装
1、在/usr/local/rabbitmq目录
下载rpm https://github.com/rabbitmq/rabbitmq-server/releases
2、rpm 安装
rpm -Uvh rabbitmq-server-3.9.4-1.el8.noarch.rpm
### 在这个地方,我的erlang依赖不满足,但实际上是满足的,所以加了跳过检测
rpm -Uvh rabbitmq-server-3.9.4-1.el8.noarch.rpm --nodeps
3、进入到解压后的rabbitmq目录中 /usr/lib/rabbitmq,执行以下命令安装rabbitmq管理界面:
rabbitmq-plugins enable rabbitmq_management
4、开启rabbitmq服务
启动服务: systemctl start rabbitmq-server.service
### 启动如果报错:
Job for rabbitmq-server.service failed because the control process exited with error code. See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.
### 修改 rabbitmq-server 启动脚本,添加erlang 安装路径
#erlang
export PATH=$PATH:/usr/local/erlang/bin
查看启动状态: systemctl status rabbitmq-server.service
设置开机自启:systemctl enable rabbitmq-server.service
### 以下是防火墙开启关闭放行等命令
启动:systemctl start firewalld
查看状态:firewall-cmd --state
查看放行端口:firewall-cmd --zone=public --list-ports
关闭防火墙:systemctl stop firewalld.service
firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent # 开放15672端口
firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口
firewall-cmd --reload # 配置立即生效
systemctl restart firewalld ## 重启防火墙
5、登陆阿里云服务器后台开启15672端口号,然后去访问 ip + 15672进入rabbitmq后台
例如:http://localhost:15672
### 可以进入到图形化界面,如果进不去的话。排查一下rabbitmq是否启动,防火墙是否放行5672和15672,还有阿里云安全组是否放行5672和15672
在本地默认账号密码为 guest,但是这个用户只允许在本地登录,所以用 IP地址:15672访问登录时时出现"User can only log in via localhost"提示。
###解决方案:
新增一个新的用户并授予管理员角色去登录,这里我们创建一个 admin 123456
添加用户:rabbitmqctl add_user admin 123456
设置权限:rabbitmqctl set_user_tags admin administrator
修改密码:rabbitmqctl change_password admin admin123
6、此时我们就可以访问 ip+15672进入rabbitmq的后台系统了,账号密码就是admin 123456
如果访问不了,说明端口号没开启,可以看下面的补充知识。