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
部分的Security
或Database
下,我找不到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的设置向导创建的,但是我无法弄清楚。任何有想法的人,请发表评论或回答,谢谢!
答案 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也将在新部署中执行相同的操作。