搭建mongodb叢集(複本集+分區)

來源:互聯網
上載者:User

標籤:blog   http   io   ar   os   使用   on   div   2014   

完整的搭建mongodb叢集(複本集+分區)的例子。。。

準備四台機器,分別是bluejoe1,bluejoe2,bluejoe3,以及bluejoe0

複本集及分區策略確定如下:

  • 將建立3個複本集,命名為shard1,shard2,shard3;
  • 以上3個複本集作為3個分區;
  • 每個複本集包含2個副本(主、輔);
  • 副本分開儲存,即shard1存在bluejoe1和bluejoe2上各一份。。。以此類推
  • 將建立3個配置庫執行個體,一台機器一個
  • bluejoe0上配置一個mongos(mongos一般可以配置在應用端)
畫了一個圖:


具體操作步驟如下:
  1. 在bluejoe1上下載mongdb安裝包;
  2. 解壓至/usr/local/mongdb(注意改名);
  3. 建立data/node1和data/node2目錄,啟動2個mongod執行個體,注意它們分別是shard1-1和shard3-2:
    /usr/local/mongodb/bin/mongod --dbpath /usr/local/mongodb/data/node1 --port 10001 --replSet shard1/bluejoe2:10002 --logpath=/usr/local/mongodb/log/node1.log/usr/local/mongodb/bin/mongod --dbpath /usr/local/mongodb/data/node2 --port 10002 --replSet shard3/bluejoe3:10001 --logpath=/usr/local/mongodb/log/node2.log
  4. 初始化副本
    db.runCommand({"replSetInitiate":{"_id":"shard1","members":[{"_id":1,"host":"bluejoe1:10001"},{"_id":2,"host":"bluejoe2:10002"}]}})

  5. 建立data/configdb,啟動配置庫執行個體:
    /usr/local/mongodb/bin/mongod --dbpath /usr/local/mongodb/data/configdb --port 20000 --logpath=/usr/local/mongodb/log/configdb.log
  6. 使用scp命令,將mongodb目錄複寫至bluejoe2和bluejoe3機器,並按照第3、4步啟動每台機器上的3個執行個體,注意副本也要初始化;
  7. 到現在為止應該有9個mongd執行個體,其中3個為配置庫執行個體,剩下的屬於3個複本集;
  8. 接下來管理分區,在bluejoe0上啟動mongs:
    /usr/local/mongodb/bin/mongos --port 30000 --configdb bluejoe1:20000,bluejoe2:20000,bluejoe3:20000
  9. 串連上mongos,配置分區資訊:
    mongos> use adminswitched to db admindb.runCommand({"addShard":"shard1/bluejoe1:10001"})db.runCommand({"addShard":"shard2/bluejoe2:10001"})db.runCommand({"addShard":"shard3/bluejoe3:10001"})
  10. 對庫開啟分區功能:
    mongos> use adminswitched to db adminmongos> db.runCommand({"enablesharding":"test"}){ "ok" : 1 }mongos> db.runCommand({"shardcollection":"test.person","key":{"name":1}}){ "collectionsharded" : "test.person", "ok" : 1 }


搭建mongodb叢集(複本集+分區)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.