簡體   English   中英

流星,MongoDB多個oplog設置

[英]Meteor, MongoDB multiple oplog setup

我有一個復制了兩個mongoDB服務器的Meteor項目,它工作得很好,但是當我測試一些數據庫錯誤模擬時,mongoDB復制的主選舉和多操作日志設置與我的工作方式不同。

這是我的Meteor和MongoDB設置。

- MongodB -
rs.conf()
{
        "_id" : "meteor",
        "version" : 6,
        "members" : [
                {
                        "_id" : 0,
                        "host" : "hostname1:27017",
                        "priority" : 2.5
                },
                {
                        "_id" : 1,
                        "host" : "hostname2:27017",
                        "priority" : 1.5
                }
        ]
}

rs.status()
{
        "set" : "meteor",
        "date" : ISODate("2014-10-08T10:40:38Z"),
        "myState" : 1,
        "members" : [
                {
                        "_id" : 0,
                        "name" : "hostname1:27017",
                        "health" : 1,
                        "state" : 1,
                        "stateStr" : "PRIMARY",
                        "uptime" : 462,
                        "optime" : Timestamp(1412764634, 2),
                        "optimeDate" : ISODate("2014-10-08T10:37:14Z"),
                        "electionTime" : Timestamp(1412764612, 1),
                        "electionDate" : ISODate("2014-10-08T10:36:52Z"),
                        "self" : true
                },
                {
                        "_id" : 1,
                        "name" : "hostname2:27017",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 234,
                        "optime" : Timestamp(1412764634, 2),
                        "optimeDate" : ISODate("2014-10-08T10:37:14Z"),
                        "lastHeartbeat" : ISODate("2014-10-08T10:40:37Z"),
                        "lastHeartbeatRecv" : ISODate("2014-10-08T10:40:37Z"),
                        "pingMs" : 141,
                        "syncingTo" : "hostname2:27017"
                }
        ],
        "ok" : 1
}


- Meteor Environment - 
MONGO_OPLOG_URL=mongodb://hostname1:27017,hostname2:27017/local MONGO_URL=mongodb://hostname1:27017/sports meteor

我假設如果終止數據庫hostname1,那么hostname2應該由Primary選舉,因此我的Meteor服務器可以將其OPLOG URL重定向到它。

但是,當我終止hostname1時,hostname2保持為Secondary,Meteor找不到任何oplog服務器。

甚至當我終止了hostname2時,原為Primary的hostname1也被更改為Secondary,因此Meteor也找不到任何oplog服務器。

我想我錯過了一件大事,但我無法弄清楚。

有人對此有想法嗎?

提前致謝。

您的MONGO_URL需要包括副本集的兩個成員。 Meteor是在mongo的節點驅動程序上構建的,因此必須知道副本集的兩個成員,以便正常進行故障轉移。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM