мы должны (хотим ..) переименовать наши группы подсетей БД на AWS, поэтому я создал новую группу подсетей БД с теми же настройками, что и старый. Когда я хочу переключить группу на «Изменить вкладку» в графическом интерфейсе AWS и нажать «Применить», aws вернет:
Вы не можете переместить экземпляр БД XXX в группу подсетей XXX. Указанная группа подсети БД и экземпляр БД находятся в одном VPC. Выберите группу подсети БД в VPC, отличном от указанного экземпляра БД, и повторите попытку. (Сервис: AmazonRDS; код состояния: 400; код ошибки: InvalidVPCNetworkStateFault; идентификатор запроса: 7d46c84c-b22a-11e6-be20-b5bb6bd6cc6d)
Какие-либо предложения? Или это невозможно без воссоздания всего экземпляра?
У меня был тот же вопрос несколько месяцев назад, и в итоге я обратился в AWS (у меня есть поддержка Enterprise). Это был результат:
К сожалению, перемещение группы подсети инстанса БД в другую группу подсети в том же VPC в настоящее время не поддерживается. Я понимаю, что в нашей документации сказано, что он поддерживается, но это ошибка. В настоящее время мы работаем над обновлением нашей документации, чтобы отразить это, и я прошу прощения за неправильное сообщение.
Однако у меня есть обходной путь: вы можете создать новый временный VPC, обновить группу подсети, чтобы указать на этот временный VPC, а затем, когда этот процесс завершится, изменить группу подсети, чтобы она указывала обратно на вашу новую группу подсети.
Другой способ сделать это - создать моментальный снимок базы данных и запустить новый экземпляр из этого моментального снимка.
Возможно, вам стоит рассмотреть оба подхода. Оба метода, вероятно, вызовут у вас некоторое время простоя, если вы не сможете какое-то время запустить приложение в режиме только для чтения или у вас есть метод воспроизведения транзакций на восстановленном снимке.
Что я сделал -> создать снимок, восстановить снимок и выбрать новую группу подсети, в которой есть только общедоступные или желаемые подсети, и ... вуаля
параметр группы подсети для aurora можно просто установить при сборке экземпляра, и вы не можете изменить его после.
Чтобы изменить группу подсети в VPC, можно выполнить следующие шаги:
Преобразование инстанса prod DB в единую зону доступности (если включено несколько зон доступности)
Измените группу подсети, выбрав любую группу подсети по умолчанию / другую группу подсети VPC, и сразу же перейдите к Применить.
После этого снова измените группу подсети, выбрав новую, которую вы хотите
Кроме того, выберите соответствующие группы безопасности и сразу же перейдите к Применить.
Проверить подключение с серверов
Затем преобразуйте его обратно в Multi-AZ
Примечание: время для выполнения вышеуказанных шагов занимает от 40 до 50 минут.
Кажется, прошло 2 с половиной года, а проблема все еще существует. Самая большая проблема заключается в том, что я обновляю свою инфраструктуру с помощью Cloudformation, и из документации правильная стратегия модификации при изменении имени подсети БД - это замена ресурса, что, похоже, не так, когда я смотрю на свой набор изменений стека, где ресурс подсети БД для замены имеет флаг «Ложь», после чего обновление стека завершается ошибкой с группой подсети БД, имеющей «Внутреннюю ошибку».
Теперь мне по сути приходится вручную изменять ресурсы, чтобы они обновлялись правильно, хотя это полностью противоречит использованию CloudFormation.