1. 程式人生 > >mongodb叢集簡介搭建方式 使用mlaunch和m

mongodb叢集簡介搭建方式 使用mlaunch和m

使用mlaunch和m快速搭建MongoDB測試叢集

前言

不知道大家在使用MongoDB的時候有沒有遇到突然想要一個叢集但是手邊又沒有的時候?特別是我已經升級到4.0了,突然想要一個3.2的叢集怎麼辦?然後去下載,改配置檔案,啟動,修改複製集,新增分片,一番折騰弄好了連自己想幹什麼都忘了。 本文中我們就來聊一聊如何使用mlaunch和m兩個工具快速搭建一個MongoDB測試叢集。

注意:mlaunch的目的旨在為我們快速搭建測試環境,絕對不應該用於生產環境的使用上。

準備工作

安裝mtools

mtools是用於MongoDB的一系列工具,mlaunch就是其中用於快速啟動MongoDB的一部分。其餘部分大多用於日誌分析,對DBA十分有用,牆裂建議DBA看看mtools的

Blog瞭解用法。不多說,mtools的安裝很簡單,使用pip即可: pip install mtools 當然也可以從原始碼安裝,有興趣的話參考文件:Installation

安裝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`