introduction of cloud computing by pawan thakur hod cs & it

39
1.1. INTRODUCTION Over the past decade cloud computing has interrupted nearly every part of IT. Sales, marketing, finance and support all of these applications are being reengineered to take advantage of cloud's instant access no download and pay as we go attributes. The term cloud computing is sometimes used to refer to a new paradigm some even speak of a new technology as shown in Fig.1.1. Cloud computing refers to the delivery of computing resources over the Internet. Instead of keeping data on your own hard drive or updating applications we use a service over the Internet at another location to store your information or use its applications. When we store our photos online instead of on our home computer, or use webmail or a social networking site you are using a “Cloud computing” service. If we are an organization and want to use an online invoicing service that service is a “cloud computing” service. At the end of this chapter you will be able to understand : m Introduction m Meaning and Definitions of Cloud Computing m Historical Development m Vision of Cloud Computing m Characteristics of Cloud Computing as per NIST m Cloud Computing Reference Model : An Overview m Cloud Computing Environments m Cloud Services Requirements m Cloud and Dynamic Infrastructure m Advantages and Disadvantages of Cloud Computing m Cloud Adoption and Rudiments LEARNING OBJECTIVES

Upload: pawan-thakur

Post on 29-Jan-2015

133 views

Category:

Education


3 download

DESCRIPTION

Over the past decade cloud computing has interrupted nearly every part of IT. Sales, marketing, finance and support all of these applications are being reengineered to take advantage of cloud's instant access no download and pay as we go attributes. The term cloud computing is sometimes used to refer to a new paradigm some even speak of a new technology.

TRANSCRIPT

Page 1: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-1

1.1. INTRODUCTIONOver the past decade cloud computing has interrupted nearly every part of IT. Sales,marketing, finance and support all of these applications are being reengineered to takeadvantage of cloud's instant access no download and pay as we go attributes. The termcloud computing is sometimes used to refer to a new paradigm some even speak of anew technology as shown in Fig.1.1. Cloud computing refers to the delivery of computingresources over the Internet. Instead of keeping data on your own hard drive or updatingapplications we use a service over the Internet at another location to store your informationor use its applications. When we store our photos online instead of on our home computer,or use webmail or a social networking site you are using a “Cloud computing” service.If we are an organization and want to use an online invoicing service that service is a“cloud computing” service.

At the end of this chapter you will be able to understand :m Introductionm Meaning and Definitions of Cloud Computingm Historical Developmentm Vision of Cloud Computingm Characteristics of Cloud Computing as per NISTm Cloud Computing Reference Model : An Overviewm Cloud Computing Environmentsm Cloud Services Requirementsm Cloud and Dynamic Infrastructurem Advantages and Disadvantages of Cloud Computingm Cloud Adoption and Rudiments

LEARNING OBJECTIVES

Page 2: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-2 INTRODUCTION TO CLOUD COMPUTING

Fig. 1.1. Cloud Computing.

Examples of cloud services include online file storage, social networking sites, webmail,and online business applications. The cloud computing model allows access to informationand computer resources from anywhere that a network connection is available. Thecloud computing provides a shared pool of resources including data storage space,networks, computer processing power and specialized corporate and user applications.Many companies are delivering services from the cloud. Some notable examples as of2013 include the following :

1. Google. It has a private cloud that it uses for delivering many different services to itsusers including email access, document applications, text translations, maps, web analyticsand much more.

2. Microsoft. It has Microsoft® Share-point® online service that allows for contentand business intelligence tools to be moved into the cloud and Microsoft currently makesits office applications available in a cloud.

3. Salesforce.com. It runs its application set for its customers in a cloud, and it'sForce.com and Vmforce.com products provide developers with platforms to buildcustomized cloud services.

According to Gartner, the cloud is changing the way applications are designed, testedand deployed resulting in a significant shift in application development priorities. Cost isa major driver, but so are agility, flexibility and speed to deploy new applications. Thefirm estimates that 90% of large enterprises and government agencies will use someaspect of cloud computing by 2015. But, what is cloud computing? The following chapterdescribes the cloud computing characteristics, services models, deployment models,benefits and challenges.

Page 3: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-3

1.2 MEANING AND DEFINITIONS OF CLOUDCOMPUTING

The cloud computing is the delivery of computing services over the Internet. Cloudservices allow individuals and businesses to use software and hardware that are managedby third parties at remote locations.

Fig. 1.2. Cloud Computing Container.

The cloud computing is an everyday expression used to describe a variety of differentcomputing concepts that involve a large number of computers that are connected througha real-time communication network typically the Internet. A web server typically hasthree tiers to it as shown in Fig.1.2. The physical infrastructure, the operating systemplatform, and the web application software being run. A cloud container may containone, two or all of these layers.

“Cloud computing is a model for enabling convenient, on-demandnetwork access to a shared pool of configurable computing resources(e.g., networks, servers, storage, applications, and services) that can berapidly provisioned and released with minimal management effort orservice provider interaction. This cloud model promotes availability andis composed of five essential characteristics, three service models, andfour deployment models”.

— National Institute of Standards and Technology (NIST)

The National Institute for Standards and Technology (NIST), Information TechnologyLaboratory offers above definition of Cloud Computing. It’s as good as any.

Page 4: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-4 INTRODUCTION TO CLOUD COMPUTING

“Cloud computing is the dynamic delivery of information technologyresources and capabilities as a service over the Internet. It is a style ofcomputing in which dynamically scalable and often virualized resourcesare provided as a service over the Internet”.

“Cloud computing is the realization of utility computing for the masses,where traditional IT services are now virtualized and provided viamodular reference architectures that are created by the providers andvendors rather than to end users”.

— Chris Poelkar

For the simplest explanation for cloud computing is describing it as, ‘Internet centricsoftware’. This new cloud computing software model is a shift from the traditionalsingle tenant approach to software development to that of a scalable, multi-tenant, multi-platform, multi-network, and global. This could be as simple as your web based emailservice or as complex as a globally distributed load balanced content delivery environment.

1.3. HISTORICAL DEVELOPMENTComputing history can be traced back to the invention of the first calculating machineAbacus is considered to be the first computer and was invented by the Chinese about5000 years ago. The basic purpose of the device is to make calculations. Charles Babbageinvented the first mechanical computer during the period of 1830 to 1850. This computerperformed basic arithmetic functions. Babbage is known as the father of modern digitalcomputers.

The Mark-I Computer was the first fully automatic calculating machine. It was designedby Howard A. Aikne it collaboration with IBM. This machine was proved to be extremelyreliable. It was capable of performing five basic arithmetic operations, addition,subtractions, multiplication, and division and table reference. The electronic machinewas developed by Atanasoff to solve certain mathematical equations. It used 45 vaccumtubes for internal logical and capacitors for storage. Electronic Numerical Integratorand Calculator (ENIAC) was the first electronic computer. It was a bulky machineconsisting of 18000 vaccum tubes. It was based on decimal arithmetic. It was fasterthan mark-I computer it could store and manipulate very small amount of information.Electronic Discrete Variable automatic Computer (EDVAC) was designed on storedprogram concept Dr. John Von Neumann introduced it. His basic idea of stored programis that a sequence of instructions as well as data can be stored in the memory of computer.Neumann got a share of credit for introducing the ideas of storing both instructions anddata in the binary form (0 &1) (in 1950 Cambridge). The Britisher’s developed EDSAC.The machine was developed by a group of scientists headed by Professor MauriceWilkes at the Cambridge University. This machine accomplished addition operation is1500 microseconds. The UNIVAC was the first digital computer. UNIVAC machineswere produced the first of which was installed in the Census Bureau in 1951 and was

Page 5: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-5

used continuously for 10 years. The IBM Corporation introduced the FOI CommercialComputer. The improve models of UNIVAC were introduced.

In 1957 IBM introduced the 704 as the first mass produced mainframe computer withfloating-point arithmetic. Eventually, in 1964 the IBM System/360 followed. The highlightof this product family was that peripheral components were exchangeable and that thesoftware was executable on all computers of this product family. The development ofthe Personal Computer (PC) began as recently as in the 1970, with the construction ofthe first microprocessor 4004 in 1969 and the later 8008 in 1971 by Intel. As late as 1981IBM entered this market segment and coined the name Personal Computer (PC).Microsoft has developed the operating system for the IBM-PC, which soon became thestandard platform, with which many PC manufacturers where compatible with. Sincethen the development and diffusion of PC’s gained pace, significant performance leapscould be achieved, graphical user interfaces were established and the continuingminiaturization eventually lead to the development of laptops and mobile devices.

