Transcript
Page 1: Seminar Report Cloud Computing

Himanand Raj Bharat 2K9/DEEE/118 DELHI TECHNOLOGICAL UNIVERSITY

CHAPTER 1

Introduction

According to the IEEE Computer Society Cloud Computing is:

"A paradigm in which information is permanently stored in servers on the Internet and ached temporarily on clients that include desktops, Entertainment centres, table computers, notebooks, wall computers, handhelds, etc."

CLOUD COMPUTIN

G

Page 2: Seminar Report Cloud Computing

CLOUD COMPUTING

Cloud computing is Internet ("cloud") based development and use of computer technology ("computing"). It is an emerging computing technology that uses the Internet and central remote servers to maintain data and applications. Cloud computing allows consumers and business to use applications without installation and access their personal files at any computer with Internet access. This technology allows for much more efficient computing by centralizing storage, memory, processing and bandwidth.

A definition for cloud computing can be given as an emerging computer paradigm where data and services reside in massively scalable data centres in the cloud and can be accessed from any connected devices over the internet. The best example of cloud computing is Google Apps where any application can be accessed using a browser and it can be deployed on thousands of computer through the Internet. Cloud computing is the next natural step in the evolution of on-demand information technology services and products. To a large extent cloud computing will be based on virtualized resources.

The idea of cloud computing is based on a very fundamental principal of reusability of IT capabilities. Computing can be described as any activity of using and/or developing computer hardware and software. It includes everything that sits in the bottom layer, i.e. everything from raw compute power to storage capabilities. Cloud computing ties together all these entities and delivers them as a single integrated entity under its own sophisticated management.

Cloud is a term used as a metaphor for the wide area networks (like internet) or any such large networked environment. It came partly from the cloud-like symbol used to represent the complexities of the networks in the schematic diagrams. It represents all the complexities of the network which may include everything from cables, routers, servers, data centres and all such other devices. With cloud computing we come back to the centralized computing infrastructure. It is something which can easily be accessed via the internet and something over which we have all the control.

CHAPTER 2How does a Cloud work??

A cloud user needs a client device such as a laptop or desktop computer or any computing

resource with a web browser (or other approved access route) to access a cloud system via the

World Wide Web. Typically the user will log into the cloud at a service provider or private

company, such as their employer. Cloud computing works on a client-server basis using web

browser protocols. The cloud provides server-based applications and all data services to the

user, with output displayed on the client device.

Dept. of EEE, Delhi Technological University 2

Page 3: Seminar Report Cloud Computing

CLOUD COMPUTING

If the user wishes to create a document using a word processor, for example, the cloud

provides a suitable application running on the server which displays work done by the user on

the client web browser display. Memory allocated to the client system's web browser is used

to make the application data appear on the client system display, but all computations and

changes are recorded by the server, and final results including files created or altered are

permanently stored on the cloud servers.

Cloud services work on multiple platforms, including Linux, Macintosh, and Windows

computers. Smart phones, pads and tablet devices with Internet and World Wide Web access

also provide cloud services to telecommuting and mobile users. A service provider may pool

the processing power of multiple remote computers in a cloud to achieve routine tasks such

as backing up of large amounts of data, word processing, or computationally intensive work.

These tasks might normally be difficult, time consuming, or expensive for an individual user

or a small company to accomplish, especially with limited computing resources and funds.

With cloud computing, clients require only a simple computer, such as netbooks, designed

with cloud computing in mind, or even a Smartphone, with a connection to the Internet, or a

company network, in order to make requests to and receive data from the cloud, hence the

term "software as a service" (SaaS). Computation and storage is divided among the remote

computers in order to handle large volumes of both, thus the client need not purchase

expensive hardware or software to handle the task. The outcome of the processing task is

returned to the client over the network, dependent on the speed of the Internet connection.

Dept. of EEE, Delhi Technological University 3

Page 4: Seminar Report Cloud Computing

CLOUD COMPUTING

FIG 2.1

Dept. of EEE, Delhi Technological University 4

Page 5: Seminar Report Cloud Computing

CLOUD COMPUTING

CHAPTER 3

Cloud Architecture

Cloud architecture the systems architecture of the software systems involved in the delivery of cloud computing, comprises hardware and software designed by a cloud architect who typically works for a cloud integrator. It typically involves multiple cloud components communicating with each other over application programming interfaces, usually web services.

