2014년 12월 14일 일요일

two-server replication, availability issues

I'm trying to set up two-server replication:

1) server 1, datacentre 1 - used by the clients from datacentre 1
2) server 2, datacentre 2 - used for backups/snapshots only

rs0001:PRIMARY> rs.status()
{
        "set" : "rs0001",
        "date" : ISODate("2014-12-12T15:57:42Z"),
        "myState" : 1,
        "members" : [
                {
                        "_id" : 0,
                        "name" : "production:27017",
                        "health" : 1,
                        "state" : 1,
                        "stateStr" : "PRIMARY",
                        "uptime" : 323,
                        "optime" : Timestamp(1418399839, 8),
                        "optimeDate" : ISODate("2014-12-12T15:57:19Z"),
                        "electionTime" : Timestamp(1418399540, 1),
                        "electionDate" : ISODate("2014-12-12T15:52:20Z"),
                        "self" : true
                },
                {
                        "_id" : 1,
                        "name" : "backupmongo:27027",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 323,
                        "optime" : Timestamp(1418399839, 8),
                        "optimeDate" : ISODate("2014-12-12T15:57:19Z"),
                        "lastHeartbeat" : ISODate("2014-12-12T15:57:40Z"),
                        "lastHeartbeatRecv" : ISODate("2014-12-12T15:57:41Z"),
                        "pingMs" : 115,
                        "syncingTo" : "production:27017"
                }
        ],
        "ok" : 1
}


I've made sure that the backup server has no votes and has 0 priority:

cfg = rs.conf()

cfg.members[0].votes = 1
cfg.members[0].priority = 1000

cfg.members[1].votes = 0
cfg.members[1].priority = 0

rs.reconfig(cfg)


댓글 없음:

댓글 쓰기