使用mlaunch和m快速搭建MongoDB测试集群

2020-05-28 00:00:00 集群 是一个 启动 安装 复制

前  言


不知道大家在使用MongoDB的时候有没有遇到突然想要一个集群但是手边又没有的时候?特别是我已经升级到4.0了,突然想要一个3.2的集群怎么办?然后去下载,改配置文件,启动,修改复制集,添加分片,一番折腾弄好了连自己想干什么都忘了。


本文中我们就来聊一聊如何使用mlaunch和m两个工具快速搭建一个MongoDB测试集群。



准备工作


1


安装mtools


mtools是用于MongoDB 的一系列工具,mlaunch就是其中用于快速启动MongoDB的一部分。其余部分大多用于日志分析,对DBA十分有用,墙裂建议DBA看看mtools的Blog了解用法。不多说,mtools的安装很简单,使用pip即可:

pip install mtools

当然也可以从源码安装,有兴趣的话参考文档:Installation


2


安装m


m是一个用于管理MongoDB版本的工具。简单来说,它可以帮你安装指定的MongoDB版本。位于Github上的m代码库。简单地安装可以使用npm:

npm install -g m

同样支持从源码安装,参考文档:Installation


开始使用


mlaunch的详细使用文档可以查看此处,非常简单明了。通常分为几个步骤:

1. 初始化:mlaunch init

2. 启动或停止:mlaunch start/stop

启动或停止没什么好讲的,所有机关都在init步骤。以下这些参数是我们经常使用的:

  • replicaset:启动一个复制集。如果配合--sharded 使用,则表示每个片是一个复制集;

  • name:复制集名字;

  • nodes N:在启动复制集的时候这个参数可以指定节点个数,后跟数字;

  • sharded:启动一个分片集。后面如果跟数字则是片数。如果跟多个字符串,则是每个片的名字;

  • port PORT:起始端口。后面每个实例端口+1;

  • binarypath:在这个目录中寻找可执行的MongoDB;

以上参数应该已经可以覆盖到绝大部分使用场景了。举例如下:




简单2条命令就可以开始使用了,有没有很方便?

m的使用就更简单了,举几个例子就明白:


有了m配合mlaunch的--binarypath参数,就可以随时随地启动任意版本的MongoDB集群了:




注意:mlaunch的目的旨在为我们快速搭建测试环境,不应该用于生产环境的使用上。


作者:张耀星
  • MongoDB大中华区咨询顾问

  • MongoDB中文社区联席主席


往期回顾

热门活动2018年MongoDB中文社区 上海大会

技术文章MongoDB 新功能介绍-Change Streams

               深入解析MongoDB Plan Cache

精彩译文为什么MongoDB适合深度学习?

             MongoDB Compass聚合管道构建器新特性介绍

加入我们 2018 MongoDB中文社区 | 演讲嘉宾招募

相关文章