powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / MongoDB: смена мастера
5 сообщений из 5, страница 1 из 1
MongoDB: смена мастера
    #39261114
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день,
есть реплика-сет mongodb 2.6 состоящий из 3-х нод и 3-х арбитров.

Если мастер ноду вывести из работы (или поменять ее статус, например прописав db.stapDown()) то кластер на несколько секунд погружается в даун, видимо потому, что нет мастера. По моим наблюдением это может длится около 10 секунд, потом кто-то объявляется мастером и все продолжает работать.

Все дата-ноды имеют хорошую связь между собой и загрузка на запись там не очень большая, почему такой долгий аут?
...
Рейтинг: 0 / 0
MongoDB: смена мастера
    #39261230
golliaph
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HettДобрый день,
есть реплика-сет mongodb 2.6 состоящий из 3-х нод и 3-х арбитров.

Если мастер ноду вывести из работы (или поменять ее статус, например прописав db.stapDown()) то кластер на несколько секунд погружается в даун, видимо потому, что нет мастера. По моим наблюдением это может длится около 10 секунд, потом кто-то объявляется мастером и все продолжает работать.

Все дата-ноды имеют хорошую связь между собой и загрузка на запись там не очень большая, почему такой долгий аут?
По умолчанию ноды реплика сета отправляют heartbeat сигнал друг другу каждые 2 секунды. И если нет ответа от одной из нод в течение 10 секунд, то эта нода реплика сета помечается недоступной. В итоге чтобы кластеру убедиться, что мастер нода не доступна должно пройти минимум 10 секунд.

Эту настройку по-умолчанию можно изменить. Смотрите на параметр local.system.replset.settings.heartbeatTimeoutSecs в документации .
...
Рейтинг: 0 / 0
MongoDB: смена мастера
    #39261321
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.
А есть какие-то противопоказания для использования низких значений, например heartbeat раз в 500мс и считать ноду неактивной через 1500 мс?
...
Рейтинг: 0 / 0
MongoDB: смена мастера
    #39262898
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Оказывается настройки интервала hearhbeat нет. У них на трекере есть запрос реализации, но он еще открыт, хоть и принят уже давно. Cделал heartbeatTimeoutSecs = 5 пока.

Сейчас обновлял кластер и заметил такую вещь, что после обновления последнего сервера он через 10 секунд после того как поднялся стал мастером (у него немного выше member[i].priority) чем у остальных. Но у других был приличный аптайм зато.

rs.status() мне показал, что uptime у всех мемберов примерно одинаковый (+/- 1 секунда). После смены мастера, uptime сбрасывается на 0 ?
В доке вроде ничего не сказано про это https://docs.mongodb.com/manual/reference/command/replSetGetStatus/#replSetGetStatus.members [n].uptime
...
Рейтинг: 0 / 0
MongoDB: смена мастера
    #39263827
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В версии 3.2 появился конфиг в rs.conf()
Код: sql
1.
                "heartbeatIntervalMillis" : 2000,
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / MongoDB: смена мастера
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]