当前位置:   article > 正文

rabbitmq3.8.16在centos7中的详细图文安装记录

rabbitmq3.8.16

当今市面上有很多主流的消息中间件,如ActiveMQRabbitMQKafka,以及阿里巴巴自主开发RocketMQ等。这些消息中间件各有长短,但如今市面上使用最多的应该还是rabbitmq,社区也十分活跃。这篇文章中就来简单记录下rabbitmqcentos7环境下的安装及配置过程。这里选择版本是目前最新版3.8.16,其他版本的安装可能不适用,仅供参考。

几乎所有步骤中都有截图说明,由于分屏后分辨率太高,截取的图片太大,太占页面,所以使用的是渣渣笔记本100%缩放下屏幕截图,看起来不是很清晰,大家凑合着看哈。如果有什么地方写错了,或者各位大佬有什么补充,也欢迎大家进行评论。

一、下载Erlang

rabbitmq是使用Erlang语言开发的,所以在安装rabbitmq之前,需要先安装Erlang。不同版本的rabbitmqErlang语言的版本要求不同,具体可根据官网列出的依赖关系选择,点击查看。先进入Erlang下载地址下载Erlang

image-20210512205234750

点击链接,跳转后的页面如下所示

image-20210512211257693

可以点击右上角下载到本地,再上传,也可以使用截图右下角中展示的wget命令直接下载到服务器上,还可以直接使用截图中间展示的yum命令直接安装。这里我选择先下载到本地(本地备个份),再通过ftp上传到服务器。

二、下载rabbitmq 3.8.16

下载地址,选择centos7的,下载到本地。

image-20210512204913385

三、安装

将上面两步中下载的安装包通过ftp上传到服务器的 /opt/software/rabbitmq 位置,然后进行安装。

image-20210512211654775

# 进入上述安装包下载位置
$ cd /opt/software/rabbitmq
# 安装Erlang
$ rpm -ivh erlang-23.3.3-1.el7.x86_64.rpm
# 安装rabbitmq
$ rpm -ivh rabbitmq-server-3.8.16-1.el7.noarch.rpm
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在执行上述安装命令中,Erlang安装成功了,但在安装rabbitmq时却失败了,提示缺少socat依赖,如下图所示。

image-20210512212147876

socat是一个多功能的网络工具,名字来源于SOcket CAT,是netcat的增强版。这里我使用的是yum命令进行安装。

$ yum install socat -y
  • 1

socat安装完毕后,再来安装rabbitmq,这一次安装成功了。

image-20210512213034000

安装成功后,尝试启动

# 在任意目录下执行下面的命令,rabbitmq-server可以通过tab建补全(我这里纯手打),可以不加.service后缀
$ systemctl start rabbitmq-server
  • 1
  • 2

然后查看启动了哪些进程

image-20210512231920921

可以通过systemctl status rabbitmq-server命令查看启动状态

image-20210512232120347

从上图中可以看到rabbitmq已经成功启动起来了。

如果需要关闭,则可以通过systemctl stop rabbitmq-server即可。

# 启动
$ systemctl start rabbitmq-server
# 查看状态
$ systemctl status rabbitmq-server
# 重启
$ systemctl restart rabbitmq-server
# 关闭
$ systemctl stop rabbitmq-server
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

四、开启图形化管理界面插件

使用过rabbitmq的应该都知道,rabbitmq是自带了图形化操作界面插件的,端口默认是15672。图形化界面插件默认是关闭状态,可以通过下述命令进行开启:

$ rabbitmq-plugins enable rabbitmq_management
  • 1

image-20210512234206438

启用插件命令执行完毕后,可以通过lsof -i:<端口>命令查看一下端口状态

image-20210512234440042

接下来通过浏览器访问一下,http://ip:15672,默认用户名和密码都是guest

image-20210512234723511

登录的时候却发现报错了,如上图所示,翻译过来就是说“该用户只能在本地主机进行登录”,这是rabbitmq默认的访问控制,详情可查看官网相关的配置说明,地址在这里,后面在配置一节中我会单独进行说明。

既然只能在本地登录,那我就到VMware中直接操作好了

image-20210512235640291

登录成功后看到我们熟悉的页面了

image-20210512235901185

在接下来我会简单提一下rabbitmq的配置文件,以及如何处理上述的只能在本地进行登录的问题。

五、配置

1、安装的新版本,找不到配置文件?

安装成功后,在/usr/share/doc/rabbitmq-server-x.x.x(x.x.x表示版本号)目录下会有一个rabbitmq.conf.example的配置文件,但貌似新版本中移除了,只有旧版本中才有,至少3.8.16这个版本中是没有。

