摘要:本文中我們就來(lái)聊一聊如何使用和兩個(gè)工具快速搭建一個(gè)測(cè)試集群。注意的目的旨在為我們快速搭建測(cè)試環(huán)境,絕對(duì)不應(yīng)該用于生產(chǎn)環(huán)境的使用上。準(zhǔn)備工作安裝是用于的一系列工具,就是其中用于快速啟動(dòng)的一部分。以下這些參數(shù)是我們經(jīng)常使用的啟動(dòng)一個(gè)復(fù)制集。
前言
不知道大家在使用MongoDB的時(shí)候有沒(méi)有遇到突然想要一個(gè)集群但是手邊又沒(méi)有的時(shí)候?特別是我已經(jīng)升級(jí)到4.0了,突然想要一個(gè)3.2的集群怎么辦?然后去下載,改配置文件,啟動(dòng),修改復(fù)制集,添加分片,一番折騰弄好了連自己想干什么都忘了。
本文中我們就來(lái)聊一聊如何使用mlaunch和m兩個(gè)工具快速搭建一個(gè)MongoDB測(cè)試集群。
注意:mlaunch的目的旨在為我們快速搭建測(cè)試環(huán)境,絕對(duì)不應(yīng)該用于生產(chǎn)環(huán)境的使用上。
準(zhǔn)備工作 安裝mtoolsmtools是用于MongoDB的一系列工具,mlaunch就是其中用于快速啟動(dòng)MongoDB的一部分。其余部分大多用于日志分析,對(duì)DBA十分有用,墻裂建議DBA看看mtools的Blog了解用法。不多說(shuō),mtools的安裝很簡(jiǎn)單,使用pip即可:
pip install mtools
當(dāng)然也可以從源碼安裝,有興趣的話參考文檔:Installation。
安裝mm是一個(gè)用于管理MongoDB版本的工具。簡(jiǎn)單來(lái)說(shuō),它可以幫你安裝指定的MongoDB版本。位于Github上的m代碼庫(kù)。簡(jiǎn)單地安裝可以使用npm:
npm install -g m
同樣支持從源碼安裝,參考文檔:Installation
開(kāi)始使用mlaunch的詳細(xì)使用文檔可以查看此處,非常簡(jiǎn)單明了。通常分為幾個(gè)步驟:
初始化:mlaunch init
啟動(dòng)或停止:mlaunch start/stop
啟動(dòng)或停止沒(méi)什么好講的,所有機(jī)關(guān)都在init步驟。以下這些參數(shù)是我們經(jīng)常使用的:
--replicaset:?jiǎn)?dòng)一個(gè)復(fù)制集。如果配合--sharded 使用,則表示每個(gè)片是一個(gè)復(fù)制集;
--name:復(fù)制集名字;
--nodes N:在啟動(dòng)復(fù)制集的時(shí)候這個(gè)參數(shù)可以指定節(jié)點(diǎn)個(gè)數(shù),后跟數(shù)字;
--sharded:?jiǎn)?dòng)一個(gè)分片集。后面如果跟數(shù)字則是片數(shù)。如果跟多個(gè)字符串,則是每個(gè)片的名字;
--port PORT:起始端口。后面每個(gè)實(shí)例端口+1;
--binarypath:在這個(gè)目錄中尋找可執(zhí)行的mongod;
以上參數(shù)應(yīng)該已經(jīng)可以覆蓋到絕大部分使用場(chǎng)景了。舉例如下:
# 啟動(dòng)一個(gè)復(fù)制集 > mkdir -p replica && cd replica > mlaunch --replicaset --nodes 3 --port 29017
# 啟動(dòng)一個(gè)分片集 > mkdir -p sharding && cd sharding > mlaunch --replicaset --nodes 3 --port 29017 --sharded 2
簡(jiǎn)單2條命令就可以開(kāi)始使用了,有沒(méi)有很方便?
m的使用就更簡(jiǎn)單了,舉幾個(gè)例子就明白:
# 安裝4.0.0 > m 4.0.0 # 安裝3.4的最新版本 > m 3.4 # 獲取3.4安裝后所在的目錄 > m bin 3.4
有了m配合mlaunch的--binarypath參數(shù),就可以隨時(shí)隨地啟動(dòng)任意版本的MongoDB集群了:
# 啟動(dòng)一個(gè)3.2的復(fù)制集 > mkdir -p replica && cd replica > mlaunch --replicaset --nodes 3 --port 29017 --binarypath `m bin 3.2`
# 啟動(dòng)一個(gè)3.4版本的分片集 > mkdir -p sharding && cd sharding > mlaunch --replicaset --nodes 3 --port 29017 --sharded 2 --binarypath `m bin 3.4`
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/19314.html
摘要:今天整理了一下近大半年以來(lái)的一些文章,和我的預(yù)期一樣,很多文章我都忘記自己曾經(jīng)寫(xiě)過(guò)了,這個(gè)記錄的過(guò)程讓我也有了新的理解。希望大家,收藏,點(diǎn)贊,加轉(zhuǎn)發(fā)。 今天整理了一下近大半年以來(lái)的一些文章,和我的預(yù)期一樣,很多文章我都忘記自己曾經(jīng)寫(xiě)過(guò)了,這個(gè)記錄的過(guò)程讓我也有了新的理解。希望大家,收藏,點(diǎn)贊,加轉(zhuǎn)發(fā)。 面試必備 面試必備:深入Spring MVC DispatchServlet 源碼...
摘要:今天整理了一下近大半年以來(lái)的一些文章,和我的預(yù)期一樣,很多文章我都忘記自己曾經(jīng)寫(xiě)過(guò)了,這個(gè)記錄的過(guò)程讓我也有了新的理解。希望大家,收藏,點(diǎn)贊,加轉(zhuǎn)發(fā)。 今天整理了一下近大半年以來(lái)的一些文章,和我的預(yù)期一樣,很多文章我都忘記自己曾經(jīng)寫(xiě)過(guò)了,這個(gè)記錄的過(guò)程讓我也有了新的理解。希望大家,收藏,點(diǎn)贊,加轉(zhuǎn)發(fā)。 面試必備 面試必備:深入Spring MVC DispatchServlet 源碼...
摘要:下一小節(jié)我會(huì)和大家分享如何在真實(shí)的生產(chǎn)環(huán)境中創(chuàng)建副本集。好了,中副本集的搭建我們就先說(shuō)到這里,小伙伴們有問(wèn)題歡迎留言討論。 我們之前的案例都是在單個(gè)節(jié)點(diǎn)上實(shí)現(xiàn)的,在生產(chǎn)環(huán)境中這種做法是有風(fēng)險(xiǎn)的,如果服務(wù)宕機(jī)、崩潰或者硬盤(pán)壞了都會(huì)對(duì)公司業(yè)務(wù)造成損失,因此我們需要數(shù)據(jù)備份。在MongoDB中我們可以通過(guò)副本集來(lái)實(shí)現(xiàn)這一需求,MongoDB副本集(Replica Set)是有自動(dòng)故障恢復(fù)功能...
閱讀 3277·2021-11-22 14:44
閱讀 1122·2021-11-16 11:53
閱讀 1273·2021-11-12 10:36
閱讀 711·2021-10-14 09:43
閱讀 3703·2019-08-30 15:55
閱讀 3407·2019-08-30 14:14
閱讀 1746·2019-08-26 18:37
閱讀 3420·2019-08-26 12:12