Another important milestone was the development of the Internet. This can be tracedback to a research project at the Advanced Research Projects Agency (ARPA). Acommunication system, which would stay available if one of its nodes would be broken,was developed in 1969, on behalf of the US ministry of defense. Eventually the ARPAnetwas developed out of this project. In 1981 around 200 institutions were connected to thisnetwork. In 1983 the net’s protocol was switched to TCP/IP, which made it possible toconnect whole subnets to the ARPAnet. This network of networks was soon calledInternet. While at the beginning it was primarily used for military and scientific purposes,its opening and commercialization began in 1988 with services like mail, telnet and Usenet.

However, the Internet achieved its real breakthrough with Tim Berners-Lee’s inventionof the World Wide Web in 1989. Tim Berners-Lee conceptualized an informationmanagement system for the European Organization for Nuclear Research (CERN)which was based on Hypertext, a network structure, where knowledge entities arereferenced through logical references so called hyperlinks. Traditional hyper textualstructures are for example content tables or cross references. The modern hypertextconcept can be traced back to Vannevar Bush (1945). With the increasing diffusion ofthe web browser Mosaic, the World Wide Web eventually gained great popularity.

Further increasing bandwidths and technologies like Java, PHP or Ajax made it possibleto develop more and more elaborate, interactive websites. Due to this development, wecan today find many multimedia websites, online shops and numerous applications thatare deployed in the Internet. Some examples are route planners, communication platforms,social networks and even whole office applications like word processors or spread sheetapplications. This deployment concept, usually referred to Software-as-a-Service gainedpopularity around the year 2000. Similar deployment concepts were developed for thedeployment of hardware resources, especially computing power and storage. Primarilyin academia Grid Computing got established as such a concept already at the beginningof the 1990.

Page 6: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-6 INTRODUCTION TO CLOUD COMPUTING

“The term Cloud Computing was coined in 2007 typically refereeing toa joint hardware and software deployment concept. First researchinitiatives were started by Google and IBM, in cooperation with sixAmerican Universities. When looking back at the operating models of athe 60 and 70, one realizes that with cloud computing an old trend iscoming back : centralized, shared computing resources. They so calledtime-sharing concept, where idle CPU times where dynamicallydistributed to several users, can be traced back to John McCarthy in1957”

In the early days of data processing, computers as well as their operation were expensive.Therefore the operators were looking for ways to utilize them in the best way possible.Thus, companies with large mainframe computers offered their computing resources toexternal users. This eventually led to the foundation of independent service providerswhich specialized on the deployment of computing resources. Companies that offeredtime-sharing-systems were for example General Electric’s Information Service Company(GEISCO), IBM’s subsidiary The Service Bureau Corporation or Tymshare Inc. Usersof these time-sharing services could access the mainframe computer through dialupconnections, using terminals that were simple input/output devices.

The mainframe computers typically provided a complete working environment, includingdifferent software packages, programming environments, file storage and printing services.Pricing models were commonly based on a fixed rental fee for the terminal and variablecosts for connection time, consumed CPU time and storage usage. With the increasingdiffusion of more and more powerful PCs data processing and data storage shifted tothose local devices. In the 1990, the next trend could be observed, back again towards acentralization of information technology, especially a centralization of data storage. Thistrend appears to be continuing with cloud computing. The operators of today’s datacenters,such as Amazon or Google, are confronted with a similar situation as it has been in the1960 and 1970. They as well strive to utilize their massive resources in a better way.Topical approaches, such as virtualization are efficient means to grant third party usersto dynamically access their infrastructure and harness computing power and storagecapacities. Platforms that were developed for cloud computing enable the developmentof applications that are deployed on the hardware of those cloud computing infrastructureproviders.

1.4. VISION OF CLOUD COMPUTINGWith the advancement of modern society basic essential services and utilities are commonlyprovided such that everyone can easily obtain access to them. Today utility services,such as water, electricity, gas, and telephony are deemed necessary for fulfilling dailylife routines. These utility services are accessed so frequently that they need to beavailable whenever the consumer requires them at any time. Consumers are then ableto pay service providers based on their usage of these utility services.

Page 7: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-7

“Consumers will be able to access applications and data from a “Cloud”anywhere in the world on demand. The consumers are assured that theCloud infrastructure is very robust and will always be available at anytime. Computing services need to be highly reliable, scalable, andautonomic to support ubiquitous access, dynamic discovery andcomputability.”

In 1969, Leonard Kleinrock, one of the chief scientists of the original Advanced ResearchProjects Agency Network (ARPANET) project which seeded the Internet said: As ofnow, computer networks are still in their infancy, but as they grow up and becomesophisticated, we will probably see the spread of computer utilities which, like presentelectric and telephone utilities, will service individual homes and offices across thecountry”. The vision of cloud computing are as shown in Fig.1.3.

Fig. 1.3. Vision of Cloud Computing.

1. Service provisioning model. This vision of the computing utility based on theservice provisioning model anticipates the massive transformation of the entire computingindustry in the 21st century whereby computing services will be readily available ondemand like other utility services available in today’s society.

Similarly, computing service users or consumers need to pay providers only when theyaccess computing services. In addition, consumers no longer need to invest heavily orencounter difficulties in building and maintaining complex IT infrastructure. Hence,software practitioners are facing numerous new challenges toward creating softwarefor millions of consumers to use as a service, rather than to run on their individualcomputers.

2. Computer utilities. The creation of the Internet has marked the foremost milestonetowards achieving this grand 21st century vision of ‘computer utilities’ by forming aworldwide system of computer networks that enables individual computers to

Page 8: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-8 INTRODUCTION TO CLOUD COMPUTING

communicate with any other computers located elsewhere in the world. Thisinternetworking of standalone computers provide potential of utilizing endless amount ofdistributed computing resources owned by various owners. As such, over the recentyears, new computing paradigms have been proposed and adopted to edge closer towardachieving this grand vision. Applications making use of these utility-oriented computingsystems emerge simply as catalysts or market makers, which brings buyers and sellerstogether. This creates several trillion dollars worth of the utility/pervasive computingindustry as noted by Sun Microsystems co-founder Bill Joy.

3. Grid computing. Grid computing enables the sharing, selection, and aggregation of awide variety of physically distributed resources including supercomputers, storage systems,data sources, and specialized devices owned by different organizations for solving largescale resource intensive problems in science, engineering, and commerce. Inspired bythe electrical power Grid’s pervasiveness, ease of use, and reliability, the motivation ofGrid computing was initially driven by large-scale, resources (computational and data)-intensive scientific applications that required more resources than a single computer(PC, workstation, supercomputer) could have provided in a single administrative domain.Due to its potential to make impact on the 21st century as much as the electric powerGrid did on the 20th century, Grid computing has been hailed as the next revolution afterthe Internet and the World Wide Web.

4. Peer-to-Peer computing. The Peer-to-Peer (P2P) computing allows peer nodes(computers) to share content directly with one another in a decentralized manner. Inpure P2P computing, there is no notion of clients or servers. Since all peer nodes areequal and concurrently be both clients and servers. The goals of P2P computing includecost sharing or reduction, resource aggregation and interoperability, improved scalabilityand reliability, increased autonomy, anonymity or privacy, dynamism, and ad-hoccommunication and collaboration.

5. Service computing. A service computing focuses on the linkage between businessprocesses and IT services so that business processes can be seamlessly automatedusing IT services. Examples of services computing technologies include Service-OrientedArchitecture (SOA) and Web Services. The SOA facilitates interoperable servicesbetween distributed systems to communicate and exchange data with one another, thusproviding a uniform means for service users and providers to discover and offer servicesrespectively. The Web Services provides the capability for self-contained businessfunctions to operate over the Internet.

6. Market-oriented computing. It views computing resources in economic termssuch that resource users will need to pay resource providers for utilizing the computingresources. Therefore, it is able to provide benefits, such as offering incentive for resourceproviders to contribute their resources for others to use and profit from it, regulating thesupply and demand of computing resources at market equilibrium, offering incentive forresource users to back off when necessary, removing the need for a central coordinator(during the negotiation between the user and provider for establishing quality of service

Page 9: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-9

expectations and service pricing) and enabling both users and providers to makeindependent decisions to maximize their utility and profit respectively.

7. Virtualized compute and storage technologies. Today the latest paradigm toemerge is that of Cloud computing which promises reliable services delivered throughnext-generation data centers that are built on virtualized compute and storage technologies.

