mongodb — Почему php MongoClient :: getHosts показывает больше хостов, чем существует узлов?

У нас есть набор реплик mongodb с 3 узлами (db01-03), работающий как набор реплик «rs0».

При получении информации о хостах через MongoClient::getHosts(), о первичном сервере ИНОГДА сообщается дважды, один раз как часть rs0, один раз автономный (так кажется?):

{
"db01.example.com:27017;rs0;...": {
"host": "db01.example.com",
"port": 27017,
"health": 1,
"state": 2,
"ping": 0,
"lastPing": 1475144757
},
"db02.example.com:27017;rs0;........": {
"host": "db02.example.com",
"port": 27017,
"health": 1,
"state": 1,
"ping": 0,
"lastPing": 1475144757
},
"db03.example.com:27017;rs0;.......": {
"host": "db03.example.com",
"port": 27017,
"health": 1,
"state": 2,
"ping": 0,
"lastPing": 1475144757
},
"db02.example.com:27017;-;.......": {
"host": "db02.example.com",
"port": 27017,
"health": 1,
"state": 1,
"ping": 0,
"lastPing": 1475143739
}
}

Почему это происходит, это намеренно / случайно или что-то, о чем мы должны беспокоиться?

Проблема в том, что наш мониторинг регулярно сравнивает «заявленные хосты» с «ожидаемыми хостами», и с тех пор мы получаем предупреждения 4 !== 3,

PS: Конечно, мы могли бы исправить предупреждения, сравнив $actual<$expected; это не вопрос, но:

Почему основной иногда показывается дважды?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]