19th February 2020

AWS Elastic Beanstalk Platform Version Retirement

Updating your AWS Elastic Beanstalk platform versions should happen regularly, but even with regular updates you might occasionally need to migrate away from a retiring platform version.
Cloud development

What is AWS Elastic Beanstalk?

Elastic Beanstalk is Amazon Web Services' web application platform, designed for the deployment and scaling of web applications developed with server-side languages such as Java, PHP and Python.

We use Elastic Beanstalk as part of our AWS development and web application hosting, as it's well-suited for deploying PHP and MySQL web applications in the cloud, especially if they require load-balanced scalable capacity or multi-instance redundancy. Elastic Beanstalk is often our platform of choice when migrating a legacy PHP & MySQL application to the cloud from a more traditional Linux VPS server - we can leverage the service layer of Elastic Beanstalk to provide enhanced stability, scalability and reliability.

Your AWS Elastic Beanstalk Platform Version is Approaching Retirement

Amazon Web Services will send you alerts if it detects that an application hosted on Elastic Beanstalk is running a platform version that is approaching retirement. You may receive an email warning you of the platform retirement around 20 days before the retirement date.

This isn't a whole lot of warning time, so it's worth putting in place processes to make platform updates on a regular basis.

If you don't have in-house capacity for making the required platform updates, we'd also recommend contacting an AWS development agency such as Si Novi as soon as possible to assist with the migration.

Screenshot of AWS Elastic Beanstalk console, chosing platform version

How to update your Elastic Beanstalk platform version before retirement

As experienced AWS developers with a range of web applications hosted on Elastic Beanstalk, we're accustomed to making Elastic Beanstalk platform updates.

Unfortunately updating retired Elastic Beanstalk platform versions isn't as easy as clicking a button. A new Elastic Beanstalk Environment must be provisioned using the new platform version, and the web application deployed to it.

At this point it's important to test the web application within the new EB environment to make sure it's operating normally and there are no incompatiblilies. For example, this could be an issue with newer PHP versions, where updating the EB platform version also requires an update to the PHP software version. PHP 7.1 has recently become end-of-life, and this has meant the retirement of Elastic Beanstalk platform versions running PHP 7.1. We like to regularly maintain web applications, updating PHP to latest versions so we're familiar with the typical updates required to make an application compatible with later version of PHP.

Once any required PHP or other application updates have been made, and it has been confirmed that the web application is running normally in the new Elastic Beanstalk environment (and on the new platform version), traffic can be diverted to the new server. This is usually achieved with a Blue/Green switch approach using DNS changes to point web traffic to the new EB environment. Done properly, your users should not experience any downtime.

What happens if I ignore my Elastic Beanstalk platform version retirement?

At first, not a lot. AWS say that once an Elastic Beanstalk platform version is retired, they will no longer issue patches or security fixes for these retired platform versions. This means that your EB environment and the web application hosted on it will continue to operate for some time following the retirement - but possibly at increased risk of reliability or security issues.

Eventually however, AWS may withdraw the platform version entirely which may have a severe impact on your application.

We'd always recommend working with AWS architects and developers such as ourselves to make the platform updates in plenty of time to ensure the continued operation of your web applications.

AWS development services

At Si Novi we develop bespoke web-based software, using using AWS components and web hosting. Our cloud development services include:

  • Serverless application development: Developing cloud-native serverless applications for cost-effective and highly scalable microservices, with AWS services like Lambda, DynamoDB and S3.
  • Cloud hosting for web and mobile applications: We deploy the majority of our workloads on the AWS Cloud, bringing scalability, security and reliability to our client's web-based software. Talk to us about the migration of web applications to the cloud
  • API development: Creating bespoke APIs using AWS API Gateway, Cloudfront and Lambda, and consuming existing API's with ELT processes to create data services.

Read more about the AWS Elastic Beanstalk: https://aws.amazon.com/elasticbeanstalk

Do you have any thoughts on this article? Get in touch: hello@sinovi.uk

About the author

James Galley

An AWS-certified developer, James architects and produces cloud-based web applications using Amazon Web Services. Recent projects include high-throughput event driven applications using Kinesis and DynamoDB, fully serverless web applications powered by AWS Lambda and high-performance static sites deployed to S3.

Profile image of James Galley
contact us

We're here to help

Talk to us today about AWS cloud development.

We're a software development and cloud consultancy, operating as an outsourced technology partner for businesses - building, hosting and maintaining functional web based applications in the AWS cloud with trusted web technologies.

Discuss your next project