1.5. CHARACTERISTICS OF CLOUD COMPUTINGAS PER NIST

Cloud computing has a variety of characteristics, with the main ones being described byNIST are as following as shown in Fig. 1.4 :

“Cloud computing allows for the sharing and scalable deployment ofservices as needed from almost any location and for which the customercan be billed based on actual usage.”

Fig. 1.4. Characteristics of Cloud Computing as per NIST.

1. On-demand self-service. A consumer can used provision computing capabilities,such as server time and network storage, as needed automatically without requiringhuman interaction with each service provider.

2. Broad network access. The capabilities are available over the network and accessedthrough standard mechanisms that promote use by heterogeneous thin or thick clientplatforms e.g., mobile phones, tablets, laptops and workstations.

3. Resource pooling. The provider's computing resources are pooled to serve multipleconsumers using a multi-tenant model, with different physical and virtual resourcesdynamically assigned and reassigned according to consumer demand. There is a senseof location independence in that the customer generally has no control or knowledgeover the exact location of the provided resources but may be able to specify location ata higher level of abstraction e.g., country, state or datacenter. Examples of resourcesinclude storage, processing, memory, and network bandwidth.

Page 10: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-10 INTRODUCTION TO CLOUD COMPUTING

4. Rapid elasticity. The capabilities can be elastically provisioned and released, insome cases automatically to scale rapidly outward and inward commensurate with demand.To the consumer, the capabilities available for provisioning often appear to be unlimitedand can be appropriated in any quantity at any time.

5. Measured service. Cloud systems automatically control and optimize resource useby leveraging a metering capability at some level of abstraction appropriate to the typeof service e.g., storage, processing, bandwidth, and active user accounts. Resourceusage can be monitored, controlled, and reported, providing transparency for both theprovider and consumer of the utilized service.

1.5.1. Benefits of Cloud ComputingThe following are some of the possible benefits for those who offer cloud computing-based services and applications:

1. Cost Savings. The companies can reduce their capital expenditures and useoperational expenditures.

2. Computing capabilities. This is a lower barrier to entry and also requires fewer in-house IT resources to provide system support.

3. Scalability/Flexibility. The companies can start with a small deployment and growto a large deployment fairly rapidly, and then scale back if necessary. Also, the flexibilityof cloud computing allows companies to use extra resources at peak times, enablingthem to satisfy consumer demands.

4. Reliability. Services using multiple redundant sites can support business continuityand disaster recovery.

5. Maintenance. Cloud service providers do the system maintenance, and access isthrough APIs that do not require application installations onto PCs, thus further reducingmaintenance requirements.

6. Mobile accessible. Mobile workers have increased productivity due to systemsaccessible in an infrastructure available from anywhere.

1.5.2. Challenges of Cloud ComputingThe Fig. 1.5 shown some of the notable challenges associated with cloud computing,and although some of these may cause a slowdown when delivering more services inthe cloud, most also can provide opportunities, if resolved with due care and attention inthe planning stages.

1. Security and privacy. Perhaps two of the more “hot button” issues surroundingcloud computing relate to storing and securing data and monitoring the use of the cloudby the service providers. These issues are generally attributed to slowing the deploymentof cloud services. These challenges can be addressed for example by storing theinformation internal to the organization, but allowing it to be used in the cloud. For this to

Page 11: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-11

occur though the security mechanisms between organization and the cloud need to berobust and a Hybrid cloud could support such a deployment.

Fig. 1.5. Challenges of Cloud Computing.

2. Lack of standards. Clouds have documented interfaces; however, no standards areassociated with these and thus it is unlikely that most clouds will be interoperable. Theopen grid forum is developing an open cloud computing Interface to resolve this issueand the Open Cloud Consortium is working on cloud computing standards and practices.The findings of these groups will need to mature, but it is not known whether they willaddress the needs of the people deploying the services and the specific interfaces theseservices need. However keeping up to date on the latest standards as they evolve willallow them to be leveraged if applicable.

3. Continuously evolving. User requirements are continuously evolving, as are therequirements for interfaces, networking and storage. This means that a “cloud” especiallya public one does not remain static and is also continuously evolving.

4. Compliance concerns. There are many compliance issues affecting cloud computing,based on the type of data and application for which the cloud is being used. As withsecurity and privacy mentioned previously these typically result in hybrid cloud deploymentwith one cloud storing the data internal to the organization.

1.6. CLOUD COMPUTING REFERENCE MODEL :AN OVERVIEW

An overview of the NIST cloud computing reference architecture is which identifies themajor performer/Actor their activities and functions of cloud computing as shown inFig.1.6.

Page 12: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-12 INTRODUCTION TO CLOUD COMPUTING

Fig. 1.6. The Conceptual Reference Model.

“The cloud computing reference model represents a generic high-levelarchitecture and is intended to facilitate the understanding of therequirements, uses, characteristics and standards of cloud computing.”

This section provides only overview of conceptual reference model the detailed study ofall the component is described in Chapter 3. As shown in Fig.1.6 the NIST cloud computingreference architecture defines five major actors as shown in Fig.1.7. Each performer isan entity may be a person or an organization that participates in a transaction or processand performs tasks in cloud computing.

Fig. 1.7. Performers of NIST Cloud Computing Reference Architecture.

The briefly lists of the actors / performers defined in the NIST cloud computing referencearchitecture in Table 1.1. The general activities of the actors are discussed in the remainderof this section, while the details of the architectural elements are discussed later.

Page 13: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-13

Table 1.1. The Actors/performers in Cloud Computing.

Actor Definition

Cloud Consumer A person or organization that maintains a business relationshipwith, and uses service from, cloud providers.

Cloud Provider A person, organization or entity responsible for making anavailable service to interested parties.

Cloud Auditor A party that can conduct independent assessment of cloudservices, information system operations, performance andsecurity of the cloud implementation.

Cloud Broker An entity that manages the use, performance and delivery ofcloud services, and negotiates relationship between cloudproviders and cloud consumers.

Cloud Carrier An intermediary that provides connectivity and transport of cloudservices from cloud providers to cloud consumers.

1. Cloud consumer. The cloud consumer is the most important stakeholder for thecloud computing service. A cloud consumer represents a person or organization thatmaintains a business relationship with and uses the service from a cloud provider. Acloud consumer browses the service catalog from a cloud provider, requests theappropriate service, sets up service contracts with the cloud provider and uses the service.The cloud consumer may be billed for the service provisioned, and needs to arrangepayments accordingly.

2. Cloud provider. A cloud provider is a person, an organization which is the entityresponsible for making a service available to interested parties. A cloud provider acquiresand manages the computing infrastructure required for providing the services, runs thecloud software that provides the services, and makes arrangement to deliver the cloudservices to the cloud consumers through network access. For Software as a Service,the cloud provider deploys, configures, maintains and updates the operation of the softwareapplications on a cloud infrastructure so that the services are provisioned at the expectedservice levels to cloud consumers.

3. Cloud auditor. A cloud auditor is a party that can perform an independent examinationof cloud service controls with the intent to express an opinion thereon. Audits areperformed to verify conformance to standards through review of objective evidence. Acloud auditor can evaluate the services provided by a cloud provider in terms of securitycontrols, privacy impact, performance etc.

4. Cloud broker. As cloud computing evolves the integration of cloud services can betoo complex for cloud consumers to manage. A cloud consumer may request cloudservices from a cloud broker, instead of contacting a cloud provider directly. A cloudbroker is an entity that manages the use, performance and delivery of cloud services andnegotiates relationships between cloud providers and cloud consumers.

Page 14: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-14 INTRODUCTION TO CLOUD COMPUTING

5. Cloud carrier. A cloud carrier acts as an intermediary that provides connectivity andtransport of cloud services between cloud consumers and cloud providers. A cloud carriersprovide access to consumers through network, telecommunication and other accessdevices. For example, cloud consumers can obtain cloud services through network accessdevices, such as computers, laptops, mobile phones, mobile Internet devices etc.

The interactions among the actors illustrates in Fig.1.8. A cloud consumer may requestcloud services from a cloud provider directly or via a cloud broker. A cloud auditorconducts independent audits and may contact the others to collect necessary information.The details will be discussed in the following sections and presented in increasing levelof details in successive diagrams.

Fig. 1.8. Interaction Between the Actor in Cloud Computing.

The example of usage scenario performers/actors of NIST Cloud Computing referencearchitecture is as following:

