мы наблюдаем странное поведение в нашем наборе реплик MongoDB, настройка 3 узлов (все процессоры Xeon Quad-Core-Class, 16 ГБ ОЗУ для одного, 24 ГБ для двух других узлов). Один узел с меньшим объемом ОЗУ обычно является вторичным с приоритетом 0, два других приоритета 1. Недавно мы испытали задержку репликации примерно на 60 секунд каждые 3-4 часа, само исчезновение через 2-3 минуты (Nagios Checks!)
У нас почти нет трафика на этих машинах, только некоторые базы данных размером 0,3 ГБ, а одна - 5 ГБ. И у нас есть одна коллекция, которая насчитывает около 65000 записей, но также мне бы индекс.
Странно то, что вторичный 16 Гб не имеет задержек, а только вторичный от двух больших машин. Я просто изменил его на первичный, чтобы увидеть, имеет ли старый первичный (теперь вторичный) такое же поведение.
Кто-нибудь знает, что можно сделать или проверить? Потому что мы понятия не имеем.
Я проверил загрузку и процессы этих машин, сетевое подключение и маршрутизацию, состояние дисков - все в порядке.
Несколько быстрых проверок:
rs.status()
было бы хорошим началомnetstat --statistics
например, до и после всплеска задержки - посмотрите, увеличиваются ли повторные передачи или ошибки)[syncingTo][3]
поле в rs.status()
. Это делается с помощью rs.syncFrom()
команда.Если после всего этого вы все еще не знаете, что вызывает это, то это может быть не только для ответа на сбой сервера разумным способом (нужно будет посмотреть журналы, статистику и т. Д.) - я бы порекомендовал пользователю mongodb Google группа в качестве следующего шага.