10分钟学会RabbitMQ安装部署

一、单机版的 RabbitMQ 的安装部署

1、安装 Erlang 环境

 

wget http://erlang.org/download/otp_src_19.3.tar.gz

tar -zxvf otp_src_19.3.tar.gz

 

cd otp_src_19.3

./configure --prefix=/usr/local/erlang --enable-hipe --enable-threads --enable-smp-support --enable-kernel-poll  --without-javac

##################################

./configure时出现错误:error: No curses/termcap library found。

 

原因:缺少ncurses安装包

解决办法:yum install ncurses-devel

##################################

make & make install

 

2、安装 RabbitMQ

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.1.5/rabbitmq-server-generic-unix-3.6.15.tar.xz

tar -Jxf rabbitmq-server-generic-unix-3.6.15.tar.xz

 

执行如下命令直接启动了

cd rabbitmq_server-3.6.15/

sbin/rabbitmq-server start

sbin/rabbitmq-server -detached #后台运行

 

3、使用 RabbitMQ CTL 命令管理 RabbitMQ

3.1 启动相关

sbin/rabbitmqctl start_app // 启动应用

sbin/rabbitmqctl stop_app  // 关闭应用

sbin/rabbitmqctl reset //重置应用

sbin/rabbitmqctl shutdown // 关闭应用和stop_app差不多

sbin/rabbitmqctl status //查看对应的rabbitmq状态

 

3.2 用户相关

sbin/rabbitmqctl add_user//添加用户

sbin/rabbitmqctl delete_user// 删除用户

sbin/rabbitmqctl change_password//修改密码

sbin/rabbitmqctl clear_password//清除用户密码

sbin/rabbitmqctl set_user_tags… // 设置用户标签

sbin/rabbitmqctl list_users // 列出所有用户

 

3.3 vhost 相关

sbin/rabbitmqctl add_vhost// 添加vhost

sbin/rabbitmqctl delete_vhost// 删除vhost

sbin/rabbitmqctl list_vhost // 列出所有的vhost

 

3.4 权限相关

sbin/rabbitmqctl set_permissions [-p]// 设置用户对应的权限

sbin/rabbitmqctl list_user_permissions// 列出用户的权限

sbin/rabbitmqctl list_permissions [-p] // 列出vhost的权限

sbin/rabbitmqctl clear_permissions [-p]// 清除用户的权限

 

3.5 队列消息相关

sbin/rabbitmqctl list_queues [-p] //列出vhsot中对应的queue

sbin/rabbitmqctl list_exchanges [-p] //列出vhsot中对应的交换机

sbin/rabbitmqctl list_bindings [-p] // 列出对应的绑定信息

sbin/rabbitmqctl list_connections // 列出对应的连接数

sbin/rabbitmqctl list_channels // 列出对应的信道

sbin/rabbitmqctl list_consumers //列出对应的消费者 

sbin/rabbitmqctl list_queues -p vhost_test1 //列出queues

sbin/rabbitmqctl list_queues -p vhost_test1 name messages consumers memory //查看queues对应统计信息

 

3.6 具体实例

创建一个名为 vhost_test1 的 vhost,

再创建一个 test 的用户赋予 admin 的权限,并且拥有 vhost_test1 权限,以及赋予读写和配置文件操作的权限。

sbin/rabbitmqctl add_vhost vhost_test1 // 创建vhost

sbin/rabbitmqctl add_user test 123456

sbin/rabbitmqctl set_user_tags admin administrator //设置test有admin权限

sbin/rabbitmqctl set_permissions -p vhost_test1 test "." "." ".*" //设置用户的读写配置文件权限

 

查看所有的 vhost :

sbin/rabbitmqctl list_vhosts

查看所有的用户:

sbin/rabbitmqctl list_users

 

查看 vhost_test1 下用户的权限:

sbin/rabbitmqctl list_permissions -p vhost_test1

 

单独查询 test 用户的权限:

sbin/rabbitmqctl list_user_permissions test 

 

4. RabbitMQ 之插件管理

查看默认支持的所有插件:

sbin/rabbitmq-plugins list

开启后台管理界面,找到对应的 rabbitmq_management 启用一下:

sbin/rabbitmq-plugins enable rabbitmq_management

启动成功之后访问 http://ip:15672/#/。

用我们之前 rabbitmqctl 创建的用户 test 登录进去

 

 

二 集群搭建

 

1、群节点间需能互相访问,故每个集群节点的hosts文件应包含集群内所有节点的信息以保证互相解析

vim /etc/hosts

1 IP    rabbitmq-node1

2 IP    rabbitmq-node2

3 IP    rabbitmq-node3

 

2、同步.erlang.cookie

保持三台机器的.erlang.cookie同步

/root/.erlang.cookie

 

3、分别启动node1 node2 node3

 rabbitmq-server -detached

 

4、停node2、node3应用

rabbitmqctl stop_app

 

5、将node2、node3加到mq1中

rabbitmqctl join_cluster rabbit@rabbitmq-node1

 

6、启动node2、node3应用

rabbitmqctl start_app

 

7、查看集群状态

 rabbitmqctl cluster_status 

 

你可能感兴趣的:(10分钟学会RabbitMQ安装部署)