(i) Usage scenario of cloud brokers. A cloud consumer may request service from acloud broker instead of contacting a cloud provider directly. The cloud broker may createa new service by combining multiple services or by enhancing an existing service asshown in Fig.1.9. In this example, the actual cloud providers are invisible to the cloudconsumer and the cloud consumer interacts directly with the cloud broker.

Fig. 1.9. Usage Scenario of Cloud Brokers.

(ii) Usage scenario for cloud carriers. Cloud carriers provide the connectivity andtransport of cloud services from cloud providers to cloud consumers. As illustrated inFig.1.10 a cloud provider participates in and arranges for two unique service levelagreements (SLAs) one with a cloud carrier (e.g. SLA2) and one with a cloud consumere.g. SLA1. A cloud provider arranges service level agreements (SLAs) with a cloudcarrier and may request dedicated and encrypted connections to ensure the cloud servicesare consumed at a consistent level according to the contractual obligations with the

Page 15: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-15

cloud consumers. In this case the provider may specify its requirements on capability,flexibility and functionality in SLA2 in order to provide essential requirements in SLA1.

Fig. 1.10. Usage Scenario for Cloud Carriers.

(iii) Usage scenario for cloud auditors. For a cloud service, a cloud auditor conductsindependent assessments of the operation and security of the cloud service implementationas shown in Fig.1.11. The audit may involve interactions with both the cloud consumerand the cloud provider.

Fig. 1.11. Usage Scenario for Cloud Auditors.

1.7. CLOUD COMPUTING ENVIRONMENTSThe cloud computing aims to power the next generation data centers and enablesapplication service providers to lease data center capabilities for deploying applicationsdepending on user QoS (Quality of Service) requirements as shown in Fig. 1.12.

“Cloud applications environment have different: composition,configuration and deployment requirements.”

Fig. 1.12. Cloud Applications Environment.

Page 16: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-16 INTRODUCTION TO CLOUD COMPUTING

Quantifying the performance of resource allocation policies and application schedulingalgorithms at finer details in cloud computing environments for different application andservice models under:

(i) Varying load

(ii) Energy performance power consumption and heat dissipation

(iii) System size is a challenging problem to tackle.

To simplify this process, an extensible simulation toolkit that enables modeling andsimulation of cloud computing environments are used. The toolkit supports modeling andcreation of one or more virtual machines (VMs) on a simulated node of a data center,jobs and their mapping to suitable VMs. It also allows simulation of multiple data centersto enable a study on federation and associated policies for migration of VMs for reliabilityand automatic scaling of applications.

The cloud has also begun to impact the tools and support solutions that drive IT. Thisincludes performance management, backup and recovery, configuration management,helpdesk, datacenter automation and release management. The agility afforded by on-demand services is further penetrating the developer space.

Yet despite this transformation, there has been little disruption to the integrateddevelopment environment (IDE) world. The world’s nearly 15 million developers, teamsand organizations continue to use desktop IDEs as their workbench of choice. Why hasnot the development environment moved to the cloud along with just about every otherapplication ?

What is wrong with desktop development ?Desktop development environments are becoming outdated, failing more often and causingproductivity issues for developers.

1. Complicated configuration management. The substantial configurationmanagement process for a developer’s workspace turns developers into part-time systemadministrators, responsible for their own mini-data center running entirely on the desktop.This is time consuming, error prone and challenging to automate.

Many developers have multiple computers and are forced to repeat these tasks on eachmachine. There is no way to synchronize the configurations of components across differentmachines, and each machine requires similar hardware and operating systems to operatethe components identically.

2. Decreased productivity. Many IDEs are memory and disk hogs, with significantboot times. They are so resource-hungry they can starve other applications, such as theWeb browser. The net effect is a less productive developer due to a slower machine.

3. Limited accessibility. Desktop developer workspaces are not accessible via mobiledevices. Developers who need remote access have to resort to complex and slow solutionssuch as GotoMyPC if their firewall allows it.

Page 17: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-17

4. Poor collaboration. These days most developers work as part of a team, socommunication and collaboration are critical. But desktop IDEs must outsourcecollaboration to communication systems outside the developer’s workflow, forcingdevelopers to continuously switch between developing within the IDE and communicatingwith their team via other means.

The solution is cloud development :

1. Development workspace into the cloud. To solve these problems requires movingthe entire development workspace into the cloud. The developer’s environment is acombination of the IDE the local build system, the local runtime to test and debug thelocally edited code, the connections between these components and the their dependencieswith tools such as Continuous Integration or central services such as Web Services,specialized data stores, legacy applications or partner-provided services.

2. Centralized. The cloud-based workspace is centralized, making it easy to share.Developers can invite others into their workspace to co-edit, co-build, or co-debug.Developers can communicate with one another in the workspace itself changing theentire nature of pair programming, code reviews and classroom teaching.

3. System efficiency. The cloud can offer improvements in system efficiency anddensity, giving each individual workspace a configurable slice of the available memoryand compute resources.

In the end of course there is more work to do and we are far from tapping into theendless possibilities the cloud computing offers developers. But the benefits are alreadyclear.

1.8. CLOUD SERVICES REQUIREMENTSThe cloud computing consists of hardware and software resources made available onthe Internet as managed third-party services.

“Cloud services requirements typically provide access to advancedsoftware applications and high-end networks of server computers. Serviceproviders create cloud computing systems to serve common business orresearch needs.”

Examples of cloud computing services include :

1. Virtual IT. It configures and utilizes remote third-party servers as extensions to acompany’s local IT network.

2. Software. They utilizes commercial software applications or develop and remotelyhost custom built applications.

3. Network storage. The back up or archive data across the Internet to a providerwithout needing to know the physical location of storage.

Page 18: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-18 INTRODUCTION TO CLOUD COMPUTING

Cloud computing systems all generally are designed for scalability to support large numbersof customers and surges in demand. Service providers are responsible for installing andmaintaining core technology within the cloud. Some customers prefer this model becauseit limits their own manageability burden. However, customers cannot directly controlsystem stability in this model and are highly dependent on the provider instead.

Cloud computing systems are normally designed to closely track all system resources,which enables providers to charge customers according to the resources each consumes.Some customers will prefer this so-called metered billing approach to save money, whileothers will prefer a flat-rate subscription to ensure predictable monthly or yearly costs.Using a cloud computing environment generally requires you to send data over theInternet and store it on a third-party system. The privacy and security risks associatedwith this model must be weighed against alternatives.

Cloud Computing is in its simplest form an image for the Internet and the process ofdelivering applications and services through it. Cloud computing within this image thereare a number of services that are delivered via the Internet as shown in Fig.1.13.

“The cloud service models are Software as a Service (SaaS), Platformas a Service' (PaaS) and Infrastructure as a Service (IaaS).”

Fig. 1.13. Cloud Service Models.

1. Software as a Service (SaaS). The capability provided to the consumer is to use theprovider’s applications running on a cloud infrastructure.

2. Platform as a Service (PaaS). The capability provided to the consumer is to deployonto the cloud infrastructure consumer-created or acquired applications created usingprogramming languages, libraries, services, and tools supported by the provider.

3. Infrastructure as a Service (IaaS). The capability provided to the consumer is toprovision processing, storage, networks, and other fundamental computing resourceswhere the consumer is able to deploy and run arbitrary software, which can includeoperating systems and applications.

Page 19: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-19

1.9. CLOUD AND DYNAMIC INFRASTRUCTURECloud computing represents not a revolution but an evolution of existing enterprisecomputing architectures dating back to the first instance of networked computing. Thedifference is that today there are vast advances in virtualization in nearly every aspectof the data center. There has also been an emergence of a dynamic understanding andneed to control what, how, and when the cloud provides services to the consumers ofthose services.

“This cloud dynamic paradigm must be able to intercept applicationand data traffic, interpret the current context, and instruct the cloudinfrastructure on how to most efficiently deliver the request. Theserequirements include scalability, adaptability, extensibility, andmanageability.”

Now the question that remains however what is does this new dynamic computingarchitecture look like and what is required above and beyond the standard tools we havetoday to qualify as a “cloud”? An important strategic consideration is the integration ofall the pieces of the infrastructure to create the cloud.

This includes everything from the bare metal to the users to all of the elements in between.In addition there are different ways to view the interaction of various operations withinthe architecture depending on your role. The cloud computing architecture is built uponseveral functional component blocks. For example compute resources or deploymentenvironments which are organized into specific layers of a pyramid as shown in theFig.1.14. The width of these layers represents the depth of technical expertise requiredto build or deploy that layer.

Fig. 1.14. Cloud architecture.

Page 20: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-20 INTRODUCTION TO CLOUD COMPUTING

