mongodb叢集簡介搭建方式 使用mlaunch和m
使用mlaunch和m快速搭建MongoDB測試叢集
前言
不知道大家在使用MongoDB的時候有沒有遇到突然想要一個叢集但是手邊又沒有的時候?特別是我已經升級到4.0了,突然想要一個3.2的叢集怎麼辦?然後去下載,改配置檔案,啟動,修改複製集,新增分片,一番折騰弄好了連自己想幹什麼都忘了。 本文中我們就來聊一聊如何使用mlaunch和m兩個工具快速搭建一個MongoDB測試叢集。
注意:mlaunch的目的旨在為我們快速搭建測試環境,絕對不應該用於生產環境的使用上。
準備工作
安裝mtools
mtools是用於MongoDB的一系列工具,mlaunch就是其中用於快速啟動MongoDB的一部分。其餘部分大多用於日誌分析,對DBA十分有用,牆裂建議DBA看看mtools的
安裝m
m是一個用於管理MongoDB版本的工具。簡單來說,它可以幫你安裝指定的MongoDB版本。位於Github上的m程式碼庫。簡單地安裝可以使用npm: npm install -g m 同樣支援從原始碼安裝,參考文件:Installation
開始使用
mlaunch的詳細使用文件可以檢視此處,非常簡單明瞭。通常分為幾個步驟:
1. 初始化:mlaunch init
1. 啟動或停止:mlaunch start/stop
啟動或停止沒什麼好講的,所有機關都在init步驟。以下這些引數是我們經常使用的:
- --replicaset
:啟動一個複製集。如果配合--sharded
使用,則表示每個片是一個複製集;
- --name
:複製集名字;
- --nodes N
:在啟動複製集的時候這個引數可以指定節點個數,後跟數字;
- --sharded
:啟動一個分片集。後面如果跟數字則是片數。如果跟多個字串,則是每個片的名字;
- --port PORT
:起始埠。後面每個例項埠+1;
- --binarypath
:在這個目錄中尋找可執行的mongod;
以上引數應該已經可以覆蓋到絕大部分使用場景了。舉例如下:
# 啟動一個複製集 > mkdir -p replica && cd replica > mlaunch --replicaset --nodes 3 --port 29017
# 啟動一個分片集
> mkdir -p sharding && cd sharding
> mlaunch --replicaset --nodes 3 --port 29017 --sharded 2
簡單2條命令就可以開始使用了,有沒有很方便?
m
的使用就更簡單了,舉幾個例子就明白:
# 安裝4.0.0
> m 4.0.0
# 安裝3.4的最新版本
> m 3.4
# 獲取3.4安裝後所在的目錄
> m bin 3.4
有了m
配合mlaunch
的--binarypath
引數,就可以隨時隨地啟動任意版本的MongoDB叢集了:
# 啟動一個3.2的複製集
> mkdir -p replica && cd replica
> mlaunch --replicaset --nodes 3 --port 29017 --binarypath `m bin 3.2`
# 啟動一個3.4版本的分片集
> mkdir -p sharding && cd sharding
> mlaunch --replicaset --nodes 3 --port 29017 --sharded 2 --binarypath `m bin 3.4`