Управление шардами

Вы можете включить шардирование для кластера с версией MongoDB начиная с 4.0, а также добавлять и настраивать отдельные шарды.

Предупреждение

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

Для повышения доступности шарды должны состоять как минимум из 3 хостов. Небольшие коллекции обычно нет смысла шардировать: скорость обработки запросов будет выше в обычном кластере реплик.

Включите шардирование

Через интерфейс Managed Service for MongoDB вы можете быстро создать инфраструктуру шардирования MongoDB: хосты mongos и mongocfg, которые необходимы для работы шардированной базы данных.

О том, как непосредственно шардировать базу и коллекции MongoDB, читайте в разделе Шардирование коллекций MongoDB.

  1. Перейдите на страницу каталога и выберите сервис Managed Service for MongoDB.

  2. Нажмите на имя нужного кластера, затем выберите вкладку Шарды.

  3. Нажмите кнопку Включить.

  4. Выберите параметры хостов mongocfg и mongos, которые будут обеспечивать доступ к шардированным данным.

    Чтобы обеспечить бесперебойный доступ к данным, Managed Service for MongoDB позволяет содать не меньше 3 хостов mongocfg и не меньше 2 хостов mongos.

  5. Нажмите кнопку Включить шардирование.

Кластер начнет обновляться. В результате операции будут созданы запрошенные хосты mongocfg и mongos, а также первый шард кластера.

Включить шардирование кластера можно с помощью метода enableSharding.

Получите список шардов в кластере

  1. Перейдите на страницу каталога и выберите сервис Managed Service for MongoDB.

  2. Нажмите на имя нужного кластера, затем выберите вкладку Шарды.

Получить список шардов кластера можно с помощью метода listShards.

Добавьте шард

Количество шардов в кластерах Managed Service for MongoDB ограничено квотами на количество CPU и объем памяти, которые доступны кластерам БД в вашем облаке. Чтобы проверить используемые ресурсы, откройте страницу Квоты и найдите блок Yandex Managed Service for MongoDB.

  1. Перейдите на страницу каталога и выберите сервис Managed Service for MongoDB.
  2. Нажмите на имя нужного кластера и перейдите на вкладку Хосты.
  3. Нажмите кнопку Добавить шард.
  4. Укажите имя шарда и добавьте нужное количество хостов.
  5. Нажмите кнопку Создать шард.

Добавить хост в кластер можно с помощью метода addShard.

Удалите шард

Вы можете удалить шард из MongoDB-кластера, если он не является единственным шардом. Чтобы заменить единственный шард, сначала создайте новый шард, а затем удалите старый.

  1. Перейдите на страницу каталога и выберите сервис Managed Service for MongoDB.

  2. Нажмите на имя нужного кластера и выберите вкладку Шарды.

  3. Нажмите значок image в строке нужного хоста и выберите пункт Удалить.

Удалить хост можно с помощью метода deleteShard.