简体   繁体   中英

AWS Elastic Beanstalk: Update Platform Version & custom AMI

I'm using Elastic Beanstalk for a web app. (Automatic set up of EC2, an RDS db, etc).

I've been using a custom AMI (based on the default Elastic Beanstalk) because of my need for some specific packages too large to install with a config file.

I noticed the other day that my dashboard shows an option to update platform version under configuration. For example, from 64bit Amazon Linux 2015.03 to 64bit Amazon Linux 2015.09 .

How will this affect my custom AMI? Will it overwrite it?

What is the best way to update a custom AMI from, for example, 64bit Amazon Linux 2015.03 to 64bit Amazon Linux 2015.09 ?

If you update the AMI to theirs, it won't contain your custom modifications. You would need to make these modifications yourself to your base AMI.

I've had success using CI (jenkins) to build my AMIs with Packer via puppet. This allows me to set the base AMI to the newer one and end up with an updated AMI automatically. Jenkins then tells beanstalk to use the new AMI it built.

If possible, I strongly suggest you'd stick with the default AMI provided by Amazon. It makes the whole OS maintenance a breeze and ensures that whenever peripheral chances are made (eg in the load balancer or beanstalk scripts) - you'd be safe.
For that you'll have to solve the issue of installing your extra packages. Consider using the Docker version of elastic beanstalk, which allows a great deal of flexibility in the OS level, alongside the benefits of beanstalk. The only downside is another layer of complexity.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM