This post got me thinking about which version of Linux to run for my AWS EC2 instances. At first, I found the AWS Linux perfectly suitable: it’s endorsed by Amazon, and obviously runs well. All of the appropriate interactions between the operating system and the virtualization system obviously work, where it isn’t immediately obvious that other version would do the same.
An investigation was inspired by the idea that AWS Linux can not (reasonably) be taken out of the AWS to do investigation, reproduce problems, or develop offline. Similarly, you can’t build an AWS instance on a local (screaming fast) machine and then push an image back to EC2.
I chose CentOS to be that much more agnostic to the hosting virtualization service, though I’m an AWS fan.
Here are some of the pleasant side effects I found of using CentOS as bonuses:
- SELinux — more security if you want it (and if you don’t)
- Clearer documentation – examples from the world
- CentOS free just like AWS Linux
- fresher repositories
- simulate environment locally
- can’t pull AWS Linux
- Build your own kernel