serverless可以用来创建RDS实例吗?

Can serverless be used to to create RDS instance?

目前我们正在使用无服务器框架来更新我们的 dev/test 环境,并手动管理我们的环境。例如。每次我们创建新环境时,我们都会手动创建 Elastic Beanstalk 应用程序和 RDS 实例。 是否可以使用无服务器脚本自动执行所有这些操作?或云形成?

使用 CloudFormation 非常简单。您只需要定义一个 AWS::RDS::DBInstance。 AWS 还为此提供了一些示例模板:https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/sample-templates-services-us-east-1.html#w2ab2c23c42c13c27

由于您可以在 Serverless 中包含 CloudFormation 资源,因此您可以将其直接添加到您的 serverless.yml,这样它就可以由 Serverless 部署,而无需使用单独的 CloudFormation 部署:https://serverless.com/framework/docs/providers/aws/guide/resources/

RDS(包括 Aurora)所有可用选项的更完整示例: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html

是的,您绝对可以使用 cloudformation 模板创建您的 rds 实例,

"MyDB" : {
 "Type" : "AWS::RDS::DBInstance",
 "Properties" : {
     "DBSecurityGroups" : [
        {"Ref" : "MyDbSecurityByEC2SecurityGroup"}, {"Ref" : "MyDbSecurityByCIDRIPGroup"} ],
     "AllocatedStorage" : "5",
     "DBInstanceClass" : "db.m1.small",
     "Engine" : "MySQL",
     "MasterUsername" : "MyName",
     "MasterUserPassword" : "MyPassword"
 },
 "DeletionPolicy" : "Snapshot"
} 

此 json 片段将创建您的 RDS 实例,有关创建 RDS 和 Elastic beanstalk 的完整参考,请参阅:

https://github.com/satterly/AWSCloudFormation-samples/blob/master/ElasticBeanstalk.template

希望对您有所帮助!