Назад | Перейти на главную страницу

Требуется ли для набора реплик MongoDB как минимум 2 или 3 члена?

В документации здесь сказано три: http://docs.mongodb.org/manual/tutorial/deploy-replica-set/

«Набор реплик требует трех различных систем ...»

В то время как документация здесь говорит два: http://docs.mongodb.org/manual/core/replication/

«Большинство наборов реплик состоит из двух или более экземпляров mongod ...»

Кто-нибудь знает, что правильно?

Вы действительно можете запустить «набор» с одним членом, если хотите.

Тем не менее, 3 члена (или большее нечетное число) действительно лучше. Наборы реплик переходят только для чтения, если большая часть набора недоступна, поэтому, если вы потеряете член в наборе из двух элементов, оставшийся член станет доступен только для чтения.

Вы можете запустить двух полноправных членов плюс член «только с правом голоса» (называемый арбитром). Это самый маленький разумно безопасный вариант для набора реплик.

В основном это проблема формулировки, потому что требования в руководстве не являются общим заявлением о наборах реплик, а относятся к itelf учебника. Обычно для развертывания набора реплик требуется 1 или более, у большинства их 2 или более, но руководство, на которое вы ссылаетесь, предназначено специально для развертывания набора из 3 элементов:

В этом руководстве описывается, как создать набор реплик из трех членов из трех существующих экземпляров MongoDB.

Следовательно, для учебника требуется, чтобы в наборе было 3 члена. Тем не менее, наличие этих двух утверждений немного сбивает с толку, поэтому я отправил запрос на вытягивание (РЕДАКТИРОВАТЬ: запрос на перенос теперь объединен), чтобы немного его очистить.

У вас может быть один узел mongod, настроенный как часть набора реплик, но, строго говоря, это не будет «набор». Фактически, поскольку репликация использует больше ресурсов, чем автономная mongod (в основном из-за oplog) действительно нет смысла запускать один элемент, если только это не временная мера перед добавлением других элементов в набор или если вам нужен журнал операций по другим причинам (например, для резервного копирования).