| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> RabbitMQ系列 使用Docker一键部署RabbitMQ集群 -> 正文阅读 |
|
[系统运维]RabbitMQ系列 使用Docker一键部署RabbitMQ集群 |
概述本文重点介绍的Docker的使用,以及如何部署RabbitMQ集群,最基础的Docker安装,本文不做过多的描述,读者可以自行度娘。 Windows10上Docker的安装 因为本人用的是Windows系统,所有推荐一个不错的安装文章,详见:https://blog.csdn.net/xiaoping0915/article/details/75094857 注意:设置阿里云Docker Hub加速,配置Registry mirrors地址“https://j0andt2p.mirror.aliyuncs.com/”。 阿里云的镜像市场:https://dev.aliyun.com/search.html 下载RabbitMQ镜像1.镜像地址 RabbitMQ Docker官方认证镜像地址:https://dev.aliyun.com/detail.html?spm=5176.1971733.2.16.6c045aaaDxFoMn&repoId=1256 2.安装命令 安装之前,切记把Docker Hub设置为阿里云的加速,方便安装。
注意使用后缀为"-management"的镜像版本,是包含网页控制台的。 3.查看安装 使用命令:docker images查看下载的镜像,如下图所示: Docker常用命令容器停止:docker stop 容器名称 进入Docker目录简单的进入Docker容器的方法分为3种:
1.attachattach有一个缺点,当连接终止的时候,或者使用exit之后,容器就会退出后台运行,所以不适合生产环境使用。既然不好用,我们在这里就不过多的介绍它了。 2.SSH按照之前我们使用liunx的习惯,使用ssh连接服务器似乎是一个很诱人的答案,但这样做并不优雅,也不是最佳的实践方式,详情点击查看:https://blog.csdn.net/bolg_hero/article/details/50267103 3.execexec无疑是我们现阶段最好的实践方案,一起来看它是怎么使用的。 进入docker命令:
其中/bin/bash 也可能是/bin/sh. 使用docker exec --help查看更多命令,和命令说明。 退出docker:
启动RabbitMQ
参数说明:
启动完成之后,使用:docker ps 查看程序运行情况。 使用:http://宿主ip:15672?访问,用户名密码使用默认:guest/guest. 启动多个RabbitMQ
这样我们就可以使用,http://宿主ip:15672?和?http://宿主ip:15673?进行访问了,默认账号密码依旧是guest/guest. 搭建RabbitMQ集群步骤一:安装RabbitMQ; 步骤二:加入RabbitMQ节点到集群; 步骤一:安装RabbitMQ
具体的参数含义,参见上文“启动RabbitMQ”部分。 注意点:
步骤二:加入RabbitMQ节点到集群设置节点1:
设置节点2,加入到集群:
参数“--ram”表示设置为内存节点,忽略次参数默认为磁盘节点。 设置节点3,加入到集群:
设置好之后,使用http://物理机ip:15672 进行访问了,默认账号密码是guest/guest,效果如下图: 启动了3个节点,1个磁盘节点和2个内存节点。 配置相同Erlang Cookie有些特殊的情况,比如已经运行了一段时间的几个单个物理机,我们在之前没有设置过相同的Erlang Cookie值,现在我们要把单个的物理机部署成集群,实现我们需要同步Erlang的Cookie值。
因为RabbitMQ是用Erlang实现的,Erlang Cookie相当于不同节点之间相互通讯的秘钥,Erlang节点通过交换Erlang Cookie获得认证。
要想知道Erlang Cookie位置,首先要取得RabbitMQ启动日志里面的home dir路径,作为根路径。使用:“docker logs 容器名称”查看,如下图: 所以Erlang Cookie的全部路径就是“/var/lib/rabbitmq/.erlang.cookie”。 注意:每个人的erlang cookie位置可能不同,一定要查看自己的home dir路径。
获取到第一个RabbitMQ的Erlang Cookie之后,只需要把这个文件复制到其他RabbitMQ节点即可。 物理机和容器之间复制命令如下:
设置Erlang Cookie文件权限:“chmod 600 /var/lib/rabbitmq/.erlang.cookie”。 参考资料https://blog.csdn.net/xiaoping0915/article/details/75094857 https://blog.csdn.net/luosai19910103/article/details/78604692 https://blog.csdn.net/bolg_hero/article/details/50267103 http://ivivisoft.com/2017/03/06/rabbitmq-cluster/ 转自:https://www.cnblogs.com/vipstone/p/9362388.html 以上是转载学习了其他作者的文章,我自己制作了一键部署rabbitmq集群脚本,直接在linux上执行即可,记得先pull镜像。
一键部署脚本如下run.sh
r1.sh
r2.sh
r3.sh
add_user.sh
其中 r1 ,r2, r3 ,还有run.sh, add_user.sh 都要给执行权限,有条件的直接给
/usr/local/rabbitmq 这个目录是我存放脚本的,根据个人的情况修改 这里的monkey/monkey 是添加的账号密码 ,可以用于登录端口15672控制面板的 执行效果? |
|
|
上一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 18:29:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |