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

Документация здесь говорит три: http://docs.mongodb.org/manual/tutorial/deploy-replica- набор /

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

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

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

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

12 голосов | спросил cat pants 4 Jam1000000amFri, 04 Jan 2013 02:24:10 +040013 2013, 02:24:10

2 ответа


17

Фактически вы можете запустить «набор» одного элемента.

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

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

ответил MrKurt 4 Jam1000000amFri, 04 Jan 2013 02:29:12 +040013 2013, 02:29:12
3

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

  

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

Следовательно, требование для учебника состоит в том, что набор имеет 3 члена. Тем не менее, это немного запутывает, чтобы иметь два утверждения, поэтому я отправил запрос на pull (EDIT: запрос на перенос теперь объединен), чтобы немного почистить его.

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

ответил Adam C 4 Jam1000000amFri, 04 Jan 2013 05:21:43 +040013 2013, 05:21:43

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132