Amazon web services 从用户数据中检索RDS端点

Amazon web services 从用户数据中检索RDS端点,amazon-web-services,amazon-rds,Amazon Web Services,Amazon Rds,我有一个MySQL RDS实例和一个包含Grails应用程序的AMI。我想使用User Data函数用RDS端点填充Grails application.yml文件。如何从用户数据中检索端点?使用用户数据有两种方法: 与数据一样:用户数据的内容可以通过http://169.254.169.254/latest/user-data/,这样您的应用程序就可以解析内容并对其执行所需操作 作为可执行脚本:在Linux上,使用启动用户数据将导致执行它,因此您可以编写一个脚本来更新application.

我有一个MySQL RDS实例和一个包含Grails应用程序的AMI。我想使用User Data函数用RDS端点填充Grails application.yml文件。如何从用户数据中检索端点?

使用用户数据有两种方法:

  • 与数据一样:用户数据的内容可以通过
    http://169.254.169.254/latest/user-data/
    ,这样您的应用程序就可以解析内容并对其执行所需操作
  • 作为可执行脚本:在Linux上,使用
    启动用户数据
    将导致执行它,因此您可以编写一个脚本来更新
    application.yml
    文件

另一个概念是将RDS端点存储在AWS Systems Manager参数存储中。然后,使用一个用户数据脚本从那里提取数据并将其存储在
application.yml
中。通过这种方式,端点可以在参数存储中轻松更新,而无需修改任何脚本。

有两种使用用户数据的方法:

  • 与数据一样:用户数据的内容可以通过
    http://169.254.169.254/latest/user-data/
    ,这样您的应用程序就可以解析内容并对其执行所需操作
  • 作为可执行脚本:在Linux上,使用
    启动用户数据
    将导致执行它,因此您可以编写一个脚本来更新
    application.yml
    文件

另一个概念是将RDS端点存储在AWS Systems Manager参数存储中。然后,使用一个用户数据脚本从那里提取数据并将其存储在
application.yml
中。这样,端点可以在参数存储中轻松更新,而无需修改任何脚本。

在Linux AMI上运行时,用户数据只不过是shell脚本。
您可以使用shell脚本编辑appication.yml文件并添加参数。

在Linux AMI上运行时,用户数据只不过是shell脚本。
您可以使用shell脚本编辑appication.yml文件并添加参数。

我曾尝试创建一个脚本来检索终结点并更新application.yml文件,但当它执行时,它会将当前终结点替换为空(即空白)。知道为什么吗?这是当前脚本:
#/bin/bash RDS=aws RDS——region eu-west-2 description db instances——查询“DBInstances[*].Endpoint.Address”——输出文本sudo sed-i“s/CURRENT_RDS_Endpoint/${RDS}/g”pathtofile/application.yml
我尝试创建一个脚本来检索端点并更新application.yml文件,但当它执行时,它会将当前端点替换为空(即空白)。知道为什么吗?这是当前脚本:
#/bin/bash RDS=aws RDS——region eu-west-2描述数据库实例——查询“DBInstances[*].Endpoint.Address”——输出文本sudo sed-i“s/CURRENT_RDS_Endpoint/${RDS}/g”pathtofile/application.yml