The pyramid layers are in the notions of Infrastructure as a Service (IaaS), Platform asa Service (PaaS), and Software as a Service (SaaS). At the apex of the pyramid areusers accessing the applications in the center is a dynamic control plane that traversesall others and provides real-time connectivity, information coordination, and flow controlbetween the layers. In order to maximize the value of cloud architecture each componentmust exist in some state or another. For example dynamic control plane elements are arequirement at every layer of the cloud architecture in order for cloud environments tobe operationally efficient and on demand.

1.9.1. Designing the CloudIn cloud computing all computing resources that we get are services, such as Infrastructureas a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS) etc.Design for cloud can also be defined as breaking the application related components insuch a way that it can be delivered as service, that is what we see in the Fig.1.15.Before architecting an application we should analyze the term Service OrientedArchitecture (SOA).

“Designing for cloud is really talks about effectively utilizing computingresources through Internet.”

Fig. 1.15. Designing a Cloud.

If we do not know how to use SOA effectively we end up in loss wasting more moneyfor the computing resources which are not effectively used, also we face problems inscaling up and down. If we design your application architecture, more relied on SOAthen it proves to be the good design for cloud, but also we should consider about goodcoding techniques, otherwise we screw up all things.

Page 21: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-21

1.9.2. Dynamic Control PlaneTraditional traffic and computing systems often break processing into two components:the data plane and the control plane.

1. Data plane. The data plane is concerned with the basic process of getting data be itinput from a system requests from users and returning data output, files, or responses.The data plane is the basic connectivity that handles traffic flow to and from destinations.2. Control plane. The control plane is more concerned with managing that data inresponse to context and policy. It changes the “how” of the data plane.

The core idea of cloud architecture is to connect users who might be mobile and movingbetween LANs, WLANs, Internet connections and services to the applications theyconsume. Which can also move between cloud centers based on different needs of thebusiness? As hardware resources and servers are decommissioned, as applications aremoved from development to production, as entire applications are moved from the internaldata center to a cloud provider the cloud architecture requires a dynamic control planethat monitors the data and ensures that it is constantly connected in the best possiblemanner. The dynamic control pane must be able to Intercept traffic as it traverses thecloud, Interpret the data, and instruct the cloud architecture on how to efficiently connectthe user to the appropriate application instance.

(a) Intercept traffic. The dynamic control plane, must be in a position to have visibilityto all traffic between the user and the application and across the entire cloudplatform. Without the ability to intercept traffic and data requests, the dynamiccontrol plane cannot appropriately do any of the other things it needs to do. Notonly must it be able to see the actual flow it must also be able to intercept themetadata or context of the traffic. The dynamic control plane must have thevisibility into the data plane and all components that operate within the data plane.

(b) Interpret the data. The information about data and application flow is not enough.The dynamic control plane must have the ability to understand the elements ofcontext in relation to the individual request, business policy, and other applicationand cloud traffic. The dynamic control plane must constantly evaluate the contextand policy to make intelligent decisions at any given movement.

(c) Instruct the cloud architecture. Once the dynamic control plane has all theavailable information and analyzed the context it must instruct the architecture onhow best to connect the two endpoints. The dynamic control plane must alsocommunicate with the infrastructure the data plane to change the current deliverymodel to meet the needs identified. This might require sending requests to the anew instance of the application or to a new data center, changing compressionand encryption settings, or even instructing other components in the architectureto create or destroy resources necessary to delivering that application or data. Itmight also be necessary for the dynamic control plane to simply deny accessbased on the policies and context at any given movement.

Page 22: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-22 INTRODUCTION TO CLOUD COMPUTING

1.9.3. Cloud Architecture: Utility Computing — IaaSBuilt from core components that include compute resources and management resources,the base layer of the cloud architecture requires the most technical competence to buildand deploy. This is the very foundation upon which a cloud is built is made up of thecomponents most often supplied by vendors who provide IaaS solutions to their customersas shown in Fig.1.16.

Fig. 1.16. IaaS and cloud architecture.

“Infrastructure as a Service (IaaS) is a cloud computing model basedon the premise that the entire infrastructure is deployed in an on-demandmodel. This almost always takes the form of a virtualized infrastructureand infrastructure services that enables the customer to deploy virtualmachines as components that are managed through a console.”

The physical resources servers, storage, and network are maintained by the cloud providerwhile the infrastructure deployed on top of those components is managed by the user. Inthis layer of the architecture each component is responsible for providing actionabledata to the other components and performing specific tasks to successfully execute anauto-provisioning or decommissioning scenario. IaaS is often considered utility computingbecause it treats compute resources much like utilities such as electricity are treated.When the demand for capacity increases, more computing resources are provided bythe provider. As demand for capacity decreases the amount of computing resourcesavailable decreases appropriately. This enables the on-demand as well as the “pay-per-use” properties of cloud architecture. There the two component of IaaS :

Page 23: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-23

(i) Compute resources. Compute resources are one of the most basic components ofthe cloud bare metal resources such as CPU, memory, and disk that ultimately powerapplications built within the cloud. This might be a hosting service provider with hundredsor thousands of installed server systems waiting to be used by subscribers.

(ii) Manage resources. Manage resources are the components required to turn baremetal into usable server platforms with the appropriate CPU, memory, and disk resourcesnecessary to support the applications that will be built upon them. Manage resources arealso responsible for continuing to monitor the resource needs and ensuring that theapplication receives all the compute resources it needs and moving the application orfinding additional resources. This component is most often synonymous with virtualmachine management or software provisioning systems which can take the bare metaland apply operating systems, patches, and application logic and apply higher-level networkconnectivity such as IP addressing and more.

1.9.4. Cloud Architecture: Framework Computing — PaaSMany applications are built on software platforms that run on top of infrastructure services.These platforms can be environments such as Oracle or ASP.NET and provide aconvenient way for businesses to build custom applications without worrying about thedetails that lay beneath the platforms. While many platforms are based on standards forexample Java EE others are proprietary in nature including Google AppEngine andarchitecture frameworks developed and deployed by enterprise architects.

“Platform as a Service (PaaS) is a cloud computing model in which aspecific development and deployment platform for example, Java EE,IBM WebSphere, Oracle, Google Apps, .NET, BizTalk is the basis fordeployment. These clouds are proprietary in the sense that onlyapplications developed for the specific platform can be deployed in thecloud.”

PaaS is a kind of framework computing in that the platform provided is the coreframework in which applications are specifically developed. These applications will notrun on any other platform, and often include platform-specific extensions or services,such as Amazon’s SimpleDB that cannot be ported to other environments. The conceptof framework computing comes from architectures in which a layer of capabilities andservices are provided that abstract developers from the underlying details. This approachleads to more rapid development and deployment of applications as shown in Fig.1.17.

Page 24: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-24 INTRODUCTION TO CLOUD COMPUTING

Fig. 1.17. PaaS and cloud architecture.

(i) Development environment. All platforms require a development environment inwhich the applications are designed, built, tested, and validated outside of the productionenvironment. These development environments can be traditional integrated developmentenvironments (IDE) that are configured to deploy to resources within a PaaS environmentor they can be integrated directly as part of the PaaS offering. Microsoft Visual Studio-derived environments are as capable of connecting to internal as external instances ofMicrosoft-specific platform, thus enabling offline development of applications to bedeployed in a PaaS environment. Increasingly, less standard and more proprietary offeringsthose that are wholly dependent on resources that exist only in the PaaS environmentsuch as Salesforce.com’s Force.com provide a PaaS-hosted development environmentthrough which developers can build, test, and deploy their solutions.

(ii) Deployment environment. A second component required is to deploy the applicationinto production once it is ready to be consumed by the end users. This ability is essentiallythe run-time environment in which the applications are deployed. The difference betweenthe PaaS run-time environment and that of hosted or even traditional enterprise deployedplatforms is the expectation of on-demand scalability associated with PaaS that does notexist in other incarnations. This on-demand scalability can result from deploying theenvironment on a generic IaaS, or from specifically building out and connecting therequired development, deployment, and dynamic control plane. The latter results in thecreation of a platform-specific IaaS, with the required components arranged specificallyto provision and decommission resources based on the unique needs of the deploymentenvironment.

Page 25: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-25

1.9.5. Cloud Architecture : Business Computing — SaaSAt the top of the pyramid is general business computing as shown in Fig.1.18. This iswhere many business organizations find themselves with the ability to identify a businessneed but without the ability to build an application or the infrastructure upon which itruns. Instead of relying on an internal IT organization to build and deploy infrastructureand platforms, business stakeholders simply select an application and run it. Mostorganizations choose this option because the capital operating expenses and hours requiredto implement standardized applications are not financially feasible, not an efficient use ofIT resources simply beyond the capabilities of the organization.

