ToB企服应用市场:ToB评测及商务社交产业平台

标题: 轻松掌握组件启动之MongoDB(番外篇):高可用复制集架构环境搭建-mtools [打印本页]

作者: 我可以不吃啊    时间: 2023-11-7 01:18
标题: 轻松掌握组件启动之MongoDB(番外篇):高可用复制集架构环境搭建-mtools
引言

在前两章节中,我们详细讲解了如何手动配置启动MongoDB。然而,现在有许多不同的工具可以帮助我们更方便地启动和创建MongoDB数据库。因此,今天我将介绍一个名为mtools的开源项目,它可以帮助我们更轻松地启动MongoDB。
mtools介绍

官方文档地址:mtools
mtools是一个基于Python实现的MongoDB工具集,旨在提供一系列功能,包括MongoDB日志分析、报表生成以及简易的数据库安装等。该工具集由MongoDB原生的工程师单独发起并进行开源维护,目前已经吸引了大量的用户。
mtools包含了一些常用的组件,下面是其中一些组件的介绍:
ToolsDescriptionmlogfilter合并、分割日志文件,过滤慢查询,集合扫描,格式转换等mloginfo统计日志内的数据库信息(启停、连接、集群状态等)mplotqueries日志转化为图表形式mlogvis日志转化为HTML页面,与mplotqueries类似mlaunch快速搭建本地测试环境(单机、集群、分片)安装mtools

环境准备

为了使用mtools,您需要确保在Path路径中包含MongoDB的二进制程序所在的目录{MONGODB_HOME}/bin。此外,还需要安装Python环境,并选择安装Python 3.7、3.8或3.9版本。如果您正在Centos7上进行安装,可以安装Python 3.9。
pip安装

安装依赖
  1. pip3 install python-dateutil
  2. pip3 install psutil pymongo
复制代码

安装mtools
pip3 install mtools
通过源码安装

源码地址:https://github.com/rueckstiess/mtools/releases/tag/v1.6.4
  1. wget https://github.com/rueckstiess/mtools/archive/refs/tags/v1.6.4.tar.gz
  2. #解压后进入mtools
  3. python setup.py install
复制代码
使用mtools创建复制集
  1. #准备复制集使用的工作目录
  2. mkdir -p /data/mongo
  3. cd /data/mongo
  4. #初始化3节点复制集
  5. mlaunch init --replicaset --nodes 3
复制代码
端口默认从27017开始,依次为2017,27018,27019

查看当前复制集状态
  1. mongo --port 27017
  2. replset:PRIMARY> rs.status()
复制代码
使用mtools创建分片集群
  1. #准备分片集群使用的工作目录
  2. mkdir /data/mongo-cluster
  3. cd /data/mongo-cluster/
  4. #执行mlaunch init初始化集群
  5. mlaunch init --sharded 2 --replicaset --node 3 --config 3 --csrs --mongos 3 --port 27050
复制代码
选项说明
如果安装成功,稍等片刻后,你将会看到以下输出:

检查分片实例

mlaunch list命令可以对当前集群的实例状态进行检查

此时您可以通过查看各个实例的运行状态来获取更多信息,包括每个实例的进程号和监听的端口等。
  1. #显示标签
  2. mlaunch  list --tags
  3. #显示启动命令
  4. mlaunch  list --startup
复制代码
连接mongos,查看分片实例的情况
  1. mongo --port 27050
  2. mongos> db.adminCommand({listShards:1})
复制代码

停止、启动

如果希望停止集群,则可以使用mlaunch stop命令

想要再次启动集群,可以使用mlaunch start命令

使用mtools搭建测试集群是一个非常方便且高效的方式。相比手工搭建,它能够大大减少时间和精力的投入。通过mtools,您可以快速创建一个测试环境,而不需要手动安装和配置各种软件和组件。
总结

mtools是一个基于Python实现的MongoDB工具集,旨在提供一系列功能,包括MongoDB日志分析、报表生成以及简易的数据库安装等。它由MongoDB原生的工程师单独发起并进行开源维护。mtools包含了一些常用的组件,如mlaunch、mlogfilter、mplotqueries和mlogvis等,可以帮助我们更方便地启动和创建MongoDB数据库。而不需要手动安装和配置各种软件和组件。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4