Amazon Web Services is all about making the cloud consumer process as consistent and as simple as possible. Simple is relative to the consumer, but consistency is key for everyone currently using the service, or looking to adopt it. One thing we like to do for matching both simple and consistent is to use processes like creating images and templates for virtualized environments. In the AWS world, these are called AMI, or Amazon Machine Images.
Launching your EC2 instances can be done either through the EC2 launch wizard or with a variety of other tools and technologies. Let’s take a quick look into the basics of Amazon Web Services AMIs and see just how easy it is to make use of them.
The AMI Catalog
The default quick start options are where most people learn about the AMI offerings of AWS as you launch your EC2 instances. The default image at the top of the screen will always be the Amazon Linux running as an HVM virtualization type, and EBS-backed as the default. These are nice and quick linux images which are based on a CentOS derivative. The EBS-backed version means that you also have persistent storage that will survive reboots of the instance.
We also have the AWS Marketplace. This is a set of instance images that are provided by AWS partners who offer services by subscription to AWS customers. Vendors can deliver commercial offerings which are packaged and ready for consumption to make the ease-of-delivery as simple as possible in order to get you up and running on their products as quickly as possible.
The typical configuration is that you launch your EC2 instance wizard and search the catalog for the right offering. Commercial vendors are searchable right in the AMI selection page with the ability to choose vendor, product, version and many more searchable and filterable attributes. If you wanted to get a secured Microsoft IIS server, why would you go to the trouble of building your own when you can just pick it from a catalog?
Any of the per-hour license billing is done through your AWS billing service, so all of your costs are itemized and delivered in your monthly invoices. AMI marketplace subscriptions start upon your launch of the EC2 instance and are active as long as the instances are deployed. Once you terminate your instance, the billing stops along with it. This is a great way to test drive platforms before deciding if you want to make it a part of your regular infrastructure.
The Community AMIs are another section of the AWS EC2 template world where community contributors create and publish their own customized images to be used by anyone else in the AWS world. These are mostly non-proprietary and non-commercial software images, although you will find Microsoft Windows images in the Community AMI list as well.
This is a great way to give back to the rest of the community just like you would with the Docker Hub for containers, or by sharing your own virtual machine images on another type of public catalog.
Creating Your Own AMI
One of the compelling reasons to use an AMI is that it is pre-loaded with updates and other tools. What if we wanted to create our own customized version that is a little more flavored-to-taste for our own needs? That’s as easy as creating your own AMI for your AWS account using your very own EC2 Instance as a template.
Just like the way we would do this in a virtualization platform, you can create a working instance, fill it with the tools and updates that you wish to have for a baseline going forward, flush out the unnecessary stuff you don’t want or need, and then take a snapshot of that working instances to be used as an AMI template.
This will show up in your AMI list within your AWS account to be used for launching new EC2 instances from. As further updates become available, you can also load up the changes into a new AMI and make sure that you just select that AMI ID as the updated one for launching your own AWS instance infrastructure.
When you want to use a programmatic deployment method, just make sure to know your AMI ID, and you can refer to the specific AMI type with whatever your deployment tool of choice is.
As you can see, Amazon is making the process as smooth as possible so there is little need to go outside of the walls of AWS to get what you need. This is one of the reasons AWS has continued to lead the market, and is bringing more new customers every day to the public cloud market. Using these readily available AMIs is a great way to make those first steps even simpler.