Como mover o banco de dados RDS para VPC diferente

11

Não selecionei uma VPC ao criar um banco de dados MySQL RDS, por isso ele foi criado dentro de uma VPC "padrão" gerada automaticamente. Agora não consigo adicioná-lo a nenhum dos meus grupos de segurança predefinidos ou acessá-lo a partir de instâncias no meu VPC existente. A solução óbvia seria realocá-lo para a VPC adequada, mas não parece haver nenhuma opção para editar a VPC na tela "Modificar instância do banco de dados". Existe alguma maneira de selecionar uma VPC diferente ou é minha única opção para excluir o banco de dados e recriá-lo dentro da VPC correta?

Cerin
fonte

Respostas:

12

A Amazon publicou recentemente um comunicado à imprensa anunciando que agora você pode alterar a VPC para instâncias RDS existentes:

Agora você pode alterar facilmente a nuvem virtual privada da Amazon (Amazon VPC) usada por sua instância do Amazon RDS DB. Você pode especificar uma nova VPC para uma instância de banco de dados existente implantada na configuração Single-AZ usando o Console de gerenciamento do Amazon RDS, a API do Amazon RDS ou as Ferramentas de linha de comando da AWS. Além disso, se você estiver executando sua instância de banco de dados no ambiente EC2-Classic, poderá mudar para o ambiente EC2-VPC modificando sua instância de banco de dados existente. Se sua conta da AWS foi criada antes de 04/12/2013 - você está potencialmente executando o RDS no ambiente EC2-Classic.

Esse recurso está disponível para todas as regiões suportadas pelo Amazon RDS e está disponível para todas as versões suportadas do MySQL, MariaDB, Microsoft SQL Server, Oracle e PostgreSQL.

Observe que esse recurso é suportado apenas para instâncias de banco de dados em execução na implantação de AZ único. Se você deseja alterar o ambiente VPC de uma instância de banco de dados em uma implantação Multi-AZ, pode modificar temporariamente sua instância para uma implantação AZ-Único e reativar o Multi-AZ depois de alterar para o ambiente EC2-VPC .

Siddharth Sharma
fonte
2
Uma coisa a observar: Você pode alterar a VPC, mas a zona de disponibilidade do banco de dados NÃO será alterada. Portanto, se seu db está em um VPC na sub-rede nos-west-2a, mas a outra não tem uma sub-rede em que AZ, ele não vai deixar você mudar para que VPC
Matt Dodge
10

Simples - tire um instantâneo da sua instância atual do RDS e restaure esse instantâneo para uma nova instância no seu VPC.

EEAA
fonte
2
O menu suspenso da VPC foi desativado para mim até que eu disse "sim" à implantação do Multi-AZ.
22614 Ian McAfee # 1 em
Como devo lidar com os dados adicionados enquanto carrego o instantâneo? Existe uma maneira de minimizar o tempo de inatividade?
iGili 28/09
O RDS é perfeitamente capaz de agir como um consolo do MySQL para outro sistema, então talvez esse seja o caminho a seguir.
EEAA
3

Para evitar o tempo de inatividade ao migrar para uma nova VPC, você deve configurar instâncias do Multi-AZ DB para o cluster RDS original, para que a criação de um instantâneo não cause uma breve suspensão de E / S. O cluster também deve ter o log binário ativado para que, quando você carrega seu instantâneo na nova VPC, possa configurar a replicação entre os bancos de dados para restaurar quaisquer dados que possam ter sido inseridos ou atualizados após a criação do instantâneo.

Siga este guia dos documentos do RDS

EDITAR

Eu tive que fazer isso com o RDS Aurora e tive que fazer pequenas modificações no guia acima:

  • Ao restaurar a partir de um instantâneo Aurora, você não pode definir os grupos de parâmetros para que a instância obtenha os parâmetros padrão automaticamente. Quando a instância estiver disponível, altere os parâmetros para incluir o registro binário e reinicialize-o.

  • A execução SHOW MASTER STATUS\Gnão fornecerá o arquivo de log binário correto e a posição do banco de dados original no momento em que o instantâneo foi obtido; a reinicialização da instância criou um novo arquivo de log binário. Em vez disso, execute SHOW BINARY LOGS;para localizar o arquivo de log anterior e o tamanho do arquivo e use esses valores ao configurar a replicação.

MarkAWard
fonte