Database Reference
In-Depth Information
16.9.2.1 Elasticity
In leveraging a major benefit offered by virtualization, Amazon EC2 allows users to
statically and dynamically scale up and down their EC2 clusters. In particular, users
can always provision and de-provision virtual EC2 instances by manually starting and
stopping any number of them using the AWS management console, the Amazon com-
mand line tools and/or the Amazon EC2 API. Besides, users can employ Amazon's
CloudWatch to monitor EC2 instances in real time and automatically respond to
changes in computing requirements. CloudWatch is an Amazon service that allows
users to collect statistics about their cluster resource utilization, operational perfor-
mance, and overall resource demand patterns. Metrics such as CPU utilization, disk
operations, and network traffic can be aggregated and fed to the Amazon's Auto Scaling
process enabled by CloudWatch. The Auto Scaling process can subsequently add or
remove instances so as performance is maintained and costs are saved. In essence,
Auto Scaling allows users to closely follow the demand curve of their applications and
synergistically alter their EC2 clusters according to conditions they define (e.g., add 3
more instances to the cluster when the average CPU utilization exceeds 80%).
16.9.2.2 Scalability and Performance
Amazon EC2 instances can scale to more than 255 pCPUs per host [65], 128 vCPUs
per guest, 1 TB of RAM per host, up to 1 TB of RAM per unmodified guest and 512
GB of RAM per paravirtualized guest [64]. In addition, Amazon EC2 reduces the
time needed to boot a fresh instance to seconds, thus expediting scalability as the
needs for computing varies. To optimize performance, Amazon EC2 instances are
provided in various resource capacities that can suit different application types, includ-
ing CPU-intensive, memory-intensive and I/O-intensive applications (see Table 16.3).
The vCPU capacity of an instance is expressed in terms of Elastic Compute Units
(ECU). Amazon EC2 uses ECU as an abstraction of vCPU capacity whereby one ECU
provides the equivalence of a 1.0-1.2 GHz 2007 Opteron or 2007 Xeon processor [3].
Different instances with different ECUs provide different application runtimes. The
performances of instances with identical type and ECUs may also vary as a result of
what is denoted in cloud computing as performance variation [22,51].
16.9.2.3 Flexibility
Amazon EC2 users are provided with complete control over EC2 instances, with a
root access to each instance. They can create AMIs with software of their choice and
apply many of Amazon services, including Amazon Simple Storage Service (Amazon
S3), Amazon Relational Database Service (Amazon RDS), Amazon SimpleDB, and
Amazon Simple Queue Service (Amazon SQS), among others. These services and
the various available Amazon EC2 instance types can jointly deliver effective solu-
tions for computing, query processing and storage across a wide range of applica-
tions. For example, users running I/O-intensive applications like data warehousing
and Hadoop MapReduce [19,28] can exploit High Storage instances. On the other
hand, for tightly coupled, network-intensive applications users can utilize high-
performance computing (HPC) clusters.
In addition, users have the flexibility to choose among multiple storage types
that can be associated with their EC2 instances. First, users can rent EC2 instances
Search WWH ::




Custom Search