“Software as a Service (SaaS) is a cloud computing model in which pre-built applications such as CRM, SFA, word processing, spreadsheets,and HRM are offered to customers via a web browser or other localinterface such as a mobile device application.”

These applications are generally customizable though the customer need not be concernedwith the underlying infrastructure or the development platform or the actualimplementation.

Fig. 1.18. SaaS and Cloud Architecture.

Applications are the only component here. Whether the application is the result of buildingutility computing, followed by a platform, or it is simply an application deployed on aserver, this is what users interact with. Users do not care how it was built, where itresides, or the compute resources required to deliver it. They simply expect it to beavailable when they want it, responsive and well-performing enough to be useful, andexpect it to be secure regardless of where, when, and how they access it.

Page 26: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-26 INTRODUCTION TO CLOUD COMPUTING

1.10. ADVANTAGES AND DISADVANTAGES OF CLOUDCOMPUTING

Cloud computing offers numerous advantages both to end users and businesses of allsizes. The obvious huge advantage is that we no more have to support the infrastructureor have the knowledge necessary to develop and maintain the infrastructure, developmentenvironment or application, as were things up until recently.

“The burden has been lifted and someone else is taking care of all that.Businesses are now able to focus on their core business by outsourcingall the hassle of IT infrastructure. Some of the most important advantagesof cloud computing and discuss them in more detail. Those will includeboth a company’s and an end-user’s perspective.”

1. Cost efficiency. This is the biggest advantage of cloud computing, achieved by theelimination of the investment in stand-alone software or servers. By leveraging cloud’scapabilities, companies can save on licensing fees and at the same time eliminate overheadcharges such as the cost of data storage, software updates, management etc. The cloudis in general available at much cheaper rates than traditional approaches and cansignificantly lower the overall IT expenses. At the same time, convenient and scalablecharging models have emerged (such as one-time-payment and pay-as-you-go), makingthe cloud even more attractive.

2. Convenience and continuous availability. Public clouds offer services that areavailable wherever the end user might be located. This approach enables easy access toinformation and accommodates the needs of users in different time zones and geographiclocations. As a side benefit, collaboration booms since it is now easier than ever toaccess, view and modify shared documents and files.

3. Increased storage capacity. The cloud can accommodate and store much moredata compared to a personal computer and in a way offers almost unlimited storagecapacity. It eliminates worries about running out of storage space and at the same timeIt spares businesses the need to upgrade their computer hardware, further reducing theoverall IT cost.

4. Backup and recovery. The process of backing up and recovering data is simplifiedsince those now reside on the cloud and not on a physical device. The various cloudproviders offer reliable and flexible backup/recovery solutions. In some cases, the clouditself is used solely as a backup repository of the data located in local computers.

5. Cloud is environmentally friendly. The cloud is in general more efficient than thetypical IT infrastructure and It takes fewer resources to compute, thus saving energy.For example, when servers are not used, the infrastructure normally scales down, freeingup resources and consuming less power. At any moment, only the resources that aretruly needed are consumed by the system.

Page 27: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-27

6. Resiliency and redundancy. A cloud deployment is usually built on a robustarchitecture thus providing resiliency and redundancy to its users. The cloud offersautomatic failover between hardware platforms out of the box, while disaster recoveryservices are also often included.

7. Scalability and performance. Quick deployment and ease of integration. A cloudsystem can be up and running in a very short period, making quick deployment a keybenefit. On the same aspect, the introduction of a new user in the system happensinstantaneously, eliminating waiting periods.

8. Device diversity and location independence. Cloud computing services can beaccessed via a plethora of electronic devices that are able to have access to the internet.These devices include not only the traditional PCs, but also smartphones, tablets etc.With the cloud, the “Bring your own device” (BYOD) policy can be easily adopted,permitting employees to bring personally owned mobile devices to their workplace.

Disadvantages of cloud computing :

The disadvantages of cloud computing are as following :

“As made cloud computing is a tool that offers enormous benefits to itsadopters. However being a tool it also comes with its set of problems andinefficiencies.”

1. Security issues. How safe is your data ? Cloud computing means Internet computing.So we should not be using cloud computing applications that involve using or storing datathat we are not comfortable having on the Internet. That being said, established, reliablecloud computing vendors will have the latest, most sophisticated data security systemspossible as they want your business and realize that data security is a big concern.

2. Dependency. One of the major disadvantages of cloud computing is the implicitdependency on the provider. This is what the industry calls vendor lock-in since it isdifficult, and sometimes impossible, to migrate from a provider once we have rolled withhim. If a user wishes to switch to some other provider, then it can be really painful andcumbersome to transfer huge data from the old provider to the new one. This is anotherreason why we should carefully and thoroughly contemplate all options when picking avendor.

3. Technical difficulties and downtime. Certainly the smaller business will enjoy nothaving to deal with the daily technical issues and will prefer handing those to an establishedIT company, however we should keep in mind that all systems might face dysfunctionsfrom time to time. Outage and downtime is possible even to the best cloud serviceproviders, as the past has shown.

4. Limited control. Since the applications and services run on remote, third partyvirtual environments, companies and users have limited control over the function andexecution of the hardware and software. Moreover, since remote software is being

Page 28: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-28 INTRODUCTION TO CLOUD COMPUTING

used, it usually lacks the features of an application running locally.

5. Inflexibility. Be careful when we are choosing a cloud computing vendor that weare not locking your business into using their proprietary applications or formats. We cannot insert a document created in another application into a Google Doc spreadsheet, forinstance. Also make sure that we can add and subtract cloud computing users as necessaryas your business grows or contracts.

6. Increased weakness. Related to the security and privacy mentioned before, notethat cloud based solutions are exposed on the public internet and are thus a more vulnerabletarget for malicious users and hackers. Nothing on the Internet is completely secure andeven the biggest players suffer from serious attacks and security breaches. Due to theinterdependency of the system, If there is a compromise one of the machines that datais stored, there might be a leakage of personal information to the world.

1.11. CLOUD ADOPTION AND RUDIMENTSThe cloud services should now be given consideration by any and every organization asper the trend 2012 and USA cloud adoption. It is an increasing trend in terms of bothcompetence and coverage. Cloud adoption statistics show 7 percent of small companiesand 17 percent of mid-sized companies showing some kind of cloud activity in early2010 which quickly doubled just 18 months later to 13 percent and 36 percent respectivelyas shown in Fig. 1.19.

Fig. 1.19. Cloud Adoption : Small and Medium Size Companies.

The benefits of adopting an outsourced cloud running applications and storing data on amanaged data center’s servers for small to mid-sized businesses. The five top mostbusinesses to be benefited from this adoption as shown in Fig. 1.20 are IT and technology,Education, Manufacturing, Business and professional services and Government.

Page 29: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-29

Fig. 1.20. Benefited from Cloud Adoption.

1. IT and technology. The higher levels of security trust your IT services by anexperienced vendor. They can provide a greater level of service to support a morecomplex IT infrastructure due to the amount of capital invested in new technology andfacilities. Small and mid-sized businesses likely do not have the budget or time to build orsupport in-house IT.

2. Education. Cloud applications will increase the efficiency of educational systemnation wide or statewide through the latest technologies which are also made availableto the less privileged education centers not merely the top institutions. Geographicallocation would no longer be a barrier in the class attendance. This not only enhances theknowledge sharing but also fortifies the team collaboration.

3. Manufacturing. Manufacturers take the cloud applications as the most importanttool for the IT advancement in the future. It allows the IT manufacturers to avoid thetechnical as well as business issues that would otherwise have taken place in their owndata centers. This also allows them to pay for the utilized services hence becoming acost effective solution. In cloud computing, the huge remote internet servers are accessedby the manufacturers just the same way as their own.

4. Business and professional services. The manufacturers are now able to bevirtually present at every location in the world through employing three major componentsnamely, Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Softwareas a Service (SaaS). This enables the manufacturers to explore business opportunitiesglobally and link with the IT infrastructure.

