Skip to main content

Use Case—The Amazon EC2 Resource Pool

The Amazon EC2 Resource Pool in Aneka allows integration with Amazon EC2, a popular cloud resource provider. A simple Web service client has been developed in Aneka to interact with EC2, leveraging its web-service-based interface. To interact with EC2, certain parameters are required:

User Identity: This is the account information used to authenticate with Amazon EC2. It consists of an access key and a secret key, which are obtained from the Amazon Web services portal after signing in. These keys are necessary for any operation involving web service access.

Resource Identity: The resource identity is the identifier of a public or private Amazon Machine Image (AMI) that serves as a template for creating virtual machine instances.

Resource Capacity: This specifies the type of instance that will be deployed by EC2. Instance types vary based on the number of cores, amount of memory, and other performance-related settings. Common instance types include small, medium, and large, each with a predefined capacity and associated cost.

The EC2ResourcePool in Aneka uses the Web service client and the provided configuration information to forward requests from the pool manager to EC2. It stores metadata of each active virtual instance for future use.

To optimize the utilization of EC2 instances and minimize costs, the EC2ResourcePool implements a cost-effective optimization strategy. Amazon charges virtual machine instances in one-hour time blocks. If an instance is used for only 30 minutes, the customer is still charged for one hour. To cater to applications with smaller execution time granularity, the pool implements a local cache. Released instances whose time block has not expired yet are kept in the cache and reused instead of provisioning new instances from Amazon.

By employing this cost-effective optimization strategy, the EC2ResourcePool in Aneka can minimize provisioning costs from the Amazon cloud while achieving high utilization of each provisioned resource.

Comments

Popular posts from this blog

2.1 VIRTUAL MACHINES PROVISIONING AND MANAGEABILITY

In this section, we will have an overview on the typical life cycle of VM and its major possible states of operation, which make the management and automation of VMs in virtual and cloud environments easier than in traditional computing environments As shown in Figure above, the cycle starts by a request delivered to the IT department, stating the requirement for creating a new server for a particular service.  IT administration to start seeing the servers’ resource pool, matching these resources with the requirements, and starting the provision of the needed virtual machine.  Once provisioned machine started, it is ready to provide the required service according to an SLA, or a time period after which the virtual is being released.

1.2 ROOTS OF CLOUD COMPUTING

We can track the roots of clouds computing by observing the advancement of several technologies, especially in hardware (virtualization, multi-core chips), Internet technologies (Web services, service-oriented architectures, Web 2.0), distributed computing (clusters, grids), and systems management (autonomic computing, data center automation).  Below Figure shows the convergence of technology fields that significantly advanced and contributed to the advent of cloud computing. . We present a closer look at the technologies that form the base of cloud computing, with the aim of providing a clearer picture of the cloud ecosystem as a whole. 1.2.1 From Mainframes to Clouds 1.2.2 SOA, Web Services, Web 2.0, and Mashups 1.2.3 Grid Computing 1.2.4 Utility Computing 1.2.5 Hardware Virtualization 1.2.6 Virtual Appliances and the Open Virtualization Format 1.2.7 Autonomic Computing ______ Cloud computing has its roots in several technologies and developments, including virtualization, gr...

2.1.1 VM Provisioning Process

  Steps to Provision VM. Here, we describe the common and normal steps of provisioning a virtual server: Firstly, you need to select a server from a pool of available servers (physical servers with enough capacity) along with the appropriate OS template you need to provision the virtual machine. Secondly, you need to load the appropriate software (operating system you selected in the previous step, device drivers, middleware, and theneeded applications for the service required). Thirdly, you need to customize and configure the machine (e.g., IP address, Gateway) to configure an associated network and storage resources. Finally, the virtual server is ready to start with its newly loaded software. These are the tasks required or being performed by an IT or a data center’s specialist to provision a particular virtual machine.