以编程方式扩展ElasticBeanStalk环境

时间:2017-10-14 05:06:22

标签: java amazon-web-services amazon-ec2 elastic-beanstalk aws-sdk

如何在正在运行的应用程序(Spring Boot)中以编程方式添加更多实例(向上扩展)ElasticBeanStalk环境?

我想过使用AWSElasticBeanstalkClient,但找不到任何使用客户端添加实例的方法。

http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/elasticbeanstalk/AWSElasticBeanstalkClient.html

任何提示?

我需要这个,因为我的应用程序的设计是每个App节点需要相互通信才能执行一些图像识别任务。

如果使用EBS无法做到这一点,我正在考虑按照下面的说明以编程方式创建EC2,我的问题是如何将我的应用程序部署到新创建的EC2实例。

http://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/run-instance.html

2 个答案:

答案 0 :(得分:6)

Cloudwatch警报+ AutoScaling是用于扩展ElasticBeanstalk应用程序的AWS Reference架构。

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.managing.as.html

您可以让每个应用节点发布自定义cloudwatch指标,并根据该指标扩展您的ASG。

https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html

答案 1 :(得分:2)

您可以使用updateEnvironment方法更新实例数的最小值和最大值。如果你不能像strongjz建议的那样配置任何自动缩放触发器。