我正在尝试设置Elastic Beanstalk以连接到我现有的AWS托管的Oracle数据库(按需类型,而不是自带许可类型),但是当我使用Elastic Beanstalk控制台>>环境详情>>修改配置>>数据库实用程序,我甚至没有提供连接到现有AWS RDS的选项.他们提供的唯一选择是“使用此环境创建RDS数据库实例”.好吧,我很灵活……有一种方法可以让猫皮肤变亮,但是当我尝试创建一个RDS DB(Oracle)实例(使用它们的下拉“Oracle se-1”选项)时,我得到了错误消息“oracle db engine不支持数据库实例类.”
有解决方法吗?我只想让我的beanstalk访问我现有的Oracle RDS,并感谢任何人提供的任何建议.请慢慢解释……这对我来说是一个新的环境.
以下是AWS技术支持提供的非常有用的答案:
原文链接:https://www.f2er.com/oracle/205187.html你好,
在典型情况下,ElasticBeanstalk启动的实例仅允许来自Elastic Load Balancer的HTTP连接,而Elastic Load Balancer将接受来自任何地方的HTTP请求(0.0.0.0/0).
允许Elastic Beanstalk实例访问RDS实例的最有效方法是在RDS授权中添加beanstalk实例的安全组.
检查Ec2->安全组您应该有一个安全组,其描述为“SecurityGroup for ElasticBeanstalk environment”.,检查底部窗格中的安全组ID,格式为sg-xxxxxxxx.
通过转到RDS授权RDS访问该安全性 – >在Db安全组中,您可以编辑Db当前安全组或创建一个新安全组(然后您需要将其应用于Db实例),在底部窗格中选择Ec2 Security Group而不是CIDR并添加Elastic Beanstalk安全组ID sg-xxxxxxxx.
如果您想直接从本地计算机上的Eclipse访问Db,您还需要将您的计算机公共IP添加为CIDR(您可以通过访问www.whatismyip.com等页面来检查您的公共IP)
您还需要在eclipse中使用JDBC驱动程序才能连接到RDS Oracle实例.
我还附上了Elastic Beanstalk的打印屏幕,显示了可以将JDBC连接传递到环境的位置.