1. 防止安装程序需要各种依赖包,先更新yum所有包
# yum install -y gcc gdb strace gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs patch e2fsprogs-devel krb5-devel libidn libidn-devel openldap-devel nss_ldap openldap-clients openldap-servers libevent-devel libevent uuid-devel uuid mysql-devel
2. 安装EPEL, 是Red Hat / Fedora组织的一部分,提供了许多额外的软件包,包括Erlang
# yum install epel-release
3. 安装两个els编译的rpm包, esl-erlang和esl-erlang-compat
# rpm -ivh esl-erlang_19.2.2-centos-7_amd64.rpm# rpm -ivh esl-erlang-compat-18.1-1.noarch.rpm
注:安装这两个包如果出现依赖问题,请使用yum install [依赖包名] 进行安装
4. 安装 rabbitmq-server
# rpm -ivh rabbitmq-server-3.6.6-1.el7.noarch.rpm
注:安装时如果提示需要socat则直接使用 yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm命令来安装,因为yum安装可以自动安装socat
5. 启动rabbitmq-server服务
# cd /usr/sbin# ./rabbitmq-server
注:可以通过以下命令添加rabbitmq-server的软链接,这样可以在任何地方启动服务了
# sudo ln -s /usr/sbin/rabbitmq-server /usr/local/bin/rabbitmq-server
6. 关闭rabbitmq-server服务
# rabbitmqctl stop
7. 启用RabbitMQ Web管理插件
# rabbitmq-plugins enable rabbitmq_management
启用该插件后出于安全考虑,默认只能在本机进行web访问,默认的用户名与密码为guest,访问端口为15672,如:http://localhost:15672/ 但是对于没有安装Linux桌面的用户来说无法通过网络访问,这里通过以下几步即可解决问题
(1)添加一个新的用户
- add_user {username} {password}
--username:用户名
--password:密码
如:添加用户名为admin, 密码也为admin的用户
# rabbitmqctl add_user admin admin
查看刚添加的用户
# rabbitmqctl list_users
(2)用户权限授予
- set_permissions [-p vhost] {user} {conf} {write} {read}
--vhost:路径访问名称
--user:授权用户名
--conf:一个匹配资源名的用户配置权限正则表达式
--write:一个匹配资源名的用户获得写权限正则表达式
--read:一个匹配资源名的用户获得读权限正则表达式
如:给admin用户添加权限
# rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
查看用户权限
# rabbitmqctl list_permissions -p /
(3)设置admin用户为administrator角色
- set_user_tags {username} {tag ...}
--username:用户名
--tag:角色
# rabbitmqctl set_user_tags admin administrator
通过以上三步即可实现通过外部网路访问RabbitMQ Web界面