RabbitMQ实战(一)之搭建-阿里云开发者社区

开发者社区> magicalman> 正文

RabbitMQ实战(一)之搭建

简介: RabbitMQ3.8.3在Centos7以及Windos上搭建
+关注继续查看

1.RabbitMQ windows 安装
2.RabbitMq Linux Centos 7 安装及操作密令
3.遇到的问题

windows 安装

  • Download:
    Windows Rabbit-Server-3.8.3:官方下载地址,如果官方的下载地址打不开或者下载很慢的话,可是尝试:点我直接下载
  • 安装并修改启动方式
    windows安装只要双击exe文件,然后选择保存地址,即可安装完成。安装完成后,windods上默认启用rabbit-management plugin,通过ip:15672访问Web管理页面,使用拥有管理员角色的默认账号guest,密码也是guest,即可成功安装。

这里要说的是,平常在windows电脑这个Rabbit进程可能不需要每天运行着,可以通过windows的本地服务修改Rabbit进程为手动启动,只有在使用的时候,才打开运行它,不至于拖慢PC运行速度。

  • 如果要使用rabbitmqctl的命令,在安装的根目录找到sbin文件,在当前文件下运行cmd或PowerShell。(不过有管理页面何不偷偷懒)

Centos 7 安装

  • Download
    在Centos上安装需要安装三个程序:Erlang,socat,rabbit-server,我使用的都是npm的安装包,并没有使用源码进行编译安装(方便快捷不易出错)

因为RabbitMQ-Server的版本要与Erlang的版本对应,从版本对照表中,我选择的是:RabbitMQ-Server-3.8.3Erlang-22.x

  • 方式一
    先下载npm包再使用rz上传
  • Centos 6:

Centos6-Erlang-22.2.8 npm

RabbitMQ-Server-3.8.3 npm

  • Centos 7:

Centos7-Erlang-22.2.8 npm

RabbitMQ-Server-3.8.3 npm

  • Centos 8:

Centos8-Erlang-22.2.8 npm

RabbitMQ-Server-3.8.3 npm

再使用rz密令上传到服务器指定的文件下。

但推荐下面一步到位的方式

  • 方式二 使用 wget 神器直接下载到服务器:

wget

-c:断点续传

-b:后台下载

tail -f wget-log 查看当前下载任务的进度

在需要保存npm包的文件下运行

  • Centos 6:

    Erlang: wget https://dl.bintray.com/rabbitmq-erlang/rpm/erlang/22/el/6/x86_64/erlang-22.2.8-1.el6.x86_64.rpm -b -c ./
    RabbitMQ-Server:wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.3/rabbitmq-server-3.8.3-1.el6.noarch.rpm -b -c ./
  • Centos 7:

    Erlang: wget https://dl.bintray.com/rabbitmq-erlang/rpm/erlang/22/el/7/x86_64/erlang-22.2.8-1.el7.x86_64.rpm -b -c ./
    RabbitMQ-Server: wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.3/rabbitmq-server-3.8.3-1.el7.noarch.rpm -b -c ./
  • Centos 8:

    Erlang: wget: https://dl.bintray.com/rabbitmq-erlang/rpm/erlang/22/el/7/x86_64/erlang-22.2.8-1.el8.x86_64.rpm -b -c ./
    RabbitMQ-Server: wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.3/rabbitmq-server-3.8.3-1.el8.noarch.rpm -b -c ./
    

下载完成后文件下安装包:
rpm

  • 安装
  • 使用rpm -ivh命令

rpm -ivh erlang-22.2.8-1.el7.x86_64.rpm
查看Erlang 安装是否成功:erl -Version
erlang_version

如果马上运行 rpm -ivh rabbitmq-server-3.8.3-1.el7.noarch.rpm会出现缺少socat 错误
rabbit_server_error

so,运行yum install -y socat,先安装依赖;
rpm_socat

再运行rpm -ivh rabbitmq-server-3.8.3-1.el7.noarch.rpm
两条百分百的进度条表示安装成功
rpm_rabbit_server

  • 启用管理页面以及常用的命令
    在Centos上对RabbitMQ-Server的所有操作都能用rabbitmqctl命令完成,就类似于systemctl
  • 启用management plugin:
    rabbitmq-plugins enable rabbitmq_management

enable_rabbitmq_management_plugins

  • 启动Server:
    rabbitmqctl start_app,通过ip:15672访问管理页面,使用默认的管理员角色的账户和密码guest登录,
  • 停止Server
    rabbitmqctl stop_app,这种停止只会停止rabbit-server的进程,Erlang VM 不会停止,而rabbitmqctl shutdown rabbitmq-server和Erlang VM都会停止。
  • 用户相关操作的命令(当使用管理员登录web管理平台时,web页面上同样可以操作)
  • rabbitmqctl add_user username password: 增加用户
  • rabbitmqctl set_user_tags username 角色: 为用户设置角色
  • rabbitmqctl delete_user username: 删除用户
  • rabbitmqctl user_list :当前用户列表以及用户对应的角色列表
    还有其他Queues、Exchanges、Bindings的操作指令,建议使用Web管理页面或者程序操控,以及更多的命令通过rabbitmqctl -h查看。而集群的命令以及搭建且听我下次分解。

系列问题

  • 端口未开放,无法访问web端
  • 开放15672以及5672端口
    firewall-cmd --zone=public --add-port=15672/tcp --permanent

firewall_cmd_add_port

  • 重启防火墙:
    firewall-cmd --reload

firewall_cmd_reload

我是IT界的一名小学生,如果文中有错误的地方,欢迎各位同仁指正。也欢迎大家评论方留言大家一起交流学习

欢迎订阅我的公众号,及时获取最新的更新
UToBetter

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《企业级ios应用开发实战》一2.4 搭建iOS开发环境
本节书摘来自华章出版社《企业级ios应用开发实战》一 书中的第2章,第2.4节,作者:杨宏焱,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1714 0
《Redis实战》一导读
Chris Testa是我在圣莫尼卡Google分部工作时认识的一个朋友,我从2010年3月开始和他一起在加利福尼亚州贝弗利山的一间小创业公司工作,Chris是公司的领头和主管,而我则受聘于他成为了公司研究部门的架构师。
1463 0
Docker DevOps实战: 一分钟搭建Hexo博客
本文简单介绍了如何利用Hexo镜像快速创建Hexo博客以及博文,需要用到阿里云容器服务产品。
6831 0
基于Spark的机器学习实践 (三) - 实战环境搭建
0 相关源码 1 Spark环境安装 ◆ Spark 由scala语言编写,提供多种语言接口,需要JVM ◆ 官方为我们提供了Spark 编译好的版本,可以不必进行手动编译 ◆ Spark安装不难,配置需要注意,并且不一定需要Hadoop环境 下载 解压 tar zxvf spark-2.
1018 0
SpringBoot实战(九)之Validator
表单验证,是最为常见的,今天演示的是利用hibernate-validtor进行校验,有的时候,虽然前端方面通过jQuery或者require.js校验框架进行校验,可以减轻服务器的压力和改善用户体验,但是比如第三方请求接口方面也需要校验,在Controller里面套着一大堆if-elseif-else等等,两层嵌套还好,三层或者三层以上就不好了,日子久了继续嵌套,就会导致后面变得难以维护。
923 0
+关注
magicalman
即使是搬砖,也要有自己的姿势
2
文章
233
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载