说明:请使用资料里提供的CentOS-7-x86_64-DVD-1810.iso 安装虚拟机.
在线安装依赖环境:
yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz
根据课前提供的资料,上传如下三个rpm文件
erlang-18.3-1.el7.centos.x86_64.rpm
socat-1.7.3.2-5.el7.lux.x86_64.rpm
rabbitmq-server-3.6.5-1.noarch.rpm
1、安装erlang-18.3-1.el7.centos.x86_64.rpm
rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm
如果不是采用CentOS-7-x86_64-DVD-1810.iso安装的系统,则有可能出现如下错误
说明gblic 版本太低。我们可以查看当前机器的gblic 版本
strings /lib64/libc.so.6 | grep GLIBC #有的机器当前最高版本2.12,需要2.15.所以需要升级glibc
首先使用yum更新安装依赖
sudo yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make -y
然后使用wget命令下载要安装的rpm包
wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-utils-2.17-55.el6.x86_64.rpm &
wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-static-2.17-55.el6.x86_64.rpm &
wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-2.17-55.el6.x86_64.rpm &
wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-common-2.17-55.el6.x86_64.rpm &
wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-devel-2.17-55.el6.x86_64.rpm &
wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-headers-2.17-55.el6.x86_64.rpm &
wget http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/nscd-2.17-55.el6.x86_64.rpm &
安装rpm包
sudo rpm -Uvh *-2.17-55.el6.x86_64.rpm --force --nodeps
安装完毕后再查看glibc版本
strings /lib64/libc.so.6 | grep GLIBC #发现glibc版本已经到2.17了
[root@localhost ~]#rpm -ivh socat-1.7.3.2-1.1.el7.x86_64.rpm --nodeps
[root@localhost ~]#rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm
# 开启管理界面
[root@localhost ~]#rabbitmq-plugins enable rabbitmq_management
[root@localhost ~]#service rabbitmq-server start # 启动服务
[root@localhost ~]#service rabbitmq-server stop # 停止服务
[root@localhost ~]#service rabbitmq-server restart # 重启服务
第五步:创建一个账户。
添加 admin 用户并设置密码
rabbitmqctl add_user admin 123456
添加 admin 用户为administrator角色
rabbitmqctl set_user_tags admin administrator
设置 admin 用户的权限,指定允许访问的vhost以及write/read
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
查看vhost(/)允许哪些用户访问
rabbitmqctl list_permissions -p /
查看用户列表
rabbitmqctl list_users
确认无误以后基本可以说就完成了。
第六步:登录!
RabbitMQ在安装好后,可以访问http://ip地址:15672;其自带了guest/guest的用户名和密码;如果需要创建自定义用户;那么也可以登录管理界面后,如下操作:
当然我们也可以添加一个其他的用户,点击admin,在右侧点击users
角色说明:
1、超级管理员(administrator):可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
2、监控者(monitoring):可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
3、策略制定者(policymaker):可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
4、普通管理者(management):仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
5、其他:无法登陆管理控制台,通常就是普通的生产者和消费者。
像mysql拥有数据库的概念并且可以指定用户对库和表等操作的权限。RabbitMQ也有类似的权限管理;在RabbitMQ中可以虚拟消息服务器Virtual Host,每个Virtual Hosts相当于一个相对独立的RabbitMQ服务器,每个VirtualHost之间是相互隔离的。exchange、queue、message不能互通。 相当于mysql的db。Virtual Name一般以/开头。
在管理界面的overview里面,下面有如下配置,找不到队列的配置文件
复制rabbitmq的配置文件到/etc/rabbitmq里面里面,操作如下
[root@localhost ~]#cd /usr/share/doc/rabbitmq-server-3.6.5/
[root@localhost ~]#cp rabbitmq.config.example /etc/rabbitmq/rabbitmq.config
[root@localhost ~]#service rabbitmq-server restart