Amazon Machine Image – AMI
An Amazon Machine Image – AMI is the information needed to launch an instance. This is a virtual server that runs in the cloud.
An AMI is essentially a template that can be used to launch as many instances of the same thing.
Instances can be launched from as many AMIs as you like within a VPC
An AMI includes the following:One or more EBS snapshots, or, for instance-store-backed AMIs, a template for the root volume of the instance for e.g, an operating system, an application server, and applications
Launch permissions are used to control which AWS accounts have access to the AMI to launch instances, e.g. AWS account IDs with which the AMI is shared
Block device mapping that specifies which volumes will be attached to the instance at launch
AMIs can either be provided, managed, or published.
AMIs that are provided by third-party or community providers of public custom
Private AMIs are created by other AWS accounts, and shared with you
YouAMI Types creates private and custom AMIs
Region & Availability ZoneAMIs can be copied to other regions, but they are regional.
Operating systemAMIs can be found in many OS flavors, such as Linux, Windows, ubuntu, etc. Linux, windows, ubuntu, etc
Architecture (32-bit and 64-bit)
Launch PermissionsLaunch Permissions – These permissions determine who has access the AMIPublic – Accessible to all AWS account
Explicit – Shared by specific AWS accounts
Private/Implicit – Only available for AMI creator accounts
Root device storageAMIs may have EBS or Instance storage as their root device storage
EBS backedEBS volumes can be maintained independently of the EC2 lifecycle.
EBS-backed instances can be stopped without affecting volumes
If the Delete On Termination flag has been disabled, EBS instances can be continued without losing volumes upon termination.
EBS-backed instances boot up faster than Instance store-backed instances, as only the parts that are required to boot the instance need to be retrieved form the snapshot before they are made available.
AMI creation is easier when AMIs are backed by EBS. The CreateImage API action registers the EBS-backed AMI.
Instance Store backedInstance Store is ephemeral storage that is dependent on the Instance’s lifecycle
If the instance is stopped or terminated, the instance store is deleted.
The volume of the instance store cannot be stopped
Instance store volumes have an AMI in S3 and take longer to boot than EBS-backed instances. This is because all the parts must be retrieved from S3 before an instance can be made available.
To create Linux AMIs backed up by the instance store, you need to create an AMI from your instance using the Amazon EC2 AMI Tools.
Linux Virtualization Types
Linux Amazon Machine Images can use either paravirtual (PV), or hardware virtual machine(HVM) virtualization.
The main difference between PV AMIs and HVM AMIs lies in the way they boot and whether they can use special hardware extensions (CPUs, networks, and storage) to improve performance.
AWS recommends that you use the most current generation of instance types and HVM AMIs for launching instances to get the best performance.
HVM AMIsHVM aMIsHVM aMIs are presented with a fully-virtualized set of hardware and boot by execution of the master boot record from the root block device.
The HVM virtualization type allows you to run an operating system directly on top a virtual machine, without any modifications, as if it were running on bare-metal hardware.
The EC2 host system emulates a portion or all of the underlying hardware presented to the guest.
HVM guests can, unlike PV guests have fast access to the underlying hardware of the host system.
To take advantage of enhanced networking or GPU processing, HVM AMIs must be used. To pass instructions to specialized network or GPU devi