標籤:

快速部署MongoDB集群(開源)

(最近沒做啥數據挖掘,凈整這事兒了……公司沒有DBA,我們的口號式,每個開發都是運維/DBA,我們的目標是從刪庫到跑路)

非結構化數據可以使用NoSQL存儲,NoSQL中我用的最多的是MongoDB。數據量大的時候可以通過分片的方式橫向擴展,請求也可以通過路由進行分發,最後做到透明獲取數據。

集群的部署其實不是很困難,但是各個配置調整起來比較繁瑣,尤其是機器多的時候,3~5台機器還能通過手動操作,超過5台基本就要罵娘了。

而且MongoDB的配置文件可以把集群配置的非常靈活,但是事實上,大部分的用戶是不需要這麼靈活的配置的,大部分都是N台機器,每台1個路由和配置節點,以及K個副本集使用的分片。K一般也就是2~3。

邏輯架構如圖:

物理架構則是:

集群的可視化部署我們可以通過Ops Manager實現,但是這個工具只有mongoDB的企業版才會有,而且誰也不會想自己做個玩具就要用企業版吧!

通過Python的paramiko模塊我們可以輕易的實現遠程登陸,也就能上傳文件,執行腳本之類的工作,通過自己編寫的遠程進程管理器,我們可以實現集群的自動化部署,之後有時間我們可以一步一步實現Ops Manager中關於監控,性能調優的一些功能,但是現階段只實現了部署和簡單的監控。

目前部署工具和文檔開源在:TsingJyujing/MongoDBClusterDeploy

歡迎大家試用,如果有問題請隨時提Issue給我。

推薦閱讀:

TAG:MongoDB | 集群 |