主页 > 创业  > 

如何在本地和线上安装和配置RabbitMQ

如何在本地和线上安装和配置RabbitMQ

文章目录 一. 本地1.1 安装1.2 访问1.3 配置1.4 运行 二. 线上2.1 服务器安装 RabbitMQ2.1.1 安装 DNF2.1.2 安装 RabbitMQ2.1.3 登录 web 管理界面2.1.4 创建用户2.1.5 禁用默认用户远程访问2.1.6 配置2.1.7 运行启动 2.2 宝塔面板安装 RabbitMQ2.2.1 安装 RabbitMQ2.2.2 登录 web 管理界面2.2.3 创建用户2.2.4 禁用默认用户远程访问2.2.5 配置2.2.6 运行启动 三. 初始化 RabbitMQ3.1 本地3.2 线上 四. 启动项目五. 异常

一. 本地 1.1 安装

安装 Erlang + RabbitMQ,先安装 Erlang。

Erlang 。 .erlang.org依赖安装完毕,就可以安装 RabbitMQ 了。(安装 RabbitMQ 直接双击 exe 程序即可安装) .rabbitmq /docs/install-windows去查看系统服务,按[win + R],输入命令services.msc。找到 RabbitMQ 服务,右键 Start,状态为正在运行,搞定。安装rabbitmq-plugins(插件管理)。

windows 系统所有的脚本全是 bat 文件,这个命令不能直接运行;所以要给这条命令加上 .bat,然后复制这条命令。

rabbitmq-plugins.bat enable rabbitmq_management

找到安装 RabbitMQ 路径的位置,进入sbin目录,这里面都是 RabbitMQ 的执行脚本。

rabbitmq-server.bat:操作 RabbitMQ 服务器相关的命令。rabbitmq-plugins.bat:用来安装 RabbitMQ 的插件。

在目录栏上输出cmd,打开命令提示符;以管理员身份运行。

将命令粘贴到此处,回车,显示已经启动了,并配置了一些插件。

这里显示要重新启动后才生效,输入以下命令。

# 关闭服务 net stop rabbitmqnet stop rabbitmq # 开启服务 net start rabbitmq 1.2 访问

访问 http://localhost:15672,打开本地 web 管理页面;默认用户名密码都是 guest(文档有说明),点击Login。

文档还有说明端口访问的端口号,15672 是监控面板的 UI;

ps.里面的 5672、15672 很重要,我们的应用程序之间就是通过 5672 端口来和 RabbitMQ 做链接的,就像 redis 的6379,es 的 9200是一样的。

登录 RabbitMQ 的管理页面。

就能看见 RabbitMQ 的管理页面。

1.3 配置 rabbitmq: host: localhost password: guest username: guest port: 5672 virtual-host: / listener: direct: acknowledge-mode: manual

username和 password是guest是默认的。

virtual-host: /

1.4 运行 二. 线上

下面几个常用端口是需要放行的

3306 MySQL6379 Redis15672 RabbitMQ web 面板5672 RabbitMQ22 端口 SSH443 HTTPS80 HTTP 2.1 服务器安装 RabbitMQ 2.1.1 安装 DNF yum install epel-release

语句执行后,输入y即可。

yum install dnf

语句执行后,输入y即可。

安装成功

2.1.2 安装 RabbitMQ 指定仓库 sudo dnf install -y packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm 安装 rabbitmq 默认会安装 erlang sudo dnf install -y rabbitmq-server-3.3.5-34.el7 开启 web 管理页面 sudo rabbitmq-plugins enable rabbitmq_management 启动 RabbitMQ sudo systemctl start rabbitmq-server 查看运行状态 systemctl status rabbitmq-server 设置开机自启动 sudo systemctl enable rabbitmq-server 2.1.3 登录 web 管理界面

访问http://服务器IP:15672;打开服务器web 管理页面;默认账号、密码都是 guest;要是报错就自己再仔细看看是不是输入错误了。

2.1.4 创建用户

**注意:**如果你打算在自己的服务器上部署 RabbitMQ,你必须知道在默认设置下,使用 guest 账号是无法访问的。为何会这样呢?原因在于系统安全性的需求。如果你想从远程服务器访问管理面板,你需要创建一个新的管理员账号,不能使用默认的 guest 账号,否则会被系统拦截,导致无法访问或登录。

设置。云服务器中输入下面的命令。云服务器或者tabby中输入下面命令即可。

添加新用户

rabbitmqctl add_user 'username' '2a55f70a841f18b97c3a7db939b7adc9e34a0f1b'

删除新用户

