RabbitMQ安装与使用

本文介绍如何在Linux环境下安装配置Erlang、simplejson及RabbitMQ,包括解决常见错误的方法,以及RabbitMQ用户管理、角色设置与权限分配等内容。
  1.   Erlang安装(Linux)

    http://www.erlang.org/download.html  -- 下载地址

     wget http://www.erlang.org/download/otp_src_18.0.tar.gz   -- 下载Erlang源码包 

    tar xvzf otp_src_18.0.tar.gz  -- 解压包

     ./configure --prefix=/usr/local/erlang 

    configure: error: No curses library functions found

    configure: error: /bin/sh '/usr/rabbitmq/install/otp_src_18.0/erts/configure' failed for erts

    -- 报上述错是,安装curses,重新配置

     yum list|grep ncures  

     yum -y install ncurses-devel 

    make

    make install

  2. simplejson安装(Linux)

    wget --no-check-certificate https://pypi.python.org/packages/source/s/simplejson/simplejson-3.8.0.tar.gz  -- 下载

    tar -xvzf simplejson-3.8.0.tar.gz  -- 解压

     

    cd simplejson-3.8.0

    python setup.py install  --超级用户安装,如是当前用户,使用sudo,需要超级管理员授权

  3. RabbitMQ安装(Linux)

    http://www.rabbitmq.com  -- 官网(下载地址)

    make TARGET_DIR=/usr/rabbitmq/rabbitmq3/bin SBIN_DIR=/usr/rabbitmq/rabbitmq3/sbin MAN_DIR=/usr/rabbitmq/rabbitmq3/man DOC_INSTALL_DIR=/usr/rabbitmq/rabbitmq3/doc install

    报错

    /bin/sh: xmlto: command not found

    /bin/sh: line 2: xmlto: command not found

    安装:yum -y install xmlto

    -- 启动

    cd /usr/rabbitmq/rabbitmq3/bin/sbin

    ./rabbitmq-server start &

    添加rabbitmq目录 /etc/rabbitmq

    ./rabbitmq-plugins enable rabbitmq_management

    -- 端口

    rabbitmq端口为5672

    http://127.0.0.1:15672/登录管理界面了,本机访问可以使用guest/guest,远程访问需要建立账户

    vi /etc/rabbitmq/rabbitmq.config 添加

    [  

    {rabbit, [{tcp_listeners, [5672]}, {loopback_users, ["a1"]}]}  

    ]

    -- 命令执行

    cd /usr/rabbitmq/rabbitmq3/bin/sbin

    #用户名与密码

    ./rabbitmqctl add_user a1 123456

    #用户设置为administrator才能远程访问

    ./rabbitmqctl set_user_tags asdf administrator

    ./rabbitmqctl set_permissions -p / asdf ".*" ".*" ".*"

    -- 然后远程登录账号为a1/123456

    --------------------------------------------------------------------------------------------------------

    启动报错:ERROR: epmd error for host "****": timeout (timed out establishing tcp connection)

    修改hostname 或 /etc/hosts 保持主机名一样

1. 用户管理
用户管理包括增加用户,删除用户,查看用户列表,修改用户密码。
相应的命令
(1) 新增一个用户
rabbitmqctl  add_user  Username  Password
(2) 删除一个用户
rabbitmqctl  delete_user  Username
(3) 修改用户的密码
rabbitmqctl  change_password  Username  Newpassword
(4) 查看当前用户列表
rabbitmqctl  list_users
2. 用户角色
按照个人理解,用户角色可分为五类,超级管理员, 监控者, 策略制定者, 普通管理者以及其他。
(1) 超级管理员(administrator)
可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。
(2) 监控者(monitoring)
可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
(3) 策略制定者(policymaker)
可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
与administrator的对比,administrator能看到这些内容
(4) 普通管理者(management)
仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。
(5) 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。
了解了这些后,就可以根据需要给不同的用户设置不同的角色,以便按需管理。
设置用户角色的命令为:
rabbitmqctl  set_user_tags  User  Tag
User为用户名, Tag为角色名(对应于上面的administrator,monitoring,policymaker,management,或其他自定义名称)。
也可以给同一用户设置多个角色,例如
rabbitmqctl  set_user_tags  hncscwc  monitoring  policymaker
3. 用户权限
用户权限指的是用户对exchange,queue的操作权限,包括配置权限,读写权限。配置权限会影响到exchange,queue的声明和删除。读写权限影响到从queue里取消息,向exchange发送消息以及queue和exchange的绑定(bind)操作。
例如: 将queue绑定到某exchange上,需要具有queue的可写权限,以及exchange的可读权限;向exchange发送消息需要具有exchange的可写权限;从queue里取数据需要具有queue的可读权限。详细请参考官方文档中"How permissions work"部分。
相关命令为:
(1) 设置用户权限
rabbitmqctl  set_permissions  -p  VHostPath  User  ConfP  WriteP  ReadP
(2) 查看(指定hostpath)所有用户的权限信息
rabbitmqctl  list_permissions  [-p  VHostPath]
(3) 查看指定用户的权限信息
rabbitmqctl  list_user_permissions  User
(4)  清除用户的权限信息
rabbitmqctl  clear_permissions  [-p VHostPath]  User
===============================

 

转载于:https://my.oschina.net/u/1179666/blog/492953

安装使用RabbitMQ,你可以按照以下步骤进行操作: 1. 首先,你需要下载合适的RabbitMQ版本。建议下载Binary版本,因为它相对简单,不需要额外的操作系统和依赖软件。你可以在官网http://www.rabbitmq.com/download.html上找到下载链接。\[2\] 2. 下载完成后,你需要启动RabbitMQ服务器。在命令行中输入命令"rabbitmq-server --detached"来启动服务器。你可以使用命令"rabbitmqctl status"来查看服务器的状态,使用命令"rabbitmqctl stop"来停止服务器。\[2\] 3. 安装完成后,你可以在你的项目引用中找到RabbitMQ.Client,并使用"using RabbitMQ.Client;"来引入RabbitMQ的命名空间。这样你就可以在你的项目中使用RabbitMQ了。\[1\] 希望这些信息对你有帮助!如果你还有其他问题,请随时提问。 #### 引用[.reference_title] - *1* [RabbitMQ安装使用](https://blog.youkuaiyun.com/q__y__L/article/details/94217121)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [RabbitMQ安装使用](https://blog.youkuaiyun.com/Tongdao/article/details/51638066)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [rabbitmq安装使用](https://blog.youkuaiyun.com/weixin_34185364/article/details/94702255)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值