CentOS7.4安装RabbitMQ消息队列

    技术2022-07-16  75

    1. 安装Socat

    在线安装依赖环境:

    yum install gcc yum install socat

    2. 安装Erlang

    mkdir /rabbitmq && cd /rabbitmq # 上传 erlang-22.0.7-1.el7.x86_64.rpm 安装包上传 # 安装 rpm -ivh erlang-22.0.7-1.el7.x86_64.rpm

    3. 安装RabbitMQ

    cd /rabbitmq # 上传 rabbitmq-server-3.7.17-1.el7.noarch.rpm 安装包 上传 # 安装 rpm -ivh rabbitmq-server-3.7.17-1.el7.noarch.rpm

    4. 开启管理界面及配置

    # 开启管理界面 rabbitmq-plugins enable rabbitmq_management 出现如下说明: Enabling plugins on node rabbit@localhost: rabbitmq_management The following plugins have been configured: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatch Applying plugin configuration to rabbit@localhost... The following plugins have been enabled: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatch set 3 plugins. Offline change; changes will take effect at broker restart. # 配置远程可使用guest登录mq cd /usr/share/doc/rabbitmq-server-3.7.17 cp rabbitmq.config.example /etc/rabbitmq/rabbitmq.config # 修改配置文件 vi /etc/rabbitmq/rabbitmq.config

    修改/etc/rabbitmq/rabbitmq.config配置文件:

    # 启动RabbitMQ的服务 启动: systemctl start rabbitmq-server 重启: systemctl restart rabbitmq-server 关闭 systemctl stop rabbitmq-server # 查看服务状态:很重要,如下图所示:active(running) systemctl status rabbitmq-server ● rabbitmq-server.service - RabbitMQ broker Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; disabled; vendor preset: disabled) Active: active (running) since 三 2019-09-25 22:26:35 CST; 7s ago Main PID: 2904 (beam.smp) Status: "Initialized" CGroup: /system.slice/rabbitmq-server.service ├─2904 /usr/lib64/erlang/erts-10.4.4/bin/beam.smp -W w -A 64 -MBas ageffcbf -MHas ageffcbf - MBlmbcs... ├─3220 erl_child_setup 32768 ├─3243 inet_gethost 4 └─3244 inet_gethost 4 ......... #关闭防火墙服务 systemctl disable firewalld Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. systemctl stop firewalld #访问web管理界面 http://10.15.0.8:15672/

    5. 启动

    centos6用这个命令: /sbin/service rabbitmq-server restart centos7用这个命令: systemctl start rabbitmq-server

    6. 配置虚拟主机及用户

    6.1. 用户角色

    RabbitMQ在安装好后,可以访问http://ip地址:15672 ;其自带了guest/guest的用户名和密码;如果需要创建自定义用户;那么也可以登录管理界面后,如下操作:

    角色说明:

    1、 超级管理员(administrator)

    可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。

    2、 监控者(monitoring)

    可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

    3、 策略制定者(policymaker)

    可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。

    4、 普通管理者(management)

    仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。

    5、 其他

    无法登陆管理控制台,通常就是普通的生产者和消费者。

    6.2. Virtual Hosts配置

    像mysql拥有数据库的概念并且可以指定用户对库和表等操作的权限。RabbitMQ也有类似的权限管理;在RabbitMQ中可以虚拟消息服务器Virtual Host,每个Virtual Hosts相当于一个相对独立的RabbitMQ服务器,每个VirtualHost之间是相互隔离的。exchange、queue、message不能互通。 相当于mysql的db。Virtual Name一般以/开头。

    6.2.1. 创建Virtual Hosts

    6.2.2. 设置Virtual Hosts权限

    Processed: 0.009, SQL: 9