2013-01-15 129 views
1

我想在副本集上設置mongodb分片集羣。 我已經在3臺機器上設置了副本集,因此對於分片羣集,我可以使用這些機器嗎? 我的副本集狀態如下。MongoDb分片設置在副本集上

rs.status() 
{ 
    "set" : "repSet", 
    "date" : ISODate("2013-01-12T09:49:10Z"), 
    "myState" : 1, 
    "members" : [ 
     { 
      "_id" : 0, 
      "name" : "10.1.4.138:27017", 
      "health" : 1, 
      "state" : 3, 
      "stateStr" : "SECONDARY", 
      "uptime" : 94839, 
      "optime" : Timestamp(1357901076000, 4), 
      "optimeDate" : ISODate("2013-01-11T10:44:36Z"), 
      "lastHeartbeat" : ISODate("2013-01-12T09:49:10Z"), 
      "pingMs" : 0, 
      "errmsg" : "still syncing, not yet to minValid optime 50f04939:1" 
     }, 
     { 
      "_id" : 1, 
      "name" : "10.1.4.21:27017", 
      "health" : 1, 
      "state" : 1, 
      "stateStr" : "PRIMARY", 
      "uptime" : 94840, 
      "optime" : Timestamp(1357982990000, 5587), 
      "optimeDate" : ISODate("2013-01-12T09:29:50Z"), 
      "self" : true 
     }, 
     { 
      "_id" : 2, 
      "name" : "10.1.4.88:27017", 
      "health" : 1, 
      "state" : 3, 
      "stateStr" : "RECOVERING", 
      "uptime" : 87517, 
      "optime" : Timestamp(1357900674000, 10), 
      "optimeDate" : ISODate("2013-01-11T10:37:54Z"), 
      "lastHeartbeat" : ISODate("2013-01-12T09:49:10Z"), 
      "pingMs" : 0, 
      "errmsg" : "still syncing, not yet to minValid optime 50f04939:1" 
     } 
    ], 
    "ok" : 1 
} 

我經歷了mongodb分片設置文檔,但沒有得到如何設置。

爲三個配置數據庫實例創建以下數據目錄:

/data/example/config1 
    /data/example/config2 
    /data/example/config3 

版本在系統提示以下命令:

mkdir -p /data/example/config1 /data/example/config2 /data/example/config3 

在一個單獨的終端窗口或GNU屏幕窗口中,啓動通過運行以下命令來配置數據庫:

mongod --configsvr --dbpath /data/example/config1 --port 20001 
mongod --configsvr --dbpath /data/example/config2 --port 20002 
mongod --configsvr --dbpath /data/example/config3 --port 20003 

我目前的數據目錄是/var/lib/mongodb,所以我不想創建單獨的目錄。 那麼我怎樣才能使用當前的數據目錄以及在所有三臺服務器上要遵循的步驟。

感謝 拉朱

回答