rabbitmqctl delete_user 'username'

新建虚拟主机

rabbitmqctl add_vhost my_vhost

新增加的用户赋予权限。

# First ".*" for configure permission on every entity # Second ".*" for write permission on every entity # Third ".*" for read permission on every entity rabbitmqctl set_permissions -p "custom-vhost" "username" ".*" ".*" ".*" 2.1.5 禁用默认用户远程访问

点击右侧的 User guest,会发现该用户拥有管理员权限,但这仅限于本地访问。如果你直接上线并使用默认的管理员权限,你可以想象可能出现的问题。比如,攻击者可能会扫描你服务器的端口,并不断尝试用 guest 账号登录。一旦找到一个开放的端口并用 guest 登录,攻击者就可以入侵你的服务器,然后在消息队列中不断添加消息,填满你的服务器硬盘。因此,为了安全,系统默认关闭了 guest 账号的远程访问权限,这也是官方出于安全考虑的措施。

关闭允许 guest 用户远程访问,为了安全。

2.1.6 配置 # rabbitmq 信息 rabbitmq: host: ******* password: *** username: * port: 5672 listener: direct: acknowledge-mode: manual

等到部署到服务器上的时候 • host 服务器 IP 或者 域名 • port 端口默认 5672 • password 密码 • username 账号

2.1.7 运行启动 2.2 宝塔面板安装 RabbitMQ

下面几个端口是需要放行的

3306 MySQL6379 Redis15672 RabbitMQ web 面板5672 RabbitMQ22 端口 SSH443 HTTPS80 HTTP 2.2.1 安装 RabbitMQ 安装。宝塔面板安装rabbitmq。宝塔面板、服务器同时开放5672、15672的端口。

面板的管理员权限中更改管理员用户名和密码

2.2.2 登录 web 管理界面 访问http://服务器IP:15672;打开服务器web 管理页面。账号、密码是 上面的管理员用户名和密码;要是报错就自己再仔细看看是不是输入错误了。切忌不要使用新创建用户的用户名和密码;无法登录。 2.2.3 创建用户

**注意:**如果你打算在自己的服务器上部署 RabbitMQ,你必须知道在默认设置下,使用 guest 账号是无法访问的。为何会这样呢?原因在于系统安全性的需求。如果你想从远程服务器访问管理面板,你需要创建一个新的管理员账号,不能使用默认的 guest 账号,否则会被系统拦截,导致无法访问或登录。

创建用户

允许远程连接

执行好之后添加好的用户 Can access virtual hosts 那一栏就不会是黄颜色的了。

2.2.4 禁用默认用户远程访问

点击右侧的 User guest,会发现该用户拥有管理员权限,但这仅限于本地访问。如果你直接上线并使用默认的管理员权限,你可以想象可能出现的问题。比如,攻击者可能会扫描你服务器的端口,并不断尝试用 guest 账号登录。一旦找到一个开放的端口并用 guest 登录,攻击者就可以入侵你的服务器,然后在消息队列中不断添加消息,填满你的服务器硬盘。因此,为了安全,系统默认关闭了 guest 账号的远程访问权限,这也是官方出于安全考虑的措施。

关闭允许 guest 用户远程访问,为了安全。

2.2.5 配置 # rabbitmq 信息 rabbitmq: host: ******* password: *** username: * port: 5672 listener: direct: acknowledge-mode: manual

等到部署到服务器上的时候 • host 服务器 IP 或者 域名 • port 端口默认 5672 • password 密码 • username 账号

2.2.6 运行启动 三. 初始化 RabbitMQ 3.1 本地

执行完需要 初始化的 Main 方法

执行完这两个 初始化的 Main 方法之后,打开本地 web 管理页面;发现队列中有多出来的初始化队列即可。

3.2 线上

配置Host、Usernamen、Password、Port;Port如果是默认的5672可以不配置。

其余初始化和本地一样。

四. 启动项目 启动MainApplication。直接点击 Enable annotation processing访问接口文档 五. 异常

如果说你首次执行比bi项目,想要使用消息队列功能的话

启动项目时,有下面的异常:

org.springframework.amqp.rabbit.listener.BlockingQueueConsumer$DeclarationException: Failed to declare queue(s):[bi_queue]

原因:这个队列还没声明,需要跑一段代码声明,跑一次就行了

先要初始化自己创建队列

执行main方法后,再次执行项目即可。

直接点击 Enable annotation processing 然后访问接口文档。

标签:

如何在本地和线上安装和配置RabbitMQ由讯客互联创业栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“如何在本地和线上安装和配置RabbitMQ