CentOS 6.9安装配置RabbitMQ

时间:2024-04-02 18:26:42

MQMessage Queue,消息队列,是一种应用程序对另一种应用程序的通信方法。应用程序通过读写出入队列的消息来通信

1、 演示环境:

IP192.168.1.145

操作系统:CentOS 6.9 x86_64

Erlang版本:otp_src_20.1.tar.gz,下载地址http://erlang.org/download/

RabbitMQ版本:rabbitmq-server-generic-unix-3.6.12.tar.xz

下载地址http://www.rabbitmq.com/releases/rabbitmq-server/

附:RabbitMQErlang版本的对应关系

CentOS 6.9安装配置RabbitMQ


2、 服务器时间校对


3、 配置epel


4、  安装依赖软件包:# yum -y install make gcc gcc-c++ zlib zlib-devel ncurses-develkernel-devel m4 openssl openssl-devel unixODBC-devel libgnomeui-develmesa-libGL-devel mesa-libGLU-devel java-devel fop


5、 编译安装wxWidgetsErlang所依赖):

# tar -xf wxWidgets-3.0.3.tar.bz2 -C /usr/src

# cd /usr/src/wxWidgets-3.0.3

# ./configure --with-opengl --enable-debug

# make && make install

# ldconfig


6、 安装配置ErlangRabbitMQ所依赖):

(1)编译安装Erlang

# tar -xf otp_src_20.1.tar.gz -C /usr/src

# cd /usr/src/otp_src_20.1

# ./configure --prefix=/usr/local/erlang --enable-dirty-schedulers --enable-kernel-poll--enable-sctp --enable-hipe --enable-fips --with-termcap --with-javac--with-ssl

# make && make install

(2)配置Erlang环境变量:

# vim /etc/profile.d/erlang.sh -->  export PATH=/usr/local/erlang/bin:$PATH

# . /etc/profile.d/erlang.sh

(3)测试Erlang是否正常工作:# erl

CentOS 6.9安装配置RabbitMQ

7、 安装配置RabbitMQ

(1)安装RabbitMQ

# tar -xf rabbitmq-server-generic-unix-3.6.12.tar.xz -C /usr/local

# cd /usr/local

# ln -sv rabbitmq_server-3.6.12/ rabbitmq

(2)配置RabbitMQ环境变量:

# vim /etc/profile.d/rabbitmq.sh -->  export PATH=/usr/local/rabbitmq/sbin:$PATH

# . /etc/profile.d/rabbitmq.sh

(3)配置RabbitMQman帮助文档:

# vim /etc/man.config,新增如下代码:

MANPATH /usr/local/rabbitmq/share/man

(4)后台运行RabbitMQ# rabbitmq-server -detached

CentOS 6.9安装配置RabbitMQ

备注:上述警告可忽略

(5)测试RabbitMQ是否正常工作:# ss -tnl | grep 5672

CentOS 6.9安装配置RabbitMQ

(6)安装插件:

# rabbitmq-plugins enable rabbitmq_mqtt

CentOS 6.9安装配置RabbitMQ

# rabbitmq-pluginsenable rabbitmq_management

CentOS 6.9安装配置RabbitMQ

(7)再次测试RabbitMQ是否正常工作:# ss -tnl | grep 5672

CentOS 6.9安装配置RabbitMQ

(8)创建新账号admin,密码123456,用于登录Web管理界面:# rabbitmqctl add_user admin 123456

CentOS 6.9安装配置RabbitMQ

备注:由于guest账号具有所有操作权限,并且又是默认账号,所以出于安全因素的考虑,guest账号只能通过localhost登录使用,并建议修改guest账号的密码(默认密码guest)或创建其它账号管理使用RabbitMQ

(9)admin的用户角色设置为administrator#rabbitmqctl set_user_tags admin administrator

CentOS 6.9安装配置RabbitMQ

(10)admin赋权:# rabbitmqctlset_permissions -p / admin ‘.*‘ ‘.*‘ ‘.*‘

CentOS 6.9安装配置RabbitMQ

(11)登录Web管理界面:浏览器中输入192.168.1.145:15672

CentOS 6.9安装配置RabbitMQ


CentOS 6.9安装配置RabbitMQ


8、 RabbitMQ常用操作:

(1)后台运行:# rabbitmq-server -detached

(2)关闭:# rabbitmqctl stop

