Amazon RDS Postgres名称或服务未知

时间:2015-12-01 16:05:55

标签: postgresql amazon-web-services amazon-ec2 rds

我有2个Amazon EC2实例。我正在使用一个用于开发。我开始了一个新的,我想要正常工作,所以我可以使用这个更清洁的一个来制作AMI。我在RDS实例中使用Django和Postgres后端。 RDS实例正在运行Postgresql 9.4.4。开发EC2实例(有效的实例)正在运行Postgresql 9.3.9。新实例正在运行Postgresql 9.3.10。

在开发实例上,使用命令行连接和使用RDS实例没有问题:

psql --host django.xxxxxxxxx.us-east-1.rds.amazonaws.com  --port 5432 --username django_login  --dbname django_db

但如果我在新实例上使用相同的命令,我会得到

  

psql:无法将主机名“django.xxxxxxxxx.us-east-1.rds.amazonaws.com”翻译为:名称或服务未知

两个EC2实例都在同一个安全组(launch-wizard-1)中。 RDS有一个安全组,所有TCP,所有UDP和所有IMCP都设置为launch-wizard-1作为源。

开发实例位于us-east-1d。新实例在us-east-1c中。 RDS实例位于us-east-1d。我怀疑可能是问题,但据我了解RDS文档应该没问题。但是,如果这是问题,您知道如何更改EC2实例的可用区吗?

我试过这个,将RDS实例设置为private,然后再设置为public。它没有什么区别。

任何想法都将受到赞赏。

1 个答案:

答案 0 :(得分:0)

问题是我怀疑的。该实例位于不同的子网中。我在us-east-1c的实例中创建了一个ami,在ami的us-east-1d子网中创建了一个新实例。现在我可以从新实例连接。

顺便说一句 - 当您创建一个应该将子网设置为与其他实例匹配的实例时,并不是很明显。在实例配置页面上查找该选项。