This closely resembles the Unix philosophy of having multiple programs doing one thing well and working together over universal interfaces. Complexity is controlled and the resulting systems are more manageable than their monolithic counterparts.

Cloud architecture extends to the client, where web browsers and/or software applications

access cloud applications. Cloud storage architecture is loosely coupled, where metadata

operations are centralized enabling the data nodes to scale into the hundreds, each

independently delivering data to applications or users.

FIG 3.1

Dept. of EEE, Delhi Technological University 5

Page 6: Seminar Report Cloud Computing

CLOUD COMPUTING

CHAPTER 4

Cloud Computing services

The cloud computing services are broadly divided into three categories:

Infrastructure-as-a-Service (IaaS) Platform-as-a-Service (PaaS) Software-as-a-Service (SaaS)

Infrastructure-as-a-Service provides virtual server instances with unique IP addresses and blocks of storage on demand. Customers use the providers application program interface to start, stop, access and configure their virtual servers and storage. In the enterprise, cloud computing allows a company to pay for only as much capacity as is needed, and bring more online as soon as required.

Platform-as-a-service in the cloud is defined as a set of software and product development tools hosted on the provider's infrastructure. Developers create applications on the provider's platform over the Internet.

In the software-as-a-service cloud model, the vendor supplies the hardware infrastructure, the software product and interacts with the user through a front-end portal. Even though cloud computing is a pretty new technology, there are many companies offering the above mentioned cloud computing services.

Different companies like Amazon, Google, Yahoo, IBM and Microsoft are all players in the cloud computing services industry. But Amazon is the pioneer in the cloud computing industry with services like EC2 (Elastic Compute Cloud) and S3 (Simple Storage Service) dominating the industry. Microsoft has good knowledge of the fundamentals of cloud science and is building massive data centres.

IBM, the king of business computing and traditional supercomputers, teams up with Google to get a foothold in the clouds. Google is far and away the leader in cloud computing with the company itself built from the ground up on hardware.

Dept. of EEE, Delhi Technological University 6

Page 7: Seminar Report Cloud Computing

CLOUD COMPUTING

FIG 4.1

Dept. of EEE, Delhi Technological University 7

Page 8: Seminar Report Cloud Computing

CLOUD COMPUTING

CHAPTER 5

Implementing Cloud Computing

All of the architectural and organizational considerations mentioned herein are generally apply to all implementations of a cloud infrastructure. As we focus on building the cloud, a number of models have been developed for deploying a cloud infrastructure.

5.1 Private CloudsIn a private cloud, the infrastructure for implementing the cloud is controlled completely by the enterprise. Typically, private clouds are implemented in the data center of the enterprise and managed by internal resources.

A private cloud maintains all corporate data in resources under the control of the legal and contractual umbrella of the organization. This eliminates the regulatory, legal and security concerns associated with information being processed on third party computing resources.

The private cloud can also be used by existing IT departments to dramatically reduce their

costs and as an opportunity to shift from a cost center to a value center in the eyes of the

business.

5.2 Public Clouds In a public cloud, external organizations provide the infrastructure and management required to implement the cloud. Public clouds dramatically simplify implementation and are typically billed based on usage. This transfers the cost from a capital expenditure to an operational expense and can quickly be scaled to meet the organization’s needs.

Temporary applications or applications with burst resource requirements typically benefit from the public cloud’s ability to ratchet up resources when needed and then scale them back when they are no longer needed. In a private cloud, the company would need to provision for the worst case across all the applications that share the infrastructure. This can result in wasted resources when utilization is not at its peak.

Public clouds have the disadvantage of hosting your data in an offsite organization outside

the legal and regulatory umbrella of your organization. In addition, as most public clouds

leverage a worldwide network of data centers, it is difficult to document the physical location

of data at any particular moment.

These issues result in potential regulatory compliance issues that include the use of public

clouds for certain organizations or business applications. Not all public cloud based

applications can provide the necessary flexibility and functionality needed by business users.

Dept. of EEE, Delhi Technological University 8

Page 9: Seminar Report Cloud Computing

CLOUD COMPUTING

For this reason, customers require the ability to take preferred functionality from one cloud

application and combine it with another, creating a cloud based component application. This

is still an emerging area of development with some early companies, such as Cast Iron,

providing integration of a wide range of cloud-based applications.

Ultimately, many customers may decide that the private cloud offers more flexibility and

develop new applications themselves.

