Amazon AWS is based on Infrastructure as a Service (IaaS) computing model. The primary services include compute, storage and web hosting. IaaS cloud architecture is based on the idea of elastic, programmable compute services.
Amazon AWS compute architecture is referred to as EC2. The servers, appliances and data storage for EC2 instances is up/down scalable based on network conditions and workload requirements. That allows tenant to increase or decrease the number of EC2 instances assigned to an application.
Cloud storage is elastic (EBS) providing storage services to applications and data backups. The tenant virtual machine is converted to an Amazon AMI that is compatible with EC2 compute architecture and can leverage all of the associated cloud services.
The tenant can design turn key virtual data centers based on EC2 instances (VM) for virtual servers and appliances. The instance-based cloud storage is available as public and/or private access. All instances are assigned to an EC2 instance type based on processing requirements. In addition there is shared and dedicated tenancy hardware options.
Scalable resizable compute capacity is provided with Amazon AWS cloud infrastructure. EC2 instance is a virtual server comprised of an operating system, application files and configuration settings that is bundled into an Amazon Machine Image (AMI). EC2 instances are launched from an AMI that serves as a template for each server. The primary operating systems are Linux and Windows based AMI.
Figure 1 EC2 Instance Contents
Amazon Machine Image (AMI)
The EC2 instance is launched from an AMI that serves as a template for each virtual server instance. The primary operating systems are Linux and Windows based AMI. The following describe the primary components of an Amazon AMI.
- Template for the root volume of an EC2 instance with operating system, application and configuration settings.
- Launch permissions that specify AWS account/s that are allowed to launch EC2 instances from that AMI.
- Block device mapping is the configuration for attaching data volumes/s to an EC2 instance when it is launched. There is support for EBS volumes and instance store volumes.
Figure 2 Amazon Machine Image (AMI)
Anytime you make configuration changes to an EC2 instance they only exist for that EC2 instance. Launching new EC2 instances from the same AMI will have the old configuration. The tenant must create a new AMI from the updated EC2 instance that can be used to launch additional instances with desired settings. Changes could include a variety of settings including adding tags for instance.
Launch EC2 Instances
EC2 instance associated with an AMI is launched from the EC2 console. There are options to launch instances from AWS CLI and AWS Tools for Windows PowerShell as well. EC2 instances must be launched first before access is available with client software.
- Launch instance from launch instance wizard
- Launch instance from a launch template
- Launch from an existing instance
- Launch Linux instance from EBS snapshot
- Launch AMI from AWS Marketplace
- [CLI] Launch instance from AMI
- [Windows PowerShell] Launch instance from AMI
EC2 Launch Sequence
The following is a list of steps required to launch an EC2 instance:
Step 1: Select region
Step 2: Select AMI
Step 3: Select root device type
Step 4: Select virtualization type
Step 5: Select instance type
Step 6: Select security group
Step 7: Create a key pair
Step 8: Assign launch permission
The launch of single or multiple EC2 instances from an Amazon Machine Image is based on a specific operating system such as Linux or Windows. In addition, tenants would create unique AMI packages for web servers, application servers and database servers.
Figure 3 Launching EC2 Instances
The root device volume for an EC2 instance contains the image used to boot the instance. The store options for root devices include AMI backed by Amazon EC2 instance store or AMI backed by Amazon EBS.
Instance store is not persistent and slower than the recommended persistent EBS volumes. There is a requirement for EBS storage and EC2 instance to reside in the same availability zone and by extension region.
Any persistent storage associated with an EC2 instance is not deleted when the instance is stopped or terminated. Ephemeral and instance store are temporary working storage that is deleted when the instance is stopped. Amazon automatically replicates EBS volumes as well within the same Availability Zone. Launch permission for an EC2 instance include public, private and explicit.