Cloud computing can possibly provide the travel and hospitality companies with manyconvenient solutions in this competitive world. Without any paper expense, it allowspeople to book the desired flights for travelling, reserve places for accommodation andnot only that but also make online payments through the companies accounts system.The customers will not have to connect to the airlines and travel service individually asall of that can be dealt through single transaction system. Apart from the other services,cloud computing can potentially perk up the huge and portioned health industry. Thisindustry comprises of patients, insurance companies, hospitals, laboratories and physicians.The cloud benefits the health industry in innumerable ways. Better quality patient dataupdates, easier updates, better communication with the patients, higher consumer lifestylechoices and more appropriate choice of following the specified courses of patients

Page 30: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-30 INTRODUCTION TO CLOUD COMPUTING

treatments are some of the benefits gained through cloud computing.

5. Government. Scalable, on-demand cloud computing services can help governmentorganizations focus on mission-critical objectives, while helping to reduce IT costs.

The benefits of employing cloud computing and cloud applications are uncountable.There is no way the industries would not employ it to maximize their benefits and profits.However, the organizations and the institutions need to select the right solutions to getbenefited from cloud computing.

SOLVED QUESTIONSQ. 1. What is cloud computing ?

Ans. Cloud computing is the delivery of computing services over the Internet. Whetherthey realize it or not many people use cloud computing services for their own personalneeds. For example, many people use social networking sites or webmail, and these arecloud services. Photographs that people once kept on their own computers are nowbeing stored on servers owned by third parties. These are also examples of cloud services.Cloud services are popular because people can access their e-mail, social networkingsite or photo service from anywhere in the world, at any time, at minimal or no charge.

Some cloud providers may however use the personal information of users for advertisingpurposes or to learn more about the users for other reasons.

Q. 2. Can cloud computing affect privacy ?

Ans. When it comes to cloud computing, the security and privacy of personal informationis extremely important. Given that personal information is being turned over to anotherorganization, often in another country, it is vital to ensure that the information is safe andthat only the people who need to access it are able to do so.

There is the risk that personal information sent to a cloud provider might be kept indefinitelyor used for other purposes. Such information could also be accessed by governmentagencies, domestic or foreign. For businesses that are considering using a cloud service,it is important to understand the security and privacy policies and practices of the provider.The terms of service that govern the relationship with the provider sometimes allow forrather liberal usage and retention practices.

Q. 3. Why are organizations interested in cloud computing ?

Ans. Cloud computing can significantly reduce the cost and complexity of owning andoperating computers and networks. If an organization uses a cloud provider, it does notneed to spend money on information technology infrastructure, or buy hardware orsoftware licences. Cloud services can often be customized and flexible to use, andproviders can offer advanced services that an individual company might not have themoney or expertise to develop.

Page 31: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-31

Q. 4. Cloud computing may improve privacy protection. Is this true ?

Ans. For businesses that are considering using a cloud service, cloud computing couldoffer better protection of personal information compared with current security and privacypractices. Through economies of scale, large cloud providers may be able to use bettersecurity technologies than individuals or small companies can and have better backupand disaster-recovery capabilities. Cloud providers may also be motivated to build privacyprotections into new technology, and to support better audit trails.

On the other hand, while cloud computing may not increase the risk that personalinformation will be misused or improperly exposed, it could increase the scale of exposure.The aggregation of data in a cloud provider can make that data very attractive to cybercriminals, for example. Moreover, given how inexpensive it is to keep data in the cloud,there may be a tendency to retain it indefinitely, thereby increasing the risk of breaches.

Q. 5. What are the properties of Cloud Computing ?

Ans. There are six key properties of cloud computing.(a) User-centric(b) Task-centric(c) Powerful(d) Accessible(e) Intelligent(f) Programmable

Q. 6. What is the working principle of Cloud Computing ?

Ans. The cloud is a collection of computers and servers that are publicly accessible viathe Internet. This hardware is typically owned and operated by a third party on aconsolidated basis in one or more data center locations. The machines can run anycombination of operating systems.

Q. 7. Define Cloud services with example.

Ans. Any web-based application or service offered via cloud computing is called acloud service. Cloud services can include anything from calendar and contact applicationsto word processing and presentations.

Q. 8. What is the vision of cloud computing ?

Ans. “Consumers will be able to access applications and data from a “Cloud” anywherein the world on demand. The consumers are assured that the Cloud infrastructure isvery robust and will always be available at any time. Computing services need to behighly reliable, scalable, and autonomic to support ubiquitous access, dynamic discoveryand computability.” The vision of cloud computing are :

(a) Service provisioning model. This vision of the computing utility based on theservice provisioning model anticipates the massive transformation of the entire

Page 32: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-32 INTRODUCTION TO CLOUD COMPUTING

computing industry in the 21st century whereby computing services will be readilyavailable on demand, like other utility services available in today’s society.

(b) Computer utilities. It enables individual computers to communicate with anyother computers located elsewhere in the world. This internetworking of standalonecomputers provide potential of utilizing endless amount of distributed computingresources owned by various owners.

(c) Grid computing. Grid computing enables the sharing, selection, and aggregationof a wide variety of physically distributed resources including supercomputers,storage systems, data sources, and specialized devices owned by differentorganizations for solving large scale resource intensive problems in science,engineering, and commerce.

(d) Peer-to-Peer computing. The Peer-to-Peer (P2P) computing allows peer nodes(computers) to share content directly with one another in a decentralized manner.

(e) Service computing. A service computing focuses on the linkage between businessprocesses and IT services so that business processes can be seamlessly automatedusing IT services.

(f) Market-oriented computing. It views computing resources in economic termssuch that resource users will need to pay resource providers for utilizing thecomputing resources.

(g) Virtualized compute and storage technologies. Today the latest paradigm toemerge is that of Cloud computing which promises reliable services deliveredthrough next-generation data centers that are built on virtualized compute andstorage technologies.

Q. 9. What are the major characteristics of cloud computing as per NIST ?

Ans. Cloud computing has a variety of characteristics, with the main ones being describedby NIST are as following :

(a) On-demand self-service. A consumer can unilaterally provision computingcapabilities, such as server time and network storage, as needed automaticallywithout requiring human interaction with each service provider.

(b) Broad network access. The capabilities are available over the network andaccessed through standard mechanisms that promote use by heterogeneous thinor thick client platforms (e.g., mobile phones, tablets, laptops, and workstations).

(c) Resource pooling. The provider’s computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physical and virtualresources dynamically assigned and reassigned according to consumer demand.

(d) Rapid elasticity. The capabilities can be elastically provisioned and released, insome cases automatically, to scale rapidly outward and inward commensuratewith demand.

Page 33: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-33

(e) Measured service. Cloud systems automatically control and optimize resourceuse by leveraging a metering capability at some level of abstraction appropriate tothe type of service e.g., storage, processing, bandwidth, and active user account.

Q. 10. Why is Cloud computing important ?

Ans. There are many implications of cloud technology, for both developers and endusers. For developers, cloud computing provides increased amounts of storage andprocessing power to run the applications they develop. Cloud computing also enablesnew ways to access information, process and analyze data, and connect people andresources from any location anywhere in the world.

For users, documents hosted in the cloud always exist, no matter what happens to theuser’s machine. Users from around the world can collaborate on the same documents,applications, and projects, in real time. And cloud computing does all this at lower costs,because the cloud enables more efficient sharing of resources than does traditionalnetwork computing.

Q. 11. What are the advantages and disadvantages of Cloud Computing ?

Ans. The advantages and disadvantages of cloud computing are as follow as :

Advantages :1. Lower-cost computers for users2. Improved performance3. Lowers the infrastructure costs4. Fewer maintenance issues5. Lower software costs6. Instant software updates7. Increased computing power8. Unlimited storage capacity9. Increased data safety

10. Improved compatibility between operating systems11. Improved document format compatibility12. Easier group collaboration13. Universal access to documents14. Latest version availability15. Removes the tether to specific devices

Disadvantages :

1. Requires a constant internet connection2. Does not work well with low-speed connections3. Can be slow4. Features might be limited5. Stored data might not be secure6. If the cloud loses your data you are screwed

Page 34: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-34 INTRODUCTION TO CLOUD COMPUTING

Q. 12. Who get benefits from cloud computing ?

Ans. The following get benefits :

(a) Collaborators(b) Road warriors(c) Cost-conscious users(d) Cost-conscious(e) IT departments(f) Users with increasing needs

Q. 13. List the companies who offer cloud service development.

Ans. The companies who offer cloud service are :

(a) Amazon(b) Google App Engine(c) IBM(d) Salesforce.com

Q. 14. Explain the cloud computing deployment model.

Ans. The National Institute of Standards and Technology (NIST) is emerging as thepreferred provider of the real definition of cloud computing and the distribution models.To deploy cloud computing, the US National Institute of Standards and Technology(NIST) listed 4 models.

