O que preciso saber sobre os endereços IP atribuídos às minhas instâncias de banco de dados do Amazon RDS?

7 minuto de leitura
0

Estou buscando informações relacionadas aos endereços IP atribuídos às minhas instâncias do Amazon Relational Database Services (Amazon RDS).

Resolução

Quando o Amazon RDS cria uma instância de banco de dados em uma Virtual Private Cloud (VPC), uma interface de rede é atribuída à sua instância de banco de dados usando um endereço IP do seu grupo de sub-rede de banco de dados. Dois tipos diferentes de endereços IP são atribuídos à sua instância com base na configuração desta.

  • Endereço IP privado: quando você inicia uma instância de banco de dados dentro de uma VPC, a instância de banco de dados terá um endereço IP privado para o tráfego dentro da VPC. Esse endereço IP não pode ser acessado pela Internet. Esse endereço IP é usado para se conectar à instância por meio dos recursos dentro da mesma VPC. Por padrão, cada instância de banco de dados do Amazon RDS tem um endereço IP privado. Esse endereço IP é atribuído em função do intervalo que você definiu no seu grupo de sub-rede de banco de dados.
  • Endereço IP público: o endereço IP público pode ser acessado pela Internet. Esse endereço IP é usado para se conectar à instância por meio dos recursos fora da VPC ou pela Internet. Um endereço IP público é atribuído à sua instância de banco de dados somente quando a configuração Publicly accessible (Acessível publicamente) for selecionada para a instância.

Eu selecionei a configuração Publicly accessible (Acessível publicamente) para a minha instância do RDS, mas um endereço IP público não foi atribuído a ela

Normalmente, isso acontece quando as sub-redes no seu grupo de sub-redes de banco de dados são sub-redes privadas.

Para solucionar esse problema, faça o seguinte:

  1. Abra o console do Amazon RDS console.
  2. No painel de navegação, escolha Subnet groups (Grupos de sub-redes).
  3. Escolha o grupo de sub-redes ao qual a instância de banco de dados está associada.
    Você pode visualizar os grupos de sub-redes com o ID da VPC e os IDs de sub-redes das sub-redes associadas.
  4. Abra o console da Amazon VPC.
  5. No painel de navegação, escolha Internet Gateways (Gateways da Internet).
  6. Verifique se a VPC está anexada a um gateway da Internet.
    Se a VPC não estiver anexada a um gateway da Internet, crie e anexe um gateway da Internet à sua VPC.
  7. No painel de navegação, escolha Route tables (Tabelas de rotas).
  8. Escolha a tabela de rotas associada à sua VPC.
  9. Escolha a guia Subnet associations (Associações de sub-redes). Em seguida, verifique se todas as sub-redes no seu grupo de sub-redes de banco de dados estão anexadas à tabela de rotas.
    Se as sub-redes não estiverem associadas à tabela de rotas, escolha Edit subnet associations (Editar associações de sub-redes). Em seguida, selecione a sub-rede a ser associada à tabela de rotas. Para obter mais informações, consulte Associe uma sub-rede a uma tabela de rotas.
  10. Escolha a guia Routes (Rotas). Em seguida, verifique se todas as sub-redes no seu grupo de sub-redes de banco de dados estão com 0.0.0.0/0 no campo Destination (Destino) e o ID do gateway da Internet no campo Target (Objetivo).
    Se as sub-redes tiverem valores diferentes nos campos Destination (Destino) e Target (Objetivo), edite a rota para incluir os valores anteriores. Para obter mais informações, consulte Adicionar e remover rotas de uma tabela de rotas.
  11. Abra o console do Amazon RDS.
  12. No painel de navegação, escolha Databases (Bancos de dados).
  13. Selecione a instância de banco de dados que deseja modificar e, em seguida, escolha Modify (Modificar).
  14. Em Connectivity (Conectividade), expanda a seção Additional configuration (Configurações adicionais) e, então, selecione Publicly accessible (Acessível publicamente).
  15. Escolha Continue (Continuar).
  16. Escolha Modify DB instance (Modificar a instância de banco de dados).

