Если у вас заканчивается диск, вам, очевидно, нужен диск большего размера.
Существует несколько способов переноса ваших данных, все зависит от типа необходимого вам времени безотказной работы. Первые шаги, конечно же, включают в себя объединение машины и создание нового тома.
Эти советы идут от самого простого к самому сложному.
Можете ли вы полностью отключить базу данных на несколько минут?
Если это так, сделайте это (миграция по копии):
- Смонтируйте новый EBS на сервере.
- Не позволяйте вашему приложению подключаться к Mongo.
- Выключите mongod и подождите, пока все напишет (проверьте логи)
- Скопируйте все файлы данных (и, возможно, журналы) на новый том EBS.
- Пока происходит копирование, обновите стартовый скрипт mongod (или файл конфигурации), чтобы он указывал на новый том.
- Запустите mongod и проверьте соединение
- Перезапустите приложение.
Можете ли вы перевести базу данных в автономный режим всего на несколько минут?
Если это так, сделайте следующее (подчинение и переключитесь):
- Запустите новый экземпляр и смонтируйте новый EBS на этом сервере.
- Установите/запустите mongod как --slave, указывающий на текущую базу данных. (вам может потребоваться перезапустить текущий как --master)
- Ведомый выполнит новую синхронизацию. Как только ведомое устройство будет обновлено, вы сделаете «переключение» (следующие шаги).
- Отключите запись из системы.
- Завершите исходный процесс mongod.
- Перезапустите «новый» mongod в качестве мастера вместо ведомого.
- При повторной активации система пишет указывая на нового мастера.
При правильном выполнении последние три шага могут быть выполнены за минуты или даже секунды.
Можете ли вы не позволить себе простоя?
Если это так, сделайте следующее (master-master):
- Запустите новый экземпляр и смонтируйте новый EBS на этом сервере.
- Установите / запустите mongod в качестве мастера и подчиненного устройства для текущей базы данных. (может потребоваться перезапустить текущий как ведущий, минимальное время простоя?)
- Новый компьютер должен выполнить новую синхронизацию.
- Как только новый компьютер будет обновлен, переключите систему так, чтобы она указывала на новый сервер.
Я знаю, кажется, что эта последняя версия на самом деле лучшая, но она может быть немного рискованной (на момент написания этой статьи). Причина просто в том, что у меня, честно говоря, было много проблем с репликацией «мастер-мастер», особенно если вы не начинаете с обоих активных.
Если вы планируете использовать этот метод, я настоятельно рекомендую сначала небольшой пробный забег. Если что-то здесь сработает, Mongo может просто стереть все ваши файлы данных, что приведет к удалению большего количества вещей.
Если вы получите хорошую версию этого, опубликуйте команды, я хотел бы увидеть это в действии.
person
Gates VP
schedule
24.05.2010