一、 什么是 RabbitMQ
RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用Erlang语言编写的,而集群和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。
二、 安装 RabbitMQ
1 安装 Erlang
1.1什么是 Erlang
Erlang(['ə:læŋ])是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的 CS-Lab 开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境
1.2 安装GCC GCC-C++ Openssl等模块,安装过就不需要安装了
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
1.3 安装ncurses
yum -y install ncurses-devel
1.4 安装erlang环境
下载
wget http://www.erlang.org/download/tp_osrc_19.3.tar.gz
解压安装
tar xvfz tp_osrc_19.3.tar.gz
cd /home/erlang/otp_src_19.3
./configure --prefix=/usr/local/erlang
make install -j 4
将bin文件夹的路径添加到PATH中:修改/etc/profile,后更新PATH路径
export PATH=/usr/local/erlang/bin:$PATH
source /etc/profile
2 安装RabbitMQ
2.1 下载rabbitmq-server-3.6.10.tar.xz
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server-generic-unix-3.6.10.tar.xz
2.2 对于下载xz包进行解压,首先先下载xz压缩工具:
yum install xz
2.3 对rabbitmq包进行解压:
xz -d rabbitmq-server-generic-unix-3.6.10.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.6.10.tar
2.4 随后移动至/usr/local/下 改名rabbitmq:
mkdir /usr/local/rabbitmq
cp -r rabbitmq_server-3.6.10 /usr/local/rabbitmq
这种下载的方式解压后直接可以使用,无需再编译安装;
进入到rabbit文件内,其命令文件存在于sbin文件夹下,因此需要将sbin文件夹的路径添加到PATH中:修改/etc/profile
export PATH=/usr/local/rabbitmq/rabbitmq_server-3.6.10/sbin:$PATH
执行下面命令使得PATH路径更新,rabbitMQ安装成功。
source /etc/profile
2.5 启动rabbitmq服务
cd /usr/local/rabbitmq/rabbitmq_server-3.6.10/sbin/
./rabbitmq-server
./rabbitmqctl stop
//停止RabbitMQ服务
./rabbitmqctl start_app
//启动application
./rabbitmqctl stop_app
//停止application
./rabbitmqctl status
//查看状态
2.6 添加用户和权限
默认网页guest用户是不允许访问的,需要增加一个用户修改一下权限,代码如下:
添加用户:
cd /usr/local/rabbitmq/rabbitmq_server-3.6.10/sbin/
./rabbitmqctl add_user admin admin
添加权限:
./rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
修改用户角色:
./rabbitmqctl set_user_tags admin administrator
2.7 开放端口供外部访问:
iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
2.8 随后启用MQ管理方式:
cd /usr/local/rabbitmq/rabbitmq_server-3.6.10/sbin/
./rabbitmq-plugins enable rabbitmq_management
2.9 打开浏览器访问
http://[server-name]:15672
网友评论