2016-02-23 7 views
0

Мы хотим создать осколок MongoDB (v. 2.4). В официальной документации рекомендуется иметь 3 конфигурационных сервера.MongoDB sharding: mongos и серверы конфигурации вместе?

Однако политика нашей компании не позволит нам получить 3 дополнительных сервера для этой цели. Поскольку у нас уже есть 3 сервера приложений (1 веб-узел, 2 технологических узла), мы рассматриваем возможность размещения серверов конфигурации на тех же серверах приложений, что и монго. Доступность для нас не важна.

Что вы думаете об этой конфигурации? Можем ли мы столкнуться с какой-то проблемой или она почему-то не приветствуется?

ответ

1

Учитывая, что доступность не имеет решающего значения для вашего варианта использования, я бы сказал, что должно быть хорошо, чтобы разместить серверы конфигурации на тех же серверах приложений и mongos.

Если один из узлов процесса опущен, вы потеряете: 1 x mongos, 1 сервер приложений и 1 конфигурационный сервер. Во время этого простоя другие два сервера конфигурации будут только для чтения, что означает, что не будет балансировки осколков, модификации конфигурации кластера и т. Д. Хотя ваши другие два mongos все равно должны быть работоспособны (CRUD мудрый). Если ваш веб-узел не работает, тогда у вас больше проблемы.

Если два узла опущены (2 узла процесса или 1 веб-сервер и узел процесса), опять же, у вас возникнет большая проблема. т. е. ваши приложения, вероятно, не будут работать в любом случае.

Сказав это, рассмотрите возможности этих узлов, чтобы они могли обрабатывать сервер приложений и сервер конфигурации mongos. то есть ЦП, ОЗУ, сетевые соединения и т. д.

Я бы рекомендовал протестировать архитектуру развертывания в кластере разработки/промежуточного развертывания сначала в соответствии с типичной рабочей нагрузкой и используемым случаем.

Также см. Sharded Cluster High Availability для получения дополнительной информации.

Наконец, я бы порекомендовал проверить MongoDB v3.2, который является текущим стабильным выпуском. Конфигурационные серверы в v3.2 моделируются как набор реплик, см. Sharded Cluster config servers для получения дополнительной информации.