Amazon Elastic Beanstalk可以自动扩展Amazon RDS吗?

我打算使用Amazon Elastic Beanstalk运行PHP / MySQL应用程序。 在设置中,我可以定义何时应该自动启动新实例(Auto-Scaling)。

然而,据我所知,这只会创build新的EC2实例,不会触及RDS数据层(我也在设置中configuration)。

有没有办法通过自动化的只读副本或数据库大小升级来自动扩展这个RDS,还是我必须以某种方式手动执行此操作?

今天我们遇到了这个问题。

我们推出了一个移动应用程序,连续不断地报告要保存在RDS MySQL中的数据,这导致了高性能的影响,我们使用db.t2.micro来利用免费层。

我可以确认,Elastic Beanstalk不会自动调整RDS。 但是,重新configuration了环境,并为RDS,db.m3.medium设置了其他服务器,该过程从用户处顺利进行,数据库能够继续提供读/写查询,并且无需停机即可升级服务器。

所以,有一种方法可以执行一个手动的,但快速和容易的规模,但没有自动规模。

在编程方面,我认为你可以制作一些脚本来监视你的数据库,

aws elasticbeanstalk --update-environment --environment-name <your-env-name> --option-settings Namespace=aws:rds:dbinstance,OptionName=DBInstanceClass,Value=db.m1.small 

不,Elastic Beanstalk只能创build新的RDS实例(我认为即使这样做也只能通过Web界面来完成)。 Elastic Beanstalk实际上只pipe理EC2实例,并不直接pipe理RDS。

请注意,RDS“缩放”不是无缝的; 实例大小更改会导致一些停机时间,因为RDS DB正在运行的基础EC2实例基本上正在closures并重新启动。