Observação: certifique-se de que seu grupo de sub-redes não inclua uma combinação de sub-redes públicas e privadas. Essa combinação pode resultar em situações, como, por exemplo, a instância primária sendo executada na sub-rede pública enquanto a secundária está sendo executada em uma sub-rede privada em uma configuração multi-AZ. Essas situações resultam em problemas de conectividade após um failover.

Quero encontrar os endereços IP públicos e privados da minha instância de banco de dados do Amazon RDS

No Amazon RDS, os endereços IP são dinâmicos e os endpoints são estáticos. Assim, usar endpoints para se conectar à sua instância é uma prática recomendada. Cada instância do Amazon RDS tem um endpoint. Para encontrar o endpoint da sua instância, também chamado de DNS Name, faça o seguinte:

  1. Abra o console do Amazon RDS.
  2. No painel de navegação, escolha Databases (Bancos de dados).
  3. Escolha a instância de banco de dados para a qual você deseja encontrar o endereço IP.
  4. Escolha a aba Connectivity & security (Conectividade e segurança).

Você pode ver as informações do endpoint na seção Endpoint & port (Endpoint e portabilidade).

Ao tentar se conectar à sua instância de banco de dados por meio de recursos na mesma VPC, o seu endpoint do RDS define automaticamente o endereço IP privado. Ao se conectar à sua instância de banco de dados de fora da VPC ou da Internet, o endpoint define um endereço IP público.

Você também pode encontrar o endereço IP da sua instância do RDS executando um dos seguintes comandos:

nslookup example-rds-endpoint

-ou-

dig example-rds-endpoint

Você pode encontrar uma saída semelhante à seguinte ao executar o comando nslookup para uma instância de banco de dados do RDS:

  • A saída de uma instância do Amazon Elastic Compute Cloud (Amazon EC2) na mesma VPC define um endereço IP privado:
[ec2-user@ip-172-xx-xx-xx ~]$ nslookup myoracledb.xxxxx.us-east-1.rds.amazonaws.com
Server: xxx.xxx.xxx.xxx
Address: xxx.xxx.xxx.xxx#53
Non-authoritative answer: myoracledb.xxxxx.us-east-1.rds.amazonaws.com canonical name = ec2-3-232-189-42.compute-1.amazonaws.com.
Name: ec2-3-232-189-42.compute-1.amazonaws.com
Address: 172.31.8.27
  • A saída de uma instância do Amazon EC2 em uma VPC diferente define o endereço IP público:
[ec2-user@ip-172-xx-xx-xx ~]$ nslookup myoracledb.xxxxx.us-east-1.rds.amazonaws.com
Server: xxx.xxx.xxx.xxx
Address: xxx.xxx.xxx.xxx#53
Non-authoritative answer: myoracledb.xxxxx.us-east-1.rds.amazonaws.com canonical name = ec2-3-232-189-42.compute-1.amazonaws.com.
Name: ec2-3-232-189-42.compute-1.amazonaws.com
Address: 3.232.189.42

Os endereços IP das minhas instâncias de banco de dados não são consistentes

Como o endereço IP da sua instância é dinâmico, não é possível atribuir um endereço IP estático ou um endereço IP elástico à sua instância. O endereço IP atribuído a uma instância de banco de dados do RDS mudará devido a uma ou mais das seguintes condições:

  • A instância é interrompida e iniciada novamente.
    Observação: quando a instância é reinicializada, os endereços IP não mudam.
  • O host subjacente é substituído devido a circunstâncias, como falha de instâncias e atualização de classes de instâncias de banco de dados.
  • A ocorrência de uma manutenção de hardware na instância.
  • A instância se localiza em um ambiente multi-AZ e ocorre um failover.
  • O sistema operacional da instância de banco de dados passa por aplicação de patches de software.
  • Um failover manual da instância de banco de dados é iniciado usando uma reinicialização com failover.
  • O mecanismo de banco de dados passa por uma atualização para uma versão superior ou inferior.
  • Ocorre uma interrupção na zona de disponibilidade da instância.

Informações relacionadas

Como trabalhar com uma instância de banco de dados em uma VPC

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos