0
我想初始化一個mongodb副本集,但是每當我添加新節點時,它永遠不會讓它經過狀態3(RECOVERING)。下面是從rs.status()快照:初始化mongodb副本集永遠不會完成
rs0:OTHER> rs.status()
{
"set" : "rs0",
"date" : ISODate("2015-04-27T14:09:21.973Z"),
"myState" : 3,
"members" : [
{
"_id" : 0,
"name" : "10.0.1.184:27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 6899,
"optime" : Timestamp(1430143759, 9),
"optimeDate" : ISODate("2015-04-27T14:09:19Z"),
"lastHeartbeat" : ISODate("2015-04-27T14:09:20.133Z"),
"lastHeartbeatRecv" : ISODate("2015-04-27T14:09:20.160Z"),
"pingMs" : 0,
"electionTime" : Timestamp(1430127299, 1),
"electionDate" : ISODate("2015-04-27T09:34:59Z"),
"configVersion" : 109483
},
{
"_id" : 1,
"name" : "10.0.1.119:27017",
"health" : 1,
"state" : 7,
"stateStr" : "ARBITER",
"uptime" : 6899,
"lastHeartbeat" : ISODate("2015-04-27T14:09:20.133Z"),
"lastHeartbeatRecv" : ISODate("2015-04-27T14:09:20.166Z"),
"pingMs" : 0,
"configVersion" : 109483
},
{
"_id" : 2,
"name" : "10.0.1.179:27017",
"health" : 1,
"state" : 3,
"stateStr" : "RECOVERING",
"uptime" : 15651,
"optime" : Timestamp(1430136863, 2),
"optimeDate" : ISODate("2015-04-27T12:14:23Z"),
"infoMessage" : "could not find member to sync from",
"configVersion" : 109483,
"self" : true
}
],
"ok" : 1
}
偶爾infoMessage「找不到成員從同步」是在新節點上可見。我注意到,當前小學的oplog只有0.12小時(1.7GB),並且大約需要花費大約1小時。 2小時複製大部分數據集(如網絡使用情況所示)。
假設oplog必須大於2小時才能成功完成初始同步,是否正確?
oplog窗口是一個估計,但是 - 您的oplog必須足夠大以容納在初始同步的數據複製階段發生的所有寫入流量。這可以通過搜索您的10.0.1.179:27017「過於趕上」來證實,表明您已經從oplog中脫落。 –
你解決了你的問題嗎? – kommradHomer
@kommradHomer - 是的謝謝你。我們的數據吞吐量對於默認的OPLOG大小來說太高。將OPLOG增加到50GB允許同步完成。 – MarcF