5.3 Hybrid Clouds To meet the benefits of both approaches, newer execution models have been developed to combine public and private clouds into a unified solution.

Applications with significant legal, regulatory or service level concerns for information can be directed to a private cloud. Other applications with less stringent regulatory or service level requirements can leverage a public cloud infrastructure.

Implementation of a hybrid model requires additional coordination between the private

and public service management system. This typically involves a federated policy

management tool, seamless hybrid integration, federated security, information asset

management, coordinated provisioning control, and unified monitoring systems.

Hybrid clouds combine both public and private cloud models. This is most often seen with

the use of storage clouds to support Web 2.0 applications.

CHAPTER 6

Dept. of EEE, Delhi Technological University 9

Page 10: Seminar Report Cloud Computing

CLOUD COMPUTING

Characteristics of Cloud computing

6.1 Dynamic computing infrastructure

Cloud computing requires a dynamic computing infrastructure. The foundation for the

dynamic infrastructure is a standardized, scalable, and secure physical infrastructure. There

should be levels of redundancy to ensure high levels of availability, but mostly it must be

easy to extend as usage growth demands it, without requiring architecture rework. Next, it

must be virtualized.

A dynamic computing infrastructure is critical to effectively supporting the elastic nature of

service provisioning and de-provisioning as requested by users while maintaining high levels

of reliability and security. The consolidation provided by virtualization, coupled with

provisioning automation, creates a high level of utilization and reuse, ultimately yielding a

very effective use of capital equipment.

6.2 IT service-centric approach

Cloud computing is IT (or business) service-centric. This is in sharp contrast to more

traditional system- or server- centric models. In most cases, users of the cloud generally want

to run some business service or application for a specific, timely purpose; they don’t want to

get bogged down in the system and network administration of the environment. They would

prefer to quick and easy access a dedicated instance of an application or service.

By abstracting away the server-centric view of the infrastructure, system users can easily

access powerful pre-defined computing environments designed specifically around their

service.

The IT Service Centric approach enables user adoption and business agility – the easier and faster a user can perform an administrative task, the more expedient the business moves, reducing costs or driving revenue.

6.3 Self-service based usage modelInteracting with the cloud requires some level of user self-service. Best of breed self-service provides users the ability to upload, build, deploy, schedule, manage, and report on their business services on demand. Self-service cloud offerings must provide easy-to-use, intuitive user interfaces that equip users to productively manage the service delivery lifecycle.

Dept. of EEE, Delhi Technological University 10

Page 11: Seminar Report Cloud Computing

CLOUD COMPUTING

6.4 Minimally or self-managed platformFor an IT team or a service provider to efficiently provide a cloud for its constituents, they must leverage a technology platform that is self-managed. Best-of-breed clouds enable self-management via software automation, leveraging the following capabilities:

1. A provisioning engine for deploying services and tearing them down recovering resources for high levels of reuse

2. Mechanisms for scheduling and reserving resource capacity Capabilities for configuring, managing, and reporting to ensure resources can be allocated and reallocated to multiple groups of users

3. Tools for controlling access to resources and policies for how resources can be used or operations can be performed

All of these capabilities enable business agility while simultaneously enacting critical and necessary administrative control.

6.5 Consumption-based billingFinally, cloud computing is usage-driven. Consumers pay for only what resources they use and therefore are charged or billed on a consumption-based model. Cloud computing platforms must provide mechanisms to capture usage information that enables charge back reporting and integration with billing systems.

Dept. of EEE, Delhi Technological University 11

Page 12: Seminar Report Cloud Computing

CLOUD COMPUTING

CHAPTER 7

Cloud Computing Security Plan

Cloud computing has unique security risks. Security risks, threats, and breaches can come in

so many forms and from so many places that many companies take a comprehensive

approach to security management across IT and the business. The following pointers useful

for creating cloud computing security plan.

In most circumstances, approach cloud security from a risk-management perspective. Be sure to involve your organization’s risk-management specialists in the planning.

The cost of security could be an issue. Be aware of what similar organizations spend on IT security and be prepared to spend a similar amount. It also helps to track time lost due to any kind of attack—as a measurement of cost that you may be able to reduce.

Identity management is key. Give priority to improving identity management if your current capability is poor.

Try to create general awareness of security risks by educating and warning staff members about specific dangers. It is easy to become complacent, especially if you’re using a cloud service provider. However, most security breaches are created inside the network.

