Измените тип хранилища MySQL RDS с магнитного на SSD / обеспеченный IOPS, используя Cloud Formation - PullRequest
0 голосов
/ 05 февраля 2019

У меня есть экземпляр RDS со следующими характеристиками:

InstanceClass: db.m5.12xlarge
AllocatedStorage: 500 - (GiB)
MultiAZ: No
ReadReplica: True - (with same specs)
StorageType: standard - (magnetic)

Мне нужно изменить мастер и реплику, чтобы использовать тип хранения SSD (gp2) с большим количеством места (2 ТиБ) И это имеетэто делается с помощью шаблонов CloudFormation, так как вышеупомянутые экземпляры RDS являются частью стека.НО проблема в том, что это производственные базы данных, и длительное отключение [более 2 часов] не вариант.

Смена размера хранилища в порядке, но смена типа с магнитного на SSD является чем-то серым.Нет никакого способа (по крайней мере, я знаю), что я могу быть уверен, что это будет сделано через 2+ часа или сколько потребуется времени.Я хочу спросить сообщество о наилучшей практике здесь или, если бы кто-то делал это раньше, с любыми обходными путями (возможно, вручную), которые также не делали бы базы данных не синхронизированными со стеком облачной информации (как, например, создание новой реплики вручную с помощьюжелаемую спецификацию и продвижение ее к освоению например)?

1 Ответ

0 голосов
/ 06 февраля 2019

Исходя из вашего объяснения, я предполагаю, что у вас есть RDS - MySQL DB Cluster (если у вас нет RDS Cluster, как вы реплицируете данные в реплику чтения?), А не кластер Aurora-MySQL DB (в которомна случай, если у вас не будет магнитного типа хранения, и, следовательно, мое предположение)

В таком случае вручную создайте реплики чтения из пользовательского интерфейса, в основном перейдите на

RDS -> Базы данных -> Выберите кластер RDS -> (вверху справа). Выберите Действия -> Добавить считыватель

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

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

Как только у вас будет 2 репликис нужным типом хранилища вы можете сделать 2 вещи:

  1. Если вы просто хотите, чтобы чтение было быстрым, оставьте настройку как есть, первоначальная репликация реплики чтения с мастера будет немногомедленные, но запросы на чтение в противном случае должны быть быстрыми.
  2. В противном случае уничтожьте главный экземпляр, и RDS автоматически выберет реплику чтения в качестве нового главного.

Для такой производственной системы я не могу придумать более элегантный способ и надеюсь, что у вас все получится.

...