可以使用rpm -ql <软件名>命令查看rabbitmq都安装了哪些文件来验证一下。

$ rpm -ql rabbitmq-server
  • 1

通过上述命令的结果,可以发现,3.8.16这个版本中确实是没有rabbitmq.conf.example这个文件,那还能咋办,官网查呗!(如果你安装的是旧版本,有这个文件,也请接着往下看)

2、官网的配置指导说明

我们可以到官网上查看rabbitmq的配置说明,这里给出地址,打开后如下图所示

image-20210512222837585

上图中红框导航部分翻译过来就是:

3、允许guest用户从任意网络登录

回到配置说明中,点击第一点或往下滚动网页,查看配置方法,截图如下:

image-20210513133925628

截图中框出来的部分就是接下来要看的认证、授权,不然外网没法登录管理控制页面。点击链接进入相应页面,可以看到下面这么一段,明确说明了默认用户只能用于本地连接,远程连接会被拒绝,同时,最下面一行也说明了生产环境不应使用默认账户,而是应该创建一个新的账户来代替。

image-20210513134332366

当然,非要使用guest用户访问也是可以的,见下图所示

image-20210513134826862

先来测试一下,上面这个方法行不行。由于这个版本没有配置文件,所以我们需要手动创建一下。

注意,文件名一定要是rabbitmq.conf,后缀一定要是conf,不能是configconfig是高级配置使用的,二者的语法是不同的。

$ cd /etc/rabbitmq/
# 创建并编辑配置文件
$ vim rabbitmq.conf
# 在文件中添加一行 loopback_users = none
# 保存,退出
  • 1
  • 2
  • 3
  • 4
  • 5

image-20210513140635126

重启rabbitmq

$ systemctl restart rabbitmq-server.service
# 没有报错,没有消息就是好消息。再查看状态,也是成功的
$ systemctl status rabbitmq-server.service
  • 1
  • 2
  • 3

接下来就可以在win10本地直接通过guest账号登录了。

image-20210513141026263

除了上面这种方式外,还有其他方式来进行配置,回到官网配置信息页面,找到关于配置文件的描述,大致就是说源码库中包含了一个名叫rabbitmq.conf.example的文件,这个文件中包含了我们可能会使用到的绝大多数配置示例,对于比较晦涩的配置,则是被隐藏了。如下图

image-20210513204359016

点击红框中的链接即可跳到github中的配置文件示例页面,如下图所示

image-20210513204528573

接下来将这个文件下载下来(可以手动将里面的内容复制出来),上传到/etc/rabbitmq/中,命名就是rabbitmq.conf,也就是说,需要将之前的配置文件覆盖掉,打开新的配置文件,可以发现,里面的所有配置项前面都有井号#注释。在配置文件找到如下所示的配置

image-20210513205302178

光标上面的注释解释起来大概就是:如果你想允许guest用户从任意网络进行访问,那就取消下面那行的注释。我试了一下,将光标位置出的注释去掉,保存重启,发现也是能从本地使用guest用户进行登录访问的。

介绍完了两种方法后,接下来按照官网推荐的方式新建用户来进行访问,先将上面配置文件中的去掉的注释还原回来,让guest还是只允许本地访问(同时建议guest的密码改了,或者直接删除掉guest用户)。

4、添加新用户

打开上面第3节中第一张截图中的链接,找到用户权限管理,官网讲的很细,用户的增删改查都列出来了,如下图所示

image-20210513211010534

接下来按照官网的说明创建一个管理员用户admin,密码也是admin(密码不建议使用这个,我这里为了记起来方便这么取)

$ rabbitmqctl add_user admin admin
  • 1

接下来给用户授权

image-20210513211733746

# 授予admin用户默认visual host “/”下的所有资源的配置、写、读权限
$ rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
# 授予admin用户administrator角色
$ rabbitmqctl set_user_tags admin administrator
  • 1
  • 2
  • 3
  • 4

image-20210513212704056

上述操作也可以在可视化管理页面上进行操作

image-20210513213539072

添加完成后,点击列表中用户名即可进入该用户的管理页面对该用户进行授权,通常是不同的用户授予不同的visual host权限,visual host可以在右侧的Visual Hosts中进行新增。

image-20210513214304440

到此为止,rabbitmqcentos7中的安装就基本上差不多了。如果有什么写错了的,请各位大佬进行指正。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/568680
推荐阅读
相关标签
  

闽ICP备14008679号