安装相关依赖:
yum update
yum install epel-release
yum install gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf java-1.8.0-openjdk-devel git wget wxBase.x86_64
安装 ErLang
wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
yum update
yum install erlang
输入 erl 检查一下是否安装成功
安装 RabbitMq
rpm --import https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
卸载 RabbitMQ 与 Erlang
/sbin/service rabbitmq-server stop
yum list | grep rabbitmq
yum -y remove rabbitmq-server.noarch
yum list | grep erlang
yum -y remove erlang-*
yum remove erlang.x86_64
rm -rf /usr/lib64/erlang
rm -rf /var/lib/rabbitmq/ # 清除rabbitmq配置文件
-
启动服务
systemctl start rabbitmq-server
安装插件
安装插件后可以访问 localhost:15672 来通过 Web 端管理 RabbitMQ。
rabbitmq-plugins enable rabbitmq_management
踩坑
[root@SHA1000154085 rabbitmq]# rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:
amqp_client
cowlib
cowboy
rabbitmq_web_dispatch
rabbitmq_management_agent
rabbitmq_management
Applying plugin configuration to rabbit@SHA1000154085... failed.
Error: {cannot_read_enabled_plugins_file,"/etc/rabbitmq/enabled_plugins",
eacces}
解决办法:
umask 预设权限(权限掩码),当我们建立一个目录或档案时,它都会带一个默认权限
022表示默认创建新文件权限为755 也就是 rxwr-xr-x(所有者全部权限,属组读写,其它人读写)
umask 0022
rabbitmq-plugins enable rabbitmq_management
RabbitMq 的使用
-
启动
service rabbitmq-server start
-
停止
service rabbitmq-server stop
-
查看运行状态
service rabbitmq-server status
-
创建管理用户
rabbitmqctl add_user jiaflu 123456
-
设置管理员
RabbitMQ Server 默认guest用户,只能localhost 地址访问,我们还需要创建管理员用户。
rabbitmqctl set_user_tags jiaflu administrator
-
设置权限
rabbitmqctl set_permissions jiaflu ".*" ".*" ".*" # 赋予 all
-
查看(指定 hostpath)所有用户的权限信息
rabbitmqctl list_permissions [-p VHostPath]
-
查看指定用户的权限信息
rabbitmqctl list_user_permissions jiaflu
-
清除用户的权限信息
rabbitmqctl clear_permissions [-p VHostPath] jiaflu
-
其他命令
#查询用户: rabbitmqctl.bat list_users #查询vhosts: rabbitmqctl.bat list_vhosts #启动RabbitMQ服务: net stop RabbitMQ && net start RabbitMQ
应用管理指令
rabbitmqctl stop [pid_file]
用于停止运行 RabbitMQ 的 Erlang 虚拟机和 RabbitMQ 服务应用。如果指定了 pid_file,还需要等待指定进程的结束。
rabbitmqctl shutdown
用于停止运行 RabbitMQ 的 Erlang 虚拟机和 RabbitMQ 服务应用。执行这个命令会阻塞直到 Erlang 虚拟机进程退出。如果 RabbitMQ 没有关闭成功,则会返回一个非零值。
这个命令和 rabbitmqctl stop 不同的是,它不需要指定 pid_file 而可以阻塞等待指定进程的关闭。
rabbitmqctl stop_app
停止 RabbitMQ 服务应用,但是 Erlang 虚拟机还是处于运行状态。
rabbitmqctl start_app
启动 RabbitMQ 应用。
rabbitmqctl wait [pid_file]
等待 RabbitMQ 应用的启动。
rabbitmqctl reset
将 RabbitMQ 节点重置还原到最初状态。包括从原来所在的集群中删除此节点,从管理数据库中删除所有的配置数据,如已配置的用户、vhost等,以及删除所有的持久化消息。
rabbitmqctl force_reset
强制将 RabbitMQ 节点重置还原到最初状态。它只能在数据库或集群配置已损坏的情况下使用。与 rabbitmqctl reset 命令一样,执行 rabbitmqctl force_reset 命令前必须先停止 RabbitMQ 应用
rabbitmqctl rotate_logs {suffix}
指示 RabbitMQ 节点轮换日志文件。
转载自:https://www.jianshu.com/p/fed2efe62147,