MongoDB может быть настроен таким образом, что не существует единой точки отказа (по крайней мере, ни один конкретный для MongoDB).
При настройке репликации, как предложено (которая включает в себя первичный, вторичный и арбитр на 3-м сервере), второстепенная роль будет играть роль первичной, когда она опустится. Имейте в виду, что это работает только тогда, когда приложения знают как первичный, так и вторичный (как это сделать, зависит от драйвера).
Когда у вас есть осколочный кластер, процесс маршрутизатора mongo (mongos
), а серверы конфигурации становятся дополнительными возможными точками отказа, но вы также можете настроить повторные маршрутизаторы и серверы конфигурации. Чтобы отправить клиентов на другой сервер mongos, когда они уходят, вам нужно решение для балансировки нагрузки сторонних производителей.
Для a proper production MongoDB setup with clustering, MongoDB Инк предлагает:
- По крайней мере, 2 mongos маршрутизаторы
- Ровно 3 конфигурации сервера
- 3 сервера на осколок (первичный, вторичный и арбитром), где арбитры не обязательно нужны выделенные серверы и могут обмениваться оборудованием с маршрутизаторами, серверами конфигурации, членами различных серверов реплик или приложений приложений.
Пожалуйста, задавайте вопросы, касающиеся администрирования MongoDB на https://dba.stackexchange.com. Я выдвинул ваш вопрос о миграции. – Philipp
нет такой вещи, как «мастер», есть набор реплик с одним примаром и многими второстепенными, когда первичный спускается с новой, которую второстепенные перенимают как первичный. Таким образом, нет единственной точки отказа. Подробнее читайте здесь: http://docs.mongodb.org/manual/replication/ – nickmilon
@nickmilon Не совсем корректно. Посмотрите здесь http://docs.mongodb.org/manual/core/master-slave/ –