You are on page 1of 5

Cloud Computing Optimization Guide Prof.

Madhuri Bhavsar Hiren Patel Introduction


Cloud computing is an emerging computing technology that uses the internet and central remote servers to maintain data and applications .Cloud computing providers deliver applications via the internet, which are accessed from a Web browser, while the business software and data are stored on servers at a remote location. In some cases, legacy applications (line of business applications that until now have been prevalent in thin client Windows computing) are delivered via a screen-sharing technology, while the computing resources are consolidated at a remote data center location; in other cases, entire business applications have been coded using web-based technologies such as AJAX . Cloud computing provides computation, software, data access, and storage services that do not require end-user knowledge of the physical location and configuration of the system that delivers the services.

Uses:

Helps to use application without installation of software on local pc. Access the personal files at any computer with internet access. More efficient computation by centralize storage, memory , processing. SaaS (software as a service),more scalable, pay per use.

Deployment Models

Different deployment models are: 1. Public Cloud 2. Private Cloud 3. Community Cloud 4. Hybrid Cloud 1. Public Cloud: Resources are dynamically provisioned to the general public on a fine-grained, self-service basis over the Internet. 2. Private Cloud: It is infrastructure operated solely for a single organization, whether managed internally or by a third-party and hosted internally or externally. Benefits of low capital cost, no maintains and security, reliability is provided by vendor. 3. Community Cloud: A community cloud may be established where several organizations have similar requirements and seek to share infrastructure . With the costs spread over fewer users than a public cloud. This option is more expensive but may offer a higher level of privacy, security and/or policy compliance. 4. Hybrid Cloud: Hybrid cloud is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together, offering the benefits of multiple deployment models. Layers
Once an Internet Protocol connection is established among several computers, it is possible to share services within any one of the following layers. Client

Application Platform Infrastructure Server

Client A cloud client consists of computer hardware and/or computer software that relies on cloud computing for application delivery and that is in essence useless without it. Examples include some computers, phones and other devices, operating systems, and browsers. Application Cloud application services or "Software as a Service (SaaS)" deliver software as a service over the Internet, eliminating the need to install and run the application on the customer's own computers and simplifying maintenance and support. Platform Cloud platform services, also known as Platform as a Service (PaaS), deliver a computing platform and/or solution stack as a service, often consuming cloud infrastructure and sustaining cloud applications. It facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers. Infrastructure Cloud infrastructure services, also known as Infrastructure as a Service (IaaS), deliver computer infrastructure typically a platform virtualization environment as a service, along with raw (block) storage and networking. Rather than purchasing servers, software, data-center space or network equipment, clients instead buy those resources as a fully outsourced service. Suppliers typically bill such services on a utility computing basis; the amount of resources consumed (and therefore the cost) will typically reflect the level of activity. Server The servers layer consists of computer hardware and/or computer software products that are specifically designed for the delivery of cloud services, including multi-core processors, cloud-specific operating systems and combined offerings.

Cloud Optimization
Why we need cloud optimization? For more scalability and more efficient usage of cloud. Utilization of all resources and provide low coast service to client. Easy maintenance. Ways to Optimization

Resource Optimization Hardware Optimization Power Optimization By Distributing proper work load and proper scheduling

Resource Optimization: There are different technique which can be used for resource optimization: Optimize by consolidating under-utilized resources. Optimize based on time of day usage. Optimize based on seasonal demand variations. Optimize based on life cycle usage variations 1. Optimize by consolidating under-utilized resources In an enterprise with multiple brands, where each brand maintains their own independent IT environments, resources are allocated to applications based on the needs of that brand. As the capacity planning is undertaken independently for each brand, resources are left with spare capacity that goes unutilized. When considered as a whole, the spare capacity across all brands turns out to be of significant value. This provides an opportunity to consolidate applications across brands and reduce the resources based on their utilization. Optimization can be achieved here by creating a shared production environment with the common applications across brands. Shared resource pool for the applications reduces the number of resources allocated and improves the capacity utilization. Any burst in traffic can be managed by using auto-scaling to automatically increase or decrease the number of instances. Resource optimization based on demand: In a traditional data center computational capacity is over-provisioned considering peak loads and thus under-utilized. Traffic flow analysis is conducted to determine the resource demand variations for the applications that use the most bandwidth, time of day usage, average time users are connected to the service, peak season and off season usage, CPU, memory and storage resource utilization. There are three types of demand variations that can be considered for optimization: Demand based on time of day, on season and lifecycle of usage. 2. Optimize by time of day demand variations Certain applications demonstrate periodic spurt in traffic aligned with time-of-day variations based on factors which are unique to the organization or industry. Some examples are morning spike in load on attendance application due to employee attendance swipe, end of day sales reconciliation, catalog item description updates during the night in an ecommerce site, search indexing every 8 hours on an intranet search application. Applications are chosen such that peak traffic loads are non-overlapping with each other. Resource usage on such applications can be optimized by allocating a reduced common pool of shared resources. 3. Optimize by seasonal demand variations Certain applications based on the industry and geography in which they are deployed, are exposed to seasonal variations in traffic. Traffic flow into eCommerce applications in North

America are a classic example of this, during the holiday season (Nov, Dec, Jan) alone ecommerce sites like Amazon.com, Walmart.com receive 3X burst in traffic than their regular season traffic. This sudden burst in traffic would need the retailers to provision resources statically to cater to the peak loads and maintain them throughout the year. However, much of this capacity is under-utilized during the non-peak season. Retailers need to bear the costs of hardware, software licenses, network, power and people costs for maintenance. To reduce this overhead of costs, optimizing the resources based on such seasonal demand variability is considered. By resizing the ecommerce infrastructure for all the brands to average load instead of peak load, and rescaling the infrastructure during holiday season by using cloud bursting, about 22% optimization in the number of instances can be achieved. 4. Optimize by life cycle usage variations Organizations have independent environments for various software lifecycle stages, which include development, pre-production testing, staging, multiple production sites and recovery environments. The software development lifecycle and environments for each of these brands are independent today and are scheduled and sized according to their needs. By aligning the schedules of software lifecycle stages of several brands and pooling the computing resources costs can be reduced. Optimization is achieved by following these steps: Align the software development life cycle stages of multiple brands that have significant resources allocated for development and preproduction testing. Pool the computing resources for the brands into a virtual machine cluster with separate VM images as needed by development and pre-production testing. Create a resource allocation plan aligned with the software development lifecycle. Commission and decommission the computing resources as per the plan to reduce the resources.

Conclusion
Cloud computing provides a cost-effective, dynamically adaptive, provisional platform for IT services delivery. By using this technique we can optimize resources of cloud. Also we get More scalability , efficient use of resources.

References
[1] http://en.wikipedia.org/wiki/Cloud_computing [2] Chaisiri, S. Lee, B. Niyato, D. Nanyang Technological University, Singapore, Optimization of Resource Provisioning Cost in Cloud Computing IEEE Computer Society doi10.1109/TSC.2011.7 [3]Jay KulKarni, Sanjay Agara, Optimizing the Cloud: Six Levers for Optimization During Cloud Migration article Published May 5, 2011

You might also like