clusterServiceDNSMode: "External"
rs.conf() before switchover:
{
_id: 'rs0',
version: 78580,
term: 3,
members: [
{
_id: 0,
host: '1.2.3.4:30864',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 2,
tags: {
serviceName: 'mongodb',
nodeName: 'mw-3',
podName: 'mongodb-rs0-0'
},
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 1,
host: '1.2.3.5:31383',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 2,
tags: {
serviceName: 'mongodb',
nodeName: 'mw-1',
podName: 'mongodb-rs0-1'
},
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 2,
host: '1.2.3.6:32351',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 2,
tags: {
serviceName: 'mongodb',
nodeName: 'mw-2',
podName: 'mongodb-rs0-2'
},
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 3,
host: '1.2.3.7:30308',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 1,
tags: { external: 'true' },
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 4,
host: '1.2.3.8:32118',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 1,
tags: { external: 'true' },
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 5,
host: '1.2.3.9:30498',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 0,
tags: { external: 'true' },
secondaryDelaySecs: Long('0'),
votes: 0
}
],
protocolVersion: Long('1'),
writeConcernMajorityJournalDefault: true,
settings: {
chainingAllowed: true,
heartbeatIntervalMillis: 2000,
heartbeatTimeoutSecs: 10,
electionTimeoutMillis: 10000,
catchUpTimeoutMillis: -1,
catchUpTakeoverDelayMillis: 30000,
getLastErrorModes: {},
getLastErrorDefaults: { w: 1, wtimeout: 0 },
replicaSetId: ObjectId('67dbf1520289a4b6b57b904b')
}
}
cleanup tags and switch primary:
cfg = rs.config()
cfg.members[0].tags = {}
cfg.members[1].tags = {}
cfg.members[2].tags = {}
cfg.members[3].tags = {}
cfg.members[4].tags = {}
cfg.members[5].tags = {}
cfg.members[3].priority = 10
rs.reconfig(cfg, {force: true})
rs.conf() after switchover
{
_id: 'rs0',
version: 148264,
term: 4,
members: [
{
_id: 0,
host: '1.2.3.4:30864',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 1,
tags: { external: 'true' },
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 1,
host: '1.2.3.5:31383',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 1,
tags: { external: 'true' },
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 2,
host: '1.2.3.6:32351',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 0,
tags: { external: 'true' },
secondaryDelaySecs: Long('0'),
votes: 0
},
{
_id: 3,
host: '1.2.3.7:30308',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 2,
tags: {
podName: 'mongodb-rs0-0',
serviceName: 'mongodb',
nodeName: 'mw-3'
},
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 4,
host: '1.2.3.8:32118',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 2,
tags: {
podName: 'mongodb-rs0-1',
serviceName: 'mongodb',
nodeName: 'mw-2'
},
secondaryDelaySecs: Long('0'),
votes: 1
},
{
_id: 5,
host: '1.2.3.9:30498',
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 2,
tags: {
nodeName: 'mw-1',
podName: 'mongodb-rs0-2',
serviceName: 'mongodb'
},
secondaryDelaySecs: Long('0'),
votes: 1
}
],
protocolVersion: Long('1'),
writeConcernMajorityJournalDefault: true,
settings: {
chainingAllowed: true,
heartbeatIntervalMillis: 2000,
heartbeatTimeoutSecs: 10,
electionTimeoutMillis: 10000,
catchUpTimeoutMillis: -1,
catchUpTakeoverDelayMillis: 30000,
getLastErrorModes: {},
getLastErrorDefaults: { w: 1, wtimeout: 0 },
replicaSetId: ObjectId('67dbf1520289a4b6b57b904b')
}
}