如何使用 CloudFormation 模板将我的 AWS RDS 数据库连接到我的网站 (EC2)?

问题描述

我一直在尝试启动一个堆栈,其中有一个连接到 RDS 数据库实例的网站(EC2 实例)。 我在“LaunchConfiguration”的“属性”中将此代码作为“用户数据”添加到模板中

         "UserData": {"Fn::Base64": {"Fn::Join": ["",[
          "#!/bin/bash -xe\n","EP=`aws rds describe-db-instances --db-instance-identifier EnterDB --query 'DBInstances[*].Endpoint.Address' --output text`\n","sudo sed -i '2s/dbaddress/$EP/g' /var/www/html/basic/login/dbconn.PHP\n","sudo service apache2 restart","\n"]]}}

上面的代码应该带来一个 RDS 数据库实例的端点并将其添加到变量 'EP' 中,然后将 dbconn.PHP 文件中的 'dbaddress' 替换为端点。 但是当我尝试 echo $EP 时,它什么也没有。当然,dbconn.PHP 文件中的“dbaddress”没有被端点替换。 所以我试着把这部分 EP=`aws rds describe-db-instances ~ 直接写到终端。 但它没有用,并说

端点 URL 上的连接超时: “https://rds.ap-northeast-2.amazonaws.com/”

我不明白的是,当我在管理控制台中启动 EC2 实例并将代码添加用户数据时,它完美地工作。

我很感激任何意见。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)