如何修复“数据库安全组不能再与此数据库实例关联”错误

时间:2018-07-04 18:16:22

标签: amazon-web-services elastic-beanstalk amazon-rds

This might be a duplicate of this post,但我想针对我的具体情况另外提出一个问题。因为到目前为止在Stackoverflow上找不到的答案对我没有帮助。

我不久前创建了一个Elastic Beanstalk实例,通过遵循安装向导来完成RDS实例。但是,当我现在尝试向其上载新代码时,出现以下错误:

  

环境更新开始。

     

环境健康已从“确定”过渡到“信息”。应用   正在更新(运行2秒钟)。

     

服务:AmazonCloudFormation,消息:名为堆栈   “ awseb-e-gmz62hycax-stack”已中止操作。当前状态:   'UPDATE_ROLLBACK_IN_PROGRESS'原因:空

     

更新名为:xxxxxxxxxxxxxx的RDS数据库失败原因:数据库安全性   组不再可以与此数据库实例相关联。使用VPC   安全组。

在Elastic Beanstalk的Configuration部分的SecurityDatabase下,我找不到DB Security Groups的任何设置。

如果我转到此Elastic Beanstalk使用的RDS实例,则在Security group rules下,我看到两个Security Group - Inbound规则。

一个名称如下:

awseb-e-abcde12345-stack-AWSEBSecurityGroup-123456ABCDE (sg-1234abcd)

另一个名字如:

rds-awseb-e-abcde12345-stack-awsebrdsdbsecuritygroup-1234567abcdef-abcd (sg-4321dcba)

剩下的就是全部:CIDR/IP - Inbound

我要用VPC规则删除/替换这些Security Group - Inbound规则吗?我是否需要使用其他规则来完全构建一个新的Elastic Beanstalk?尤其是如何做到这一点。

此外,与此弹性beantalk和RDS关联的所有安全组都显示在VPC仪表板的“安全组”部分:https://eu-west-1.console.aws.amazon.com/vpc/home?region=eu-west-1#securityGroups:

我在这里不知所措。感觉这应该非常简单,因为我是使用AWS的设置向导创建的,但是我无法弄清楚。任何有想法的人,请发表评论或回答,谢谢!

1 个答案:

答案 0 :(得分:-1)

错误明确指出DB Security Groups can no longer be associated with this DB Instance

在RDS的早期,他们使用的是称为DB Security组的单独安全组。现在,所有内容都移至VPC安全组。如果您使用的是旧版AWS账户,您仍然可以看到数据库安全组,但现在无法使用。因此,请改用VPC security group

最佳做法:

通过Elastic Beanstalk或Cloudformation启动RDS并不是一个好习惯(特别是对于生产),因为删除CF模板时,它将删除所有资源,包括数据库。 Beanstalk也将在新部署中执行相同的操作。