Use external IT security consultants to regularly check your company’s security policy and network, as well as those of your cloud service providers.

Determine specific IT security policies for change management and patch management, and make sure that policies are well understood by your staff and your cloud service provider.

Stay abreast of news about IT security breaches in other companies and the causes of those breaches.

Review backup and disaster-recovery systems in light of IT security. Apart from anything else, IT security breaches can require complete application recovery.

Because of the complexity of securing cloud environments, many organizations use hybrid

cloud environments that include public as well as private clouds.

Cloud service providers each have their own way of managing security. Sometimes, the cloud

service provider’s security plan will conflict with your company’s rules. Before you

implement your security plan you need to ensure that it will complement your provider’s

plan.

Dept. of EEE, Delhi Technological University 12

Page 13: Seminar Report Cloud Computing

CLOUD COMPUTING

CHAPTER 8Need for cloud computing

What could we do with 1000 times more data and CPU power? Now that’s one very simple question the answer to which we all know. That’s all it took the interviewers to bewilder the confident job applicants at Google. This is a question of relevance because the amount of data that an application handles is increasing day by day and so is the CPU power that one can harness. There are many answers to this question. With this much CPU power, we couldscale our businesses to 1000 times more users. Right now we are gathering statistics about every user using an application.

With such CPU power at hand, we could monitor every single user click and every user interaction such that we can gather all the statistics about the user. We could improve the recommendation systems of users. We could model better price plan choices. With this CPU power we could simulate the case where we have, say 1, 00,000 users in the system without any glitches. There are lots of other things we could do with so much CPU power and data capabilities. But what is keeping us back. One of the reasons is the large scale architecture which comes with these are difficult to manage.

There may be many different problems with the architecture we have to support. The machines may start failing, the hard drives may crash, the network may go down and many other such hardware problems. The hardware has to be designed such that the architecture is reliable and scalable. This large scale architecture has a very expensive upfront and has high maintenance costs.

It requires different resources like machines, power, cooling, etc. The system also cannot scale as and when needed and so is not easily reconfigurable. The resources are also constrained by the resources. As the applications become large, they become I/O bound. The hard drive access speed becomes a limiting factor. Though the raw CPU power available may not be a factor, the amount of RAM available clearly becomes a factor.

If at all the hardware problems are managed very well, there arises the software problems. There may be bugs in the software using this much of data. The workload also demands two important tasks for two completely different people. The software has to be such that it is bug free and has good data processing algorithms to manage all the data.

The cloud computing works on the cloud - so there are large groups of often low-cost servers with specialized connections to spread the data-processing chores among them. Since there are a lot of low-cost servers connected together, there are large pools of resources available. So these offer almost unlimited computing resources. This makes the availability of resources a lesser issue.

The data of the application can also be stored in the cloud. Storage of data in the cloud has many distinct advantages over other storages. One thing is that data is spread evenly through the cloud in such a way that there are multiple copies of the data and there are ways by which

Dept. of EEE, Delhi Technological University 13

Page 14: Seminar Report Cloud Computing

CLOUD COMPUTING

failure can be detected and the data can be rebalanced on the fly. The I/O operations become simpler in the cloud such that browsing and searching for something in 25GB or more of data becomes simpler in the cloud, which is nearly impossible to do on a desktop.

The cloud computing applications also provide automatic reconfiguration of the resources based on the service level agreements. When we are using applications out of the cloud, to scale the application with respect to the load is a mundane task because the resources have to be gathered and then provided to the users. If the load on the application is such that it is present only for a small amount of time as compared to the time its working out of the load, but occurs frequently, then scaling of the resources becomes tedious.

But when the application is in the cloud, the load can be managed by spreading it to other available nodes by making a copy of the application on to them. This can be reverted once the load goes down. It can be done as and when needed. All these are done automatically such that the resources maintain and manage themselves.

Dept. of EEE, Delhi Technological University 14

Page 15: Seminar Report Cloud Computing

CLOUD COMPUTING

CHAPTER 9Primary Benefits of Cloud Computing

The primary benefits of using cloud computing are as follows:

1. To deliver a future state architecture that captures the promise of Cloud Computing, architects need to understand the primary benefits of Cloud computing.

2. Decoupling and separation of the business service from the infrastructure needed to run it (virtualization).

3. Flexibility to choose multiple vendors that provide reliable and scalable business services, development environments, and infrastructure that can be leveraged out of the box and billed on a metered basis—with no long term contracts.

