AWS Elastic Beanstalk Adds Two New Deployment Policies and Amazon Linux AMI 2016.03 Update

Posted on: Apr 7, 2016

You can now select from two additional deployment policies, immutable and rolling with additional batch, when deploying application code using AWS Elastic Beanstalk. This is in addition to the two existing deployment policies that Elastic Beanstalk currently supports (i.e. rolling, all at once). You can now select one of these four deployment policies when updating your applications. Elastic Beanstalk also lets you perform DNS-based blue/green updates in addition to the four deployment policies.

You can now use an immutable deployment policy when updating your application or environment configuration on Elastic Beanstalk. This policy is well suited for updates in production environments where you want to minimize downtime and reduce the risk from failed deployments. It ensures that the impact of a failed deployment is limited to a single instance and allows your application to serve traffic at full capacity throughout the update. The policy deploys code to a single, newly created Amazon EC2 instance and verifies that health checks pass before launching a full set of new instances running the new version. Once the new set of instances running the new application version is launched, the old set of instances is terminated.

You can now also use a rolling with additional batch policy when updating your application. This policy ensures that the impact of a failed deployment is limited to a single batch of instances and allows your application to serve traffic at full capacity throughout the update. The policy deploys code to a single batch of newly created EC2 instances before rolling out the update to your existing instances in equal batches. At the end of the deployment, the last batch of instances running the old application version is terminated. For example, if you have nine EC2 instances running your application and choose to update them in batches of one-third, the policy will first create three new instances running the new version. Once the new batch of instances has passed health checks, Elastic Beanstalk will then update six of the old instances in two separate, successive batches. The three remaining instances running the old version will be terminated.

Additionally, all Linux platforms supported by Elastic Beanstalk have been updated to the 2016.03 Amazon Linux AMI and the number of characters allowed in an environment name has been increased from 23 to 40 characters.

The use of the new deployment policies requires platform version 2.1.0 or newer. You can choose deployment policies using the Elastic Beanstalk console, Elastic Beanstalk CLI, or SDKs. Learn more about deployment policies in our documentation.

For more information on Elastic Beanstalk: