#database #amazon-web-services #storage #amazon-rds #aws-auto-scaling
#База данных #amazon-веб-сервисы #Хранение #amazon-rds #aws -автоматическое масштабирование
Вопрос:
Я новичок и изо всех сил пытаюсь выяснить, как увеличить размер хранилища в MySQL RDS.
Проблема в том, что я хочу увеличить размер хранилища RDS без каких-либо простоев. Давайте предположим, что я не включил автоматическое масштабирование на RDS по умолчанию. Я исследовал это и обнаружил, что есть два основных варианта:
Вариант 1) Включить автоматическое масштабирование.Документация AWS находится по адресу https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS .StorageTypes.html . Однако в официальной документации не указано, не будет ли простоев. В нем говорится, что я могу включать / выключать автоматическое масштабирование, не говоря о времени простоя.
Вариант 2) Предоставление большего пространства напрямую В официальной документации также говорится, что я могу предоставить больший размер хранилища с оговоркой, что
В большинстве случаев масштабирование хранилища не требует каких-либо сбоев и не снижает производительность сервера.
Из потока SO (https://serverfault.com/questions/613182/downtime-for-increasing-aws-rds-storage ), кажется, что этот процесс не кажется плавным.
Вариант 3) Резервное копирование и восстановление: я бы сделал резервную копию RDS. Затем я бы увеличил емкость хранилища. Затем я бы восстановил RDS и остановил предыдущий экземпляр.
Вопрос: Может ли кто-нибудь подсказать мне, какой вариант не будет иметь простоев и создаст для нас относительно небольшое количество головной боли?
Моя гипотеза заключается в том, что вариант 1) будет лучшим, но я просто хочу подтвердить свою гипотезу экспертами.
Комментарии:
1. У вас был четвертый вариант с небольшим, но временем простоя, с использованием расширенных реплик: запустите реплику, увеличьте диск в реплике, переведите приложение в обслуживание, повысьте реплику, измените DNS или конфигурацию на расширенную реплику и вернитесь к обслуживанию. Это должно занять меньше времени, чем восстановление резервной копии, и применимо к базам данных за пределами AWS
Ответ №1:
При чтении этой документации автоматическое масштабирование хранилища запускает «масштабирование» хранилища, которое аналогично «увеличению емкости хранилища экземпляра DB» напрямую. Это также имеет то преимущество, что в будущем оно будет автоматически масштабироваться.
Для экземпляров SQL Server, которые работают с 2017 года, упоминается особый случай, но из документации следует, что во всех других экземплярах db сбоев не будет.
Вариант № 3 определенно приведет к сбою, так что это не самый разумный вариант.
Я бы рекомендовал создать резервную копию вручную, а затем активировать автоматическое масштабирование в спокойный период (например, ночью).
Вы всегда можете поэкспериментировать, создав другую базу данных и запустив масштабирование хранилища, чтобы посмотреть, что получится.
Комментарии:
1. Спасибо, Джон. Если я правильно понял ваш пост, среди вариантов # 1 и # 2 примерно одинаковы и почти не будут иметь простоев. ожидается, что у # 3 будет некоторое время простоя. Я правильно записал это?
2. Да, это правильно. Вполне вероятно, что # 1 и # 2 будут иметь нулевое время простоя, но я все же рекомендую делать это в «тихое» время.