(3)开启某个插件(需要重启服务):# rabbitmq-plugins enable XXX

(4)关闭某个插件(需要重启服务):# rabbitmq-plugins disable XXX

(5)创建用户:# rabbitmqctl add_user USERNAME PASSWORD

(6)删除用户:# rabbitmqctl delete_user USERNAME

(7)修改指定用户密码:# rabbitmqctl change_password USERNAME NEWPASSWORD

(8)查看当前用户列表:# rabbitmqctl list_users

(9)为指定用户赋权:# rabbitmqctl set_permissions -p / USERNAME ‘.*‘ ‘.*‘ ‘.*‘

(10)查看所有用户权限信息:# rabbitmqctl list_permissions

(11)查看指定用户权限信息:# rabbitmqctl list_user_permissions USERNAME

(12)清除指定用户权限信息:# rabbitmqctl clear_permissions USERNAME

(13)获取当前服务器状态信息:# rabbitmqctl status




yum 安装rabbitMQ

 环境:linux centos6.5

1.安装erlang

 

下载rpm仓库:wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

安装rpm仓库
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm

安装erlang
yum -y install erlang

 
安装完成后,运行:

CentOS 6.9安装配置RabbitMQ

安装成功。
 

2.安装RabbitMQ

 
下载RabbitMQ的rpm:wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el6.noarch.rpm
 
yum -y install rabbitmq-server-3.6.6-1.el6.noarch.rpm
 
注:
 
如果报:Requires: socat
 
更新源wget –no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo -O /etc/yum.repos.d/convirt.repo
yum install socat

启动rabbitmq服务:   

前台运行:rabbitmq-server start (用户关闭连接后,自动结束进程)  

后台运行:rabbitmq-server -detached 

 

3.安装插件

 
启动web管理界面
rabbitmq-plugins enable rabbitmq-management
 
增加访问用户,默认用户guest只能本地访问。
rabbitmqctl add_user admin 123456
 
设置角色:
 
rabbitmqctl set_user_tags admin administrator
 
设置默认vhost("/")访问权限
rabbitmqctl set_permissions -p "/" admin "." "." ".*"
 
浏览器访问:http://IP:15672
 
用户名admin,密码123456进行登录

 

 遇到问题参考:http://blog.csdn.net/qq315737546/article/details/53105418

 

4、好了,到这里rabbitmq已经配置好了,可以启动了:

  • 我们再来查看看一下rabbitmq的默认监听端口5672:  
  • #netstat -tnlp|grep 5672        
  • 最好我们就可以在浏览器上输入http://ip:15672/登录管理界面了:  
  • 使用登录的名户名和密码默认都算guest,登录后的页面如下:  
  • 另一台机器访问rabbitmq(就是本机之外),需要打开15672端口  
  • #vi /etc/sysconfig/iptables  把15672端口加进去。然后重启service iptables restart

5、添加远程管理账户

 
如果要从远程登录怎么做呢?处于安全考虑,guest这个默认的用户只能通过http://localhost:15672来登录,其他的IP无法直接用这个guest帐号。这里我们可以通过配置文件来实现从远程登录管理界面,只要编辑/etc/rabbitmq/rabbitmq.config文件(没有就新增),添加以下配置就可以了。
 

{rabbit, [{tcp_listeners, [5672]}, {loopback_users, ["asdf"]}]} 
].
 

现在添加了一个新授权用户asdf,可以远程使用这个用户名。记得要先用命令添加这个命令才行:

$  cd /usr/lib/rabbitmq/bin/
#用户名与密码
$ sudo rabbitmqctl add_user asdf 123456
#用户设置为administrator才能远程访问
$ sudo rabbitmqctl set_user_tags asdf administrator         
$ sudo rabbitmqctl set_permissions -p / asdf ".*" ".*" ".*"

 

 
其实也可以通过管理平台页面直接添加用户和密码等信息。如果还不能远程访问或远程登录检查是不是5672, 15672端口没有开放!!!!!!

 

6. 用户管理


用户管理包括增加用户,删除用户,查看用户列表,修改用户密码。

相应的命令

(1) 新增一个用户

rabbitmqctl  add_user  Username  Password

(2) 删除一个用户

rabbitmqctl  delete_user  Username

(3) 修改用户的密码

rabbitmqctl  change_password  Username  Newpassword

(4) 查看当前用户列表

rabbitmqctl  list_users