2015-10-24 36 views
0

我有不同的EC2实例试图访问RDS实例。我想先在配置文件中设置RDS实例'规范名称',这样在部署后我不需要对配置文件进行任何更改。规范名称到RDS实例

我有以下问题:

  1. 反正是有,可分配的规范名称cloudformation模板内的RDS实例?

  2. 如果以上是不可能的,我可以EC2创建和RDS实例之间建立依赖关系链(即先创建RDS例如,查询它的名称/ IP,比创建EC2实例)

THX

回答

1

RDS实例的规范名称将始终由AWS自动生成,但命名方案是一致的。该名称的格式是:

<instance_name>.<arbitrary_string>.<region>.rds.amazonaws.com 

名字的arbitrary_string节是唯一标识您的AWS账户的字符串。在您的帐户中创建的所有RDS实例都将使用相同的字符串标识符,因此只需从现有的RDS实例中抓取该部分,然后根据给出的数据库名称和启动区域的名称拼凑完整名称。

如果你想有一个容易阅读/记住DNS名称,那么你总是可以使用Route 53分配另一个名称作为别名。

+0

感谢您的回复。由于我想完全自动化部署,你认为在多个部署中,任意字符串将保持相同吗?至于路线53的设置,我必须有弹性IP来设置路线53吗? – tennis

+0

任意字符串值不应在单个AWS账户的范围内更改。我已经使用RDS大约3年了,它从未改变过。不,您不需要使用弹性IP来使用Route 53. Route 53基本上只是亚马逊DNS服务。您可以设置别名或CNAME以非常轻松地指向您的RDS实例。作为另一种选择,您可能需要考虑简单地使用AWS CLI获取您感兴趣的实例的端点名称。rds-describe-db-instances将会这样做。 –

+0

感谢您的澄清。我看到,这可能是在运行部署之前查询数据库实例名称并在厨师菜谱中使用它的选项。正如你所建议的假设,如果我想让我的网站www.example.com指向一个EC2实例,那么使用Route 53还是使用Elastic IP会更好,哪个更好? – tennis