4. Elastic nature of the infrastructure to rapidly allocate and de-allocate massively scalable resources to business services on a demand basis.

5. Cost allocation flexibility for customers wanting to move CapEx into OpEx.

6. Reduced costs due to operational efficiencies, and more rapid deployment of new business services.

Barriers to Cloud Computing

IT cloud services are still largely in the early adoption phase.  As such, it is no surprise that there’s a long list of issues cloud services suppliers need to address to drive mainstream adoption.  Here’s how our respondents rated nine of the challenges commonly ascribed to the cloud services model.

Dept. of EEE, Delhi Technological University 15

Page 16: Seminar Report Cloud Computing

CLOUD COMPUTING

FIG 9.1

1. Customer Perspective• Data Security: Many customers don’t wish to trust their data to “the cloud”. Data must be locally retained for regulatory reasons.

• Latency: The cloud can be many milliseconds away. Not suitable for real-time applications.

• Application Availability: Cannot switch from existing legacy applications. Equivalent cloud applications do not exist.

2. Vendor Perspective1. Service Level Agreements

Security: with the businesses’ information and critical IT resources outside the firewall, customers worry about their vulnerability to attack.  

Cloud services dependability: The complex web of interdependency that supports cloud services availability and performance – from network availability and performance, to the availability and performance of the cloud service provider’s systems, and beyond, to the performance and availability of the “supply chain” of services that the service provider depends on – cries out for suppliers who can offer greater transparency of interdependencies as well as credible service level assurances. 

Dept. of EEE, Delhi Technological University 16

Page 17: Seminar Report Cloud Computing

CLOUD COMPUTING

2. Business Models

SaaS/PaaS models are challenging.Much lower upfront revenue.

While customers certainly enjoy the economic and operational benefits of the off-the-shelf, standardized nature of many cloud services, this survey shows they nonetheless want greater ability to “fit” cloud services more tightly into the context of their specific business.  Users want to maximize the leverage of their many other critical business systems – in-house legacy systems and, increasingly, externally-sourced cloud services – by being able to integrate across these systems.  ”SaaS 1.0″ systems – that lack standard-based APIs, and are effectively “islands” – are of diminishing value; this is why user should be include the requirement for web services APIs in definition of cloud services.  

3. Customer Lock-in

• Customers want open/standard APIs.

• Need to continuously add value.

Dept. of EEE, Delhi Technological University 17

Page 18: Seminar Report Cloud Computing

CLOUD COMPUTING

CHAPTER 10Conclusion

Cloud Computing is a vast topic and the above report does not give a high level introduction to it. It is certainly not possible in the limited space of a report to do justice to these technologies. What is in store for this technology in the near future? Well, Cloud Computing is leading the industry’s endeavour to bank on this revolutionary technology.

Today, with such cloud-based interconnection seldom in evidence, cloud computing might be more accurately described as "sky computing," with many isolated clouds of services which IT customers must plug into individually. Cloud loud Computing is a technology which took the software and business world by storm. The much deserved hype over it will continue for years to come. Cloud computing is a powerful new abstraction for large scale data processing systems which is scalable, reliable and available. In cloud computing, there are large self-managed server pools available which reduces the overhead and eliminates management headache.

Cloud computing services can also grow and shrink according to need. Cloud computing is particularly valuable to small and medium businesses, where effective and affordable IT tools are critical to helping them become more productive without spending lots of money on in-house resources and technical equipment. Also it is a new emerging architecture needed to expand the Internet to become the computing platform of the future.

Cloud Computing is the next big thing in the arena of computing and storage. There are some concerns about security and its availability. However, different service providers are coming up with various solutions and suggestions in response to customers’ concerns. In any case, cloud is getting bigger and better, and as long as they are available through web services, without capital infrastructure investment at reasonable price, it is for sure going to proliferate and create robust demand in times to come.

Dept. of EEE, Delhi Technological University 18

Page 19: Seminar Report Cloud Computing

CLOUD COMPUTING

CHAPTER 11

Reference

1. http://en.wikipedia.org/wiki/Cloud_computing2. http://www.sunmicrosystems.com3. http://www.ibmsoftwarestrategygroup.com4. http://searchcloudcomputing.techtarget.com5. http://dbpedia.org/page/Cloud_computing6. http://salesforce.com/cloudcomputing

Dept. of EEE, Delhi Technological University 19