(i) Private cloud. A cloud infrastructure is operated only for a single organization. Inother words the proprietary network or the data center supplies hosted services to acertain group of people.

(ii) Community cloud. The cloud infrastructure is shared by several organizations withcommon concerns like mission, security requirements, policy, compliance considerations,etc is known as community cloud.

(iii) Public cloud. The cloud infrastructure is provisioned for open use by the generalpublic. It may be owned, managed, and operated by a business, academic, or governmentorganization, or some combination of them. It exists on the premises of the cloud provider.

(iv) Hybrid cloud. The cloud infrastructure is a composition of two or more distinctcloud infrastructures such as private, community, or public that remain unique entities,but are bound together by standardized or proprietary technology that enables data andapplication portability e.g., cloud bursting for load balancing between clouds.

Q. 15. What is cloud computing reference model ?

Ans. An overview of the NIST cloud computing reference architecture, which identifiesthe major performer/Actor their activities and functions in cloud computing. It represents

Page 35: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-35

a generic high-level architecture and is intended to facilitate the understanding of therequirements, uses, characteristics and standards of cloud computing. The NIST cloudcomputing reference architecture defines five major performers. Each performer is anentity may be a person or an organization that participates in a transaction or processand/or performs tasks in cloud computing. The briefly lists of the actors / performersdefined in the NIST cloud computing reference architecture in Table 1.2. The generalactivities of the actors are discussed.

Table 1.2. The Actors/performers in Cloud Computing.

Actor Definition

Cloud Consumer A person or organization that maintains a business relationshipwith, and uses service from, cloud providers.

Cloud Provider A person, organization, or entity responsible for making aavailable service to interested parties.

Cloud Auditor A party that can conduct independent assessment of cloudservices, information system operations, performance andsecurity of the cloud implementation.

Cloud Broker An entity that manages the use, performance and delivery ofcloud services, and negotiates relationship between cloudproviders and cloud consumers.

Cloud Carrier An intermediary that provides connectivity and transport ofcloud services from cloud providers to cloud consumers.

A cloud consumer may request cloud services from a cloud provider directly or via acloud broker. A cloud auditor conducts independent audits and may contact the others tocollect necessary information.

Q. 16. What are the features of robust cloud development ? Who it offers ?

Ans. The features of robust cloud development are :

(a) Dynamic web serving(b) Full support for all common web technologies(c) Persistent storage with queries, sorting, and transactions(d) Automatic scaling and load balancing(e) APIs for authenticating users and sending email using Google Accounts.

Q. 17. Define the term web service with example.

Ans. A web service is an application that operates over a network typically, over theInternet. Most typically, a web service is an API that can be accessed over the Internet.The service is then executed on a remote system that hosts the requested services.

Page 36: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-36 INTRODUCTION TO CLOUD COMPUTING

A good example of web services are the “mashups” created by users of the GoogleMaps API. With these custom apps, the data that feeds the map is provided by thedeveloper, where the engine that creates the map itself is provided by Google.

Q. 18. Describe the cloud computing environments.

Ans. Cloud computing aims to power the next generation data centers and enablesapplication service providers to lease data center capabilities for deploying applicationsdepending on user QoS (Quality of Service) requirements. Cloud applications environmenthave different: composition, configuration, and Deployment requirements. Quantifyingthe performance of resource allocation policies and application scheduling algorithms atfiner details in Cloud computing environments for different application and service modelsunder :

(a) Varying load(b) Energy performance (power consumption, heat dissipation) and(c) System size is a challenging problem to tackle.

To simplify this process, an extensible simulation toolkit that enables modeling andsimulation of Cloud computing environments are used. The toolkit supports modelingand creation of one or more virtual machines (VMs) on a simulated node of a DataCenter, jobs, and their mapping to suitable VMs. It also allows simulation of multipleData Centers to enable a study on federation and associated policies for migration ofVMs for reliability and automatic scaling of applications.

Q. 19. Explain the different cloud services requirements.

Ans. Cloud computing consists of hardware and software resources made available onthe Internet as managed third-party services. Examples of cloud computing servicesinclude :

1. Virtual IT. It configures and utilizes remote, third-party servers as extensions to acompany’s local IT network

2. Software. They utilizes commercial software applications, or develop and remotelyhost custom built applications

3. Network storage. The back up or archive data across the Internet to a providerwithout needing to know the physical location of storage.

Cloud computing systems all generally are designed for scalability to support large numbersof customers and surges in demand. Service providers are responsible for installing andmaintaining core technology within the cloud. Some customers prefer this model becauseit limits their own manageability burden. However, customers cannot directly controlsystem stability in this model and are highly dependent on the provider instead.

Q. 20. Explain the different cloud service models.

Ans. Cloud Computing is in its simplest form, an image for the Internet and the process

Page 37: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

INTRODUCTION TO CLOUD COMPUTING 1-37

of delivering applications and services through it. Cloud computing within this imagethere are a number of services that are delivered via the Internet. These include Softwareas a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service(IaaS).

(a) Software as a Service (SaaS). The capability provided to the consumer is to usethe provider's applications running on a cloud infrastructure.

(b) Platform as a Service (PaaS). The capability provided to the consumer is todeploy onto the cloud infrastructure consumer-created or acquired applicationscreated using programming languages, libraries, services, and tools supported bythe provider.

(c) Infrastructure as a Service (IaaS). The capability provided to the consumer isto provision processing, storage, networks, and other fundamental computingresources where the consumer is able to deploy and run arbitrary software, whichcan include operating systems and applications.

Q. 21. What are the issues in web based applications ?

Ans. The issues in web based applications are:

(a) Technical issues (b) Business model issues(c) Internet issues (d) Security issues(e) Compatibility issues (f) Social issues

Q. 22. Explain cloud and dynamic infrastructure of cloud computing.

Ans. The new dynamic paradigm must be able to intercept application and data traffic,interpret the current context, and instruct the cloud infrastructure on how to most efficientlydeliver the request. These requirements include scalability, adaptability, extensibility, andmanageability. The pyramid layers are in the notions of Infrastructure as a Service(IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). At the apex ofthe pyramid are users accessing the applications in the center is a dynamic control planethat traverses all others and provides real-time connectivity, information coordination,and flow control between the layers.

(a) Cloud architecture - Utility Computing -IaaS. Built from core componentsthat include compute resources and management resources, the base layer of thecloud architecture requires the most technical competence to build and deploy.This is the very foundation upon which a cloud is built is made up of the componentsmost often supplied by vendors who provide IaaS solutions to their customers

(b) Cloud architecture - Framework Computing- PaaS. Many applications arebuilt on software platforms that run on top of infrastructure services. Theseplatforms can be environments such as Oracle or ASP.NET and provide aconvenient way for businesses to build custom applications without worrying aboutthe details that lay beneath the platforms.

Page 38: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

1-38 INTRODUCTION TO CLOUD COMPUTING

(c) Cloud architecture - Business Computing- SaaS. At the top of the pyramid isgeneral business computing. This is where many business organizations findthemselves with the ability to identify a business need but without the ability tobuild an application or the infrastructure upon which it runs.

Q. 23. Explain the benefits of cloud adoption and rudiments.

Ans. The top most businesses to be benefited from this adoption are IT and technology,Education, Manufacturing, Business and professional services.

(a) IT and technology. The higher levels of security trust your IT services by anexperienced vendor. They can provide a greater level of service to support a morecomplex IT infrastructure due to the amount of capital invested in new technologyand facilities.

(b) Education. Geographical location would no longer be a barrier in the classattendance. This not only enhances the knowledge sharing but also fortifies theteam collaboration.

(c) Manufacturing. It allows the IT manufacturers to avoid the technical as well asbusiness issues that would otherwise have taken place in their own data centers.

(d) Business and professional services. The manufacturers are now able to bevirtually present at every location in the world through employing three majorcomponents namely; Infrastructure as a Service (IaaS), Platform as a Service(PaaS) and Software as a Service (SaaS).

UNSOLVED QUESTIONS1. Define cloud computing. How it affect privacy ?

2. Explain with examples about cloud services.

3. Short notes on(a) Vision of cloud computing(b) Working principles of cloud computing

4. Describe advantages and disadvantages of cloud computing.

5. Explain cloud computing reference model.

6. Write short notes on :(a) Robust cloud development(b) Web service

7. What do you understand by cloud computing environment ?

m m m

Page 39: Introduction of Cloud Computing By Pawan Thakur HOD CS & IT