Introduction of Cloud Computing By Pawan Thakur HOD CS & IT
Upcoming SlideShare
Loading in...5
×
 

Introduction of Cloud Computing By Pawan Thakur HOD CS & IT

on

  • 1,174 views

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 ...

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.

Statistics

Views

Total Views
1,174
Views on SlideShare
1,172
Embed Views
2

Actions

Likes
0
Downloads
47
Comments
1

1 Embed 2

http://192.168.6.179 2

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • A good paper that gives the basics of cloud computing in a clear and understandable language with out much jargon.
    Prof Jayachandran BiT, Ethiopia
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Introduction of Cloud Computing By Pawan Thakur HOD CS & IT Introduction of Cloud Computing By Pawan Thakur HOD CS & IT Document Transcript

  • INTRODUCTION TO CLOUD COMPUTING 1-1 LEARNING OBJECTIVES At the end of this chapter you will be able to understand : m m m m m m m m m m m Introduction Meaning and Definitions of Cloud Computing Historical Development Vision of Cloud Computing Characteristics of Cloud Computing as per NIST Cloud Computing Reference Model : An Overview Cloud Computing Environments Cloud Services Requirements Cloud and Dynamic Infrastructure Advantages and Disadvantages of Cloud Computing Cloud Adoption and Rudiments 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.
  • 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 information and computer resources from anywhere that a network connection is available. The cloud 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 of 2013 include the following : 1. Google. It has a private cloud that it uses for delivering many different services to its users including email access, document applications, text translations, maps, web analytics and much more. 2. Microsoft. It has Microsoft® Share-point® online service that allows for content and business intelligence tools to be moved into the cloud and Microsoft currently makes its office applications available in a cloud. 3. Salesforce.com. It runs its application set for its customers in a cloud, and it's Force.com and Vmforce.com products provide developers with platforms to build customized cloud services. According to Gartner, the cloud is changing the way applications are designed, tested and deployed resulting in a significant shift in application development priorities. Cost is a major driver, but so are agility, flexibility and speed to deploy new applications. The firm estimates that 90% of large enterprises and government agencies will use some aspect of cloud computing by 2015. But, what is cloud computing? The following chapter describes the cloud computing characteristics, services models, deployment models, benefits and challenges.
  • INTRODUCTION TO CLOUD COMPUTING 1.2 1-3 MEANING AND DEFINITIONS OF CLOUD COMPUTING The cloud computing is the delivery of computing services over the Internet. Cloud services allow individuals and businesses to use software and hardware that are managed by third parties at remote locations. Fig. 1.2. Cloud Computing Container. The cloud computing is an everyday expression used to describe a variety of different computing concepts that involve a large number of computers that are connected through a real-time communication network typically the Internet. A web server typically has three tiers to it as shown in Fig.1.2. The physical infrastructure, the operating system platform, and the web application software being run. A cloud container may contain one, two or all of these layers. “Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models”. — National Institute of Standards and Technology (NIST) The National Institute for Standards and Technology (NIST), Information Technology Laboratory offers above definition of Cloud Computing. It’s as good as any.
  • 1-4 INTRODUCTION TO CLOUD COMPUTING “Cloud computing is the dynamic delivery of information technology resources and capabilities as a service over the Internet. It is a style of computing in which dynamically scalable and often virualized resources are 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 via modular reference architectures that are created by the providers and vendors rather than to end users”. — Chris Poelkar For the simplest explanation for cloud computing is describing it as, ‘Internet centric software’. This new cloud computing software model is a shift from the traditional single tenant approach to software development to that of a scalable, multi-tenant, multiplatform, multi-network, and global. This could be as simple as your web based email service or as complex as a globally distributed load balanced content delivery environment. 1.3. HISTORICAL DEVELOPMENT Computing history can be traced back to the invention of the first calculating machine Abacus is considered to be the first computer and was invented by the Chinese about 5000 years ago. The basic purpose of the device is to make calculations. Charles Babbage invented the first mechanical computer during the period of 1830 to 1850. This computer performed basic arithmetic functions. Babbage is known as the father of modern digital computers. The Mark-I Computer was the first fully automatic calculating machine. It was designed by Howard A. Aikne it collaboration with IBM. This machine was proved to be extremely reliable. It was capable of performing five basic arithmetic operations, addition, subtractions, multiplication, and division and table reference. The electronic machine was developed by Atanasoff to solve certain mathematical equations. It used 45 vaccum tubes for internal logical and capacitors for storage. Electronic Numerical Integrator and Calculator (ENIAC) was the first electronic computer. It was a bulky machine consisting of 18000 vaccum tubes. It was based on decimal arithmetic. It was faster than mark-I computer it could store and manipulate very small amount of information. Electronic Discrete Variable automatic Computer (EDVAC) was designed on stored program concept Dr. John Von Neumann introduced it. His basic idea of stored program is 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 and data 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 Maurice Wilkes at the Cambridge University. This machine accomplished addition operation is 1500 microseconds. The UNIVAC was the first digital computer. UNIVAC machines were produced the first of which was installed in the Census Bureau in 1951 and was
  • INTRODUCTION TO CLOUD COMPUTING 1-5 used continuously for 10 years. The IBM Corporation introduced the FOI Commercial Computer. The improve models of UNIVAC were introduced. In 1957 IBM introduced the 704 as the first mass produced mainframe computer with floating-point arithmetic. Eventually, in 1964 the IBM System/360 followed. The highlight of this product family was that peripheral components were exchangeable and that the software was executable on all computers of this product family. The development of the Personal Computer (PC) began as recently as in the 1970, with the construction of the first microprocessor 4004 in 1969 and the later 8008 in 1971 by Intel. As late as 1981 IBM entered this market segment and coined the name Personal Computer (PC). Microsoft has developed the operating system for the IBM-PC, which soon became the standard platform, with which many PC manufacturers where compatible with. Since then the development and diffusion of PC’s gained pace, significant performance leaps could be achieved, graphical user interfaces were established and the continuing miniaturization eventually lead to the development of laptops and mobile devices. Another important milestone was the development of the Internet. This can be traced back to a research project at the Advanced Research Projects Agency (ARPA). A communication 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 ARPAnet was developed out of this project. In 1981 around 200 institutions were connected to this network. In 1983 the net’s protocol was switched to TCP/IP, which made it possible to connect whole subnets to the ARPAnet. This network of networks was soon called Internet. 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 invention of the World Wide Web in 1989. Tim Berners-Lee conceptualized an information management system for the European Organization for Nuclear Research (CERN) which was based on Hypertext, a network structure, where knowledge entities are referenced through logical references so called hyperlinks. Traditional hyper textual structures are for example content tables or cross references. The modern hypertext concept can be traced back to Vannevar Bush (1945). With the increasing diffusion of the web browser Mosaic, the World Wide Web eventually gained great popularity. Further increasing bandwidths and technologies like Java, PHP or Ajax made it possible to develop more and more elaborate, interactive websites. Due to this development, we can today find many multimedia websites, online shops and numerous applications that are deployed in the Internet. Some examples are route planners, communication platforms, social networks and even whole office applications like word processors or spread sheet applications. This deployment concept, usually referred to Software-as-a-Service gained popularity around the year 2000. Similar deployment concepts were developed for the deployment of hardware resources, especially computing power and storage. Primarily in academia Grid Computing got established as such a concept already at the beginning of the 1990.
  • 1-6 INTRODUCTION TO CLOUD COMPUTING “The term Cloud Computing was coined in 2007 typically refereeing to a joint hardware and software deployment concept. First research initiatives were started by Google and IBM, in cooperation with six American Universities. When looking back at the operating models of a the 60 and 70, one realizes that with cloud computing an old trend is coming back : centralized, shared computing resources. They so called time-sharing concept, where idle CPU times where dynamically distributed to several users, can be traced back to John McCarthy in 1957” 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 to external users. This eventually led to the foundation of independent service providers which specialized on the deployment of computing resources. Companies that offered time-sharing-systems were for example General Electric’s Information Service Company (GEISCO), IBM’s subsidiary The Service Bureau Corporation or Tymshare Inc. Users of these time-sharing services could access the mainframe computer through dialup connections, using terminals that were simple input/output devices. The mainframe computers typically provided a complete working environment, including different software packages, programming environments, file storage and printing services. Pricing models were commonly based on a fixed rental fee for the terminal and variable costs for connection time, consumed CPU time and storage usage. With the increasing diffusion of more and more powerful PCs data processing and data storage shifted to those local devices. In the 1990, the next trend could be observed, back again towards a centralization of information technology, especially a centralization of data storage. This trend 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 the 1960 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 users to dynamically access their infrastructure and harness computing power and storage capacities. Platforms that were developed for cloud computing enable the development of applications that are deployed on the hardware of those cloud computing infrastructure providers. 1.4. VISION OF CLOUD COMPUTING With the advancement of modern society basic essential services and utilities are commonly provided such that everyone can easily obtain access to them. Today utility services, such as water, electricity, gas, and telephony are deemed necessary for fulfilling daily life routines. These utility services are accessed so frequently that they need to be available whenever the consumer requires them at any time. Consumers are then able to pay service providers based on their usage of these utility services.
  • 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 the Cloud infrastructure is very robust and will always be available at any time. Computing services need to be highly reliable, scalable, and autonomic to support ubiquitous access, dynamic discovery and computability.” In 1969, Leonard Kleinrock, one of the chief scientists of the original Advanced Research Projects Agency Network (ARPANET) project which seeded the Internet said: As of now, computer networks are still in their infancy, but as they grow up and become sophisticated, we will probably see the spread of computer utilities which, like present electric and telephone utilities, will service individual homes and offices across the country”. 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 the service provisioning model anticipates the massive transformation of the entire computing industry in the 21st century whereby computing services will be readily available on demand like other utility services available in today’s society. Similarly, computing service users or consumers need to pay providers only when they access computing services. In addition, consumers no longer need to invest heavily or encounter difficulties in building and maintaining complex IT infrastructure. Hence, software practitioners are facing numerous new challenges toward creating software for millions of consumers to use as a service, rather than to run on their individual computers. 2. Computer utilities. The creation of the Internet has marked the foremost milestone towards achieving this grand 21st century vision of ‘computer utilities’ by forming a worldwide system of computer networks that enables individual computers to
  • 1-8 INTRODUCTION TO CLOUD COMPUTING communicate with any other computers located elsewhere in the world. This internetworking of standalone computers provide potential of utilizing endless amount of distributed computing resources owned by various owners. As such, over the recent years, new computing paradigms have been proposed and adopted to edge closer toward achieving this grand vision. Applications making use of these utility-oriented computing systems emerge simply as catalysts or market makers, which brings buyers and sellers together. This creates several trillion dollars worth of the utility/pervasive computing industry as noted by Sun Microsystems co-founder Bill Joy. 3. Grid computing. Grid computing enables the sharing, selection, and aggregation of a wide variety of physically distributed resources including supercomputers, storage systems, data sources, and specialized devices owned by different organizations for solving large scale resource intensive problems in science, engineering, and commerce. Inspired by the electrical power Grid’s pervasiveness, ease of use, and reliability, the motivation of Grid 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 power Grid did on the 20th century, Grid computing has been hailed as the next revolution after the 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. In pure P2P computing, there is no notion of clients or servers. Since all peer nodes are equal and concurrently be both clients and servers. The goals of P2P computing include cost sharing or reduction, resource aggregation and interoperability, improved scalability and reliability, increased autonomy, anonymity or privacy, dynamism, and ad-hoc communication and collaboration. 5. Service computing. A service computing focuses on the linkage between business processes and IT services so that business processes can be seamlessly automated using IT services. Examples of services computing technologies include Service-Oriented Architecture (SOA) and Web Services. The SOA facilitates interoperable services between distributed systems to communicate and exchange data with one another, thus providing a uniform means for service users and providers to discover and offer services respectively. The Web Services provides the capability for self-contained business functions to operate over the Internet. 6. Market-oriented computing. It views computing resources in economic terms such that resource users will need to pay resource providers for utilizing the computing resources. Therefore, it is able to provide benefits, such as offering incentive for resource providers to contribute their resources for others to use and profit from it, regulating the supply and demand of computing resources at market equilibrium, offering incentive for resource 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
  • INTRODUCTION TO CLOUD COMPUTING 1-9 expectations and service pricing) and enabling both users and providers to make independent decisions to maximize their utility and profit respectively. 7. Virtualized compute and storage technologies. Today the latest paradigm to emerge is that of Cloud computing which promises reliable services delivered through next-generation data centers that are built on virtualized compute and storage technologies. 1.5. CHARACTERISTICS OF CLOUD COMPUTING AS PER NIST Cloud computing has a variety of characteristics, with the main ones being described by NIST are as following as shown in Fig. 1.4 : “Cloud computing allows for the sharing and scalable deployment of services as needed from almost any location and for which the customer can 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 requiring human interaction with each service provider. 2. Broad network access. The capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms e.g., mobile phones, tablets, laptops and workstations. 3. Resource pooling. The provider's computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction e.g., country, state or datacenter. Examples of resources include storage, processing, memory, and network bandwidth.
  • 1-10 INTRODUCTION TO CLOUD COMPUTING 4. Rapid elasticity. The capabilities can be elastically provisioned and released, in some cases automatically to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time. 5. Measured service. Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service e.g., storage, processing, bandwidth, and active user accounts. Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service. 1.5.1. Benefits of Cloud Computing The following are some of the possible benefits for those who offer cloud computingbased services and applications: 1. Cost Savings. The companies can reduce their capital expenditures and use operational expenditures. 2. Computing capabilities. This is a lower barrier to entry and also requires fewer inhouse IT resources to provide system support. 3. Scalability/Flexibility. The companies can start with a small deployment and grow to a large deployment fairly rapidly, and then scale back if necessary. Also, the flexibility of cloud computing allows companies to use extra resources at peak times, enabling them to satisfy consumer demands. 4. Reliability. Services using multiple redundant sites can support business continuity and disaster recovery. 5. Maintenance. Cloud service providers do the system maintenance, and access is through APIs that do not require application installations onto PCs, thus further reducing maintenance requirements. 6. Mobile accessible. Mobile workers have increased productivity due to systems accessible in an infrastructure available from anywhere. 1.5.2. Challenges of Cloud Computing The 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 in the cloud, most also can provide opportunities, if resolved with due care and attention in the planning stages. 1. Security and privacy. Perhaps two of the more “hot button” issues surrounding cloud computing relate to storing and securing data and monitoring the use of the cloud by the service providers. These issues are generally attributed to slowing the deployment of cloud services. These challenges can be addressed for example by storing the information internal to the organization, but allowing it to be used in the cloud. For this to
  • INTRODUCTION TO CLOUD COMPUTING 1-11 occur though the security mechanisms between organization and the cloud need to be robust 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 are associated with these and thus it is unlikely that most clouds will be interoperable. The open grid forum is developing an open cloud computing Interface to resolve this issue and 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 will address the needs of the people deploying the services and the specific interfaces these services need. However keeping up to date on the latest standards as they evolve will allow them to be leveraged if applicable. 3. Continuously evolving. User requirements are continuously evolving, as are the requirements for interfaces, networking and storage. This means that a “cloud” especially a 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 with security and privacy mentioned previously these typically result in hybrid cloud deployment with 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 the major performer/Actor their activities and functions of cloud computing as shown in Fig.1.6.
  • 1-12 INTRODUCTION TO CLOUD COMPUTING Fig. 1.6. The Conceptual Reference Model. “The cloud computing reference model represents a generic high-level architecture and is intended to facilitate the understanding of the requirements, uses, characteristics and standards of cloud computing.” This section provides only overview of conceptual reference model the detailed study of all the component is described in Chapter 3. As shown in Fig.1.6 the NIST cloud computing reference architecture defines five major actors as shown in Fig.1.7. Each performer is an entity may be a person or an organization that participates in a transaction or process and 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 reference architecture in Table 1.1. The general activities of the actors are discussed in the remainder of this section, while the details of the architectural elements are discussed later.
  • 1-13 INTRODUCTION TO CLOUD COMPUTING Table 1.1. The Actors/performers in Cloud Computing. Actor Cloud Consumer Cloud Provider Cloud Auditor Cloud Broker Cloud Carrier Definition A person or organization that maintains a business relationship with, and uses service from, cloud providers. A person, organization or entity responsible for making an available service to interested parties. A party that can conduct independent assessment of cloud services, information system operations, performance and security of the cloud implementation. An entity that manages the use, performance and delivery of cloud services, and negotiates relationship between cloud providers and cloud consumers. An intermediary that provides connectivity and transport of cloud services from cloud providers to cloud consumers. 1. Cloud consumer. The cloud consumer is the most important stakeholder for the cloud computing service. A cloud consumer represents a person or organization that maintains a business relationship with and uses the service from a cloud provider. A cloud consumer browses the service catalog from a cloud provider, requests the appropriate 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 arrange payments accordingly. 2. Cloud provider. A cloud provider is a person, an organization which is the entity responsible for making a service available to interested parties. A cloud provider acquires and manages the computing infrastructure required for providing the services, runs the cloud software that provides the services, and makes arrangement to deliver the cloud services to the cloud consumers through network access. For Software as a Service, the cloud provider deploys, configures, maintains and updates the operation of the software applications on a cloud infrastructure so that the services are provisioned at the expected service levels to cloud consumers. 3. Cloud auditor. A cloud auditor is a party that can perform an independent examination of cloud service controls with the intent to express an opinion thereon. Audits are performed to verify conformance to standards through review of objective evidence. A cloud auditor can evaluate the services provided by a cloud provider in terms of security controls, privacy impact, performance etc. 4. Cloud broker. As cloud computing evolves the integration of cloud services can be too complex for cloud consumers to manage. A cloud consumer may request cloud services from a cloud broker, instead of contacting a cloud provider directly. A cloud broker is an entity that manages the use, performance and delivery of cloud services and negotiates relationships between cloud providers and cloud consumers.
  • 1-14 INTRODUCTION TO CLOUD COMPUTING 5. Cloud carrier. A cloud carrier acts as an intermediary that provides connectivity and transport of cloud services between cloud consumers and cloud providers. A cloud carriers provide access to consumers through network, telecommunication and other access devices. For example, cloud consumers can obtain cloud services through network access devices, such as computers, laptops, mobile phones, mobile Internet devices etc. The interactions among the actors illustrates in Fig.1.8. A cloud consumer may request cloud services from a cloud provider directly or via a cloud broker. A cloud auditor conducts independent audits and may contact the others to collect necessary information. The details will be discussed in the following sections and presented in increasing level of 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 reference architecture is as following: (i) Usage scenario of cloud brokers. A cloud consumer may request service from a cloud broker instead of contacting a cloud provider directly. The cloud broker may create a new service by combining multiple services or by enhancing an existing service as shown in Fig.1.9. In this example, the actual cloud providers are invisible to the cloud consumer 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 and transport of cloud services from cloud providers to cloud consumers. As illustrated in Fig.1.10 a cloud provider participates in and arranges for two unique service level agreements (SLAs) one with a cloud carrier (e.g. SLA2) and one with a cloud consumer e.g. SLA1. A cloud provider arranges service level agreements (SLAs) with a cloud carrier and may request dedicated and encrypted connections to ensure the cloud services are consumed at a consistent level according to the contractual obligations with the
  • 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 conducts independent assessments of the operation and security of the cloud service implementation as shown in Fig.1.11. The audit may involve interactions with both the cloud consumer and the cloud provider. Fig. 1.11. Usage Scenario for Cloud Auditors. 1.7. CLOUD COMPUTING ENVIRONMENTS The cloud computing aims to power the next generation data centers and enables application service providers to lease data center capabilities for deploying applications depending 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.
  • 1-16 INTRODUCTION TO CLOUD COMPUTING Quantifying the performance of resource allocation policies and application scheduling algorithms at finer details in cloud computing environments for different application and service 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 and simulation of cloud computing environments are used. The toolkit supports modeling and creation 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 centers to enable a study on federation and associated policies for migration of VMs for reliability and automatic scaling of applications. The cloud has also begun to impact the tools and support solutions that drive IT. This includes performance management, backup and recovery, configuration management, helpdesk, datacenter automation and release management. The agility afforded by ondemand services is further penetrating the developer space. Yet despite this transformation, there has been little disruption to the integrated development environment (IDE) world. The world’s nearly 15 million developers, teams and organizations continue to use desktop IDEs as their workbench of choice. Why has not the development environment moved to the cloud along with just about every other application ? What is wrong with desktop development ? Desktop development environments are becoming outdated, failing more often and causing productivity issues for developers. 1. Complicated configuration management. The substantial configuration management process for a developer’s workspace turns developers into part-time system administrators, 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 each machine. There is no way to synchronize the configurations of components across different machines, and each machine requires similar hardware and operating systems to operate the components identically. 2. Decreased productivity. Many IDEs are memory and disk hogs, with significant boot times. They are so resource-hungry they can starve other applications, such as the Web browser. The net effect is a less productive developer due to a slower machine. 3. Limited accessibility. Desktop developer workspaces are not accessible via mobile devices. Developers who need remote access have to resort to complex and slow solutions such as GotoMyPC if their firewall allows it.
  • INTRODUCTION TO CLOUD COMPUTING 1-17 4. Poor collaboration. These days most developers work as part of a team, so communication and collaboration are critical. But desktop IDEs must outsource collaboration to communication systems outside the developer’s workflow, forcing developers to continuously switch between developing within the IDE and communicating with their team via other means. The solution is cloud development : 1. Development workspace into the cloud. To solve these problems requires moving the entire development workspace into the cloud. The developer’s environment is a combination of the IDE the local build system, the local runtime to test and debug the locally edited code, the connections between these components and the their dependencies with 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 the entire nature of pair programming, code reviews and classroom teaching. 3. System efficiency. The cloud can offer improvements in system efficiency and density, giving each individual workspace a configurable slice of the available memory and compute resources. In the end of course there is more work to do and we are far from tapping into the endless possibilities the cloud computing offers developers. But the benefits are already clear. 1.8. CLOUD SERVICES REQUIREMENTS The cloud computing consists of hardware and software resources made available on the Internet as managed third-party services. “Cloud services requirements typically provide access to advanced software applications and high-end networks of server computers. Service providers create cloud computing systems to serve common business or research needs.” Examples of cloud computing services include : 1. Virtual IT. It configures and utilizes remote third-party servers as extensions to a company’s local IT network. 2. Software. They utilizes commercial software applications or develop and remotely host custom built applications. 3. Network storage. The back up or archive data across the Internet to a provider without needing to know the physical location of storage.
  • 1-18 INTRODUCTION TO CLOUD COMPUTING Cloud computing systems all generally are designed for scalability to support large numbers of customers and surges in demand. Service providers are responsible for installing and maintaining core technology within the cloud. Some customers prefer this model because it limits their own manageability burden. However, customers cannot directly control system 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, while others 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 the Internet and store it on a third-party system. The privacy and security risks associated with this model must be weighed against alternatives. Cloud Computing is in its simplest form an image for the Internet and the process of delivering applications and services through it. Cloud computing within this image there are 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), Platform as 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 the provider’s applications running on a cloud infrastructure. 2. Platform as a Service (PaaS). The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages, libraries, services, and tools supported by the provider. 3. Infrastructure as a Service (IaaS). The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications.
  • 1-19 INTRODUCTION TO CLOUD COMPUTING 1.9. CLOUD AND DYNAMIC INFRASTRUCTURE Cloud computing represents not a revolution but an evolution of existing enterprise computing architectures dating back to the first instance of networked computing. The difference is that today there are vast advances in virtualization in nearly every aspect of the data center. There has also been an emergence of a dynamic understanding and need to control what, how, and when the cloud provides services to the consumers of those services. “This cloud dynamic paradigm must be able to intercept application and data traffic, interpret the current context, and instruct the cloud infrastructure on how to most efficiently deliver the request. These requirements include scalability, adaptability, extensibility, and manageability.” Now the question that remains however what is does this new dynamic computing architecture look like and what is required above and beyond the standard tools we have today to qualify as a “cloud”? An important strategic consideration is the integration of all 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 within the architecture depending on your role. The cloud computing architecture is built upon several functional component blocks. For example compute resources or deployment environments which are organized into specific layers of a pyramid as shown in the Fig.1.14. The width of these layers represents the depth of technical expertise required to build or deploy that layer. Fig. 1.14. Cloud architecture.
  • 1-20 INTRODUCTION TO CLOUD COMPUTING 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 of the pyramid are users accessing the applications in the center is a dynamic control plane that traverses all others and provides real-time connectivity, information coordination, and flow control between the layers. In order to maximize the value of cloud architecture each component must exist in some state or another. For example dynamic control plane elements are a requirement at every layer of the cloud architecture in order for cloud environments to be operationally efficient and on demand. 1.9.1. Designing the Cloud In cloud computing all computing resources that we get are services, such as Infrastructure as 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 in such 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 Oriented Architecture (SOA). “Designing for cloud is really talks about effectively utilizing computing resources 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 money for the computing resources which are not effectively used, also we face problems in scaling up and down. If we design your application architecture, more relied on SOA then it proves to be the good design for cloud, but also we should consider about good coding techniques, otherwise we screw up all things.
  • INTRODUCTION TO CLOUD COMPUTING 1-21 1.9.2. Dynamic Control Plane Traditional 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 it input 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 in response 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 moving between LANs, WLANs, Internet connections and services to the applications they consume. Which can also move between cloud centers based on different needs of the business? As hardware resources and servers are decommissioned, as applications are moved from development to production, as entire applications are moved from the internal data center to a cloud provider the cloud architecture requires a dynamic control plane that monitors the data and ensures that it is constantly connected in the best possible manner. The dynamic control pane must be able to Intercept traffic as it traverses the cloud, Interpret the data, and instruct the cloud architecture on how to efficiently connect the user to the appropriate application instance. (a) Intercept traffic. The dynamic control plane, must be in a position to have visibility to all traffic between the user and the application and across the entire cloud platform. Without the ability to intercept traffic and data requests, the dynamic control plane cannot appropriately do any of the other things it needs to do. Not only must it be able to see the actual flow it must also be able to intercept the metadata or context of the traffic. The dynamic control plane must have the visibility 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 of context in relation to the individual request, business policy, and other application and cloud traffic. The dynamic control plane must constantly evaluate the context and policy to make intelligent decisions at any given movement. (c) Instruct the cloud architecture. Once the dynamic control plane has all the available information and analyzed the context it must instruct the architecture on how best to connect the two endpoints. The dynamic control plane must also communicate with the infrastructure the data plane to change the current delivery model to meet the needs identified. This might require sending requests to the a new instance of the application or to a new data center, changing compression and encryption settings, or even instructing other components in the architecture to create or destroy resources necessary to delivering that application or data. It might also be necessary for the dynamic control plane to simply deny access based on the policies and context at any given movement.
  • 1-22 INTRODUCTION TO CLOUD COMPUTING 1.9.3. Cloud Architecture: Utility Computing — IaaS Built from core components that include compute resources and management resources, the base layer of the cloud 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 components most often supplied by vendors who provide IaaS solutions to their customers as shown in Fig.1.16. Fig. 1.16. IaaS and cloud architecture. “Infrastructure as a Service (IaaS) is a cloud computing model based on the premise that the entire infrastructure is deployed in an on-demand model. This almost always takes the form of a virtualized infrastructure and infrastructure services that enables the customer to deploy virtual machines as components that are managed through a console.” The physical resources servers, storage, and network are maintained by the cloud provider while the infrastructure deployed on top of those components is managed by the user. In this layer of the architecture each component is responsible for providing actionable data to the other components and performing specific tasks to successfully execute an auto-provisioning or decommissioning scenario. IaaS is often considered utility computing because it treats compute resources much like utilities such as electricity are treated. When the demand for capacity increases, more computing resources are provided by the provider. As demand for capacity decreases the amount of computing resources available decreases appropriately. This enables the on-demand as well as the “pay-peruse” properties of cloud architecture. There the two component of IaaS :
  • INTRODUCTION TO CLOUD COMPUTING 1-23 (i) Compute resources. Compute resources are one of the most basic components of the cloud bare metal resources such as CPU, memory, and disk that ultimately power applications built within the cloud. This might be a hosting service provider with hundreds or thousands of installed server systems waiting to be used by subscribers. (ii) Manage resources. Manage resources are the components required to turn bare metal into usable server platforms with the appropriate CPU, memory, and disk resources necessary to support the applications that will be built upon them. Manage resources are also responsible for continuing to monitor the resource needs and ensuring that the application receives all the compute resources it needs and moving the application or finding additional resources. This component is most often synonymous with virtual machine management or software provisioning systems which can take the bare metal and apply operating systems, patches, and application logic and apply higher-level network connectivity such as IP addressing and more. 1.9.4. Cloud Architecture: Framework Computing — PaaS Many 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 a convenient way for businesses to build custom applications without worrying about the details that lay beneath the platforms. While many platforms are based on standards for example Java EE others are proprietary in nature including Google AppEngine and architecture frameworks developed and deployed by enterprise architects. “Platform as a Service (PaaS) is a cloud computing model in which a specific development and deployment platform for example, Java EE, IBM WebSphere, Oracle, Google Apps, .NET, BizTalk is the basis for deployment. These clouds are proprietary in the sense that only applications developed for the specific platform can be deployed in the cloud.” PaaS is a kind of framework computing in that the platform provided is the core framework in which applications are specifically developed. These applications will not run 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 concept of framework computing comes from architectures in which a layer of capabilities and services are provided that abstract developers from the underlying details. This approach leads to more rapid development and deployment of applications as shown in Fig.1.17.
  • 1-24 INTRODUCTION TO CLOUD COMPUTING Fig. 1.17. PaaS and cloud architecture. (i) Development environment. All platforms require a development environment in which the applications are designed, built, tested, and validated outside of the production environment. These development environments can be traditional integrated development environments (IDE) that are configured to deploy to resources within a PaaS environment or they can be integrated directly as part of the PaaS offering. Microsoft Visual Studioderived environments are as capable of connecting to internal as external instances of Microsoft-specific platform, thus enabling offline development of applications to be deployed in a PaaS environment. Increasingly, less standard and more proprietary offerings those that are wholly dependent on resources that exist only in the PaaS environment such as Salesforce.com’s Force.com provide a PaaS-hosted development environment through which developers can build, test, and deploy their solutions. (ii) Deployment environment. A second component required is to deploy the application into production once it is ready to be consumed by the end users. This ability is essentially the run-time environment in which the applications are deployed. The difference between the PaaS run-time environment and that of hosted or even traditional enterprise deployed platforms is the expectation of on-demand scalability associated with PaaS that does not exist in other incarnations. This on-demand scalability can result from deploying the environment on a generic IaaS, or from specifically building out and connecting the required development, deployment, and dynamic control plane. The latter results in the creation of a platform-specific IaaS, with the required components arranged specifically to provision and decommission resources based on the unique needs of the deployment environment.
  • INTRODUCTION TO CLOUD COMPUTING 1-25 1.9.5. Cloud Architecture : Business Computing — SaaS At the top of the pyramid is general business computing as shown in Fig.1.18. This is where many business organizations find themselves with the ability to identify a business need but without the ability to build an application or the infrastructure upon which it runs. Instead of relying on an internal IT organization to build and deploy infrastructure and platforms, business stakeholders simply select an application and run it. Most organizations choose this option because the capital operating expenses and hours required to implement standardized applications are not financially feasible, not an efficient use of IT resources simply beyond the capabilities of the organization. “Software as a Service (SaaS) is a cloud computing model in which prebuilt applications such as CRM, SFA, word processing, spreadsheets, and HRM are offered to customers via a web browser or other local interface such as a mobile device application.” These applications are generally customizable though the customer need not be concerned with the underlying infrastructure or the development platform or the actual implementation. Fig. 1.18. SaaS and Cloud Architecture. Applications are the only component here. Whether the application is the result of building utility computing, followed by a platform, or it is simply an application deployed on a server, this is what users interact with. Users do not care how it was built, where it resides, or the compute resources required to deliver it. They simply expect it to be available when they want it, responsive and well-performing enough to be useful, and expect it to be secure regardless of where, when, and how they access it.
  • 1-26 INTRODUCTION TO CLOUD COMPUTING 1.10. ADVANTAGES AND DISADVANTAGES OF CLOUD COMPUTING Cloud computing offers numerous advantages both to end users and businesses of all sizes. The obvious huge advantage is that we no more have to support the infrastructure or have the knowledge necessary to develop and maintain the infrastructure, development environment 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 outsourcing all the hassle of IT infrastructure. Some of the most important advantages of cloud computing and discuss them in more detail. Those will include both a company’s and an end-user’s perspective.” 1. Cost efficiency. This is the biggest advantage of cloud computing, achieved by the elimination of the investment in stand-alone software or servers. By leveraging cloud’s capabilities, companies can save on licensing fees and at the same time eliminate overhead charges such as the cost of data storage, software updates, management etc. The cloud is in general available at much cheaper rates than traditional approaches and can significantly lower the overall IT expenses. At the same time, convenient and scalable charging models have emerged (such as one-time-payment and pay-as-you-go), making the cloud even more attractive. 2. Convenience and continuous availability. Public clouds offer services that are available wherever the end user might be located. This approach enables easy access to information and accommodates the needs of users in different time zones and geographic locations. As a side benefit, collaboration booms since it is now easier than ever to access, view and modify shared documents and files. 3. Increased storage capacity. The cloud can accommodate and store much more data compared to a personal computer and in a way offers almost unlimited storage capacity. It eliminates worries about running out of storage space and at the same time It spares businesses the need to upgrade their computer hardware, further reducing the overall IT cost. 4. Backup and recovery. The process of backing up and recovering data is simplified since those now reside on the cloud and not on a physical device. The various cloud providers offer reliable and flexible backup/recovery solutions. In some cases, the cloud itself 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 the typical IT infrastructure and It takes fewer resources to compute, thus saving energy. For example, when servers are not used, the infrastructure normally scales down, freeing up resources and consuming less power. At any moment, only the resources that are truly needed are consumed by the system.
  • INTRODUCTION TO CLOUD COMPUTING 1-27 6. Resiliency and redundancy. A cloud deployment is usually built on a robust architecture thus providing resiliency and redundancy to its users. The cloud offers automatic failover between hardware platforms out of the box, while disaster recovery services are also often included. 7. Scalability and performance. Quick deployment and ease of integration. A cloud system can be up and running in a very short period, making quick deployment a key benefit. On the same aspect, the introduction of a new user in the system happens instantaneously, eliminating waiting periods. 8. Device diversity and location independence. Cloud computing services can be accessed 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 its adopters. However being a tool it also comes with its set of problems and inefficiencies.” 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 data that we are not comfortable having on the Internet. That being said, established, reliable cloud computing vendors will have the latest, most sophisticated data security systems possible 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 implicit dependency on the provider. This is what the industry calls vendor lock-in since it is difficult, and sometimes impossible, to migrate from a provider once we have rolled with him. If a user wishes to switch to some other provider, then it can be really painful and cumbersome to transfer huge data from the old provider to the new one. This is another reason why we should carefully and thoroughly contemplate all options when picking a vendor. 3. Technical difficulties and downtime. Certainly the smaller business will enjoy not having to deal with the daily technical issues and will prefer handing those to an established IT company, however we should keep in mind that all systems might face dysfunctions from time to time. Outage and downtime is possible even to the best cloud service providers, as the past has shown. 4. Limited control. Since the applications and services run on remote, third party virtual environments, companies and users have limited control over the function and execution of the hardware and software. Moreover, since remote software is being
  • 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 we are not locking your business into using their proprietary applications or formats. We can not insert a document created in another application into a Google Doc spreadsheet, for instance. Also make sure that we can add and subtract cloud computing users as necessary as your business grows or contracts. 6. Increased weakness. Related to the security and privacy mentioned before, note that cloud based solutions are exposed on the public internet and are thus a more vulnerable target for malicious users and hackers. Nothing on the Internet is completely secure and even the biggest players suffer from serious attacks and security breaches. Due to the interdependency of the system, If there is a compromise one of the machines that data is stored, there might be a leakage of personal information to the world. 1.11. CLOUD ADOPTION AND RUDIMENTS The cloud services should now be given consideration by any and every organization as per the trend 2012 and USA cloud adoption. It is an increasing trend in terms of both competence and coverage. Cloud adoption statistics show 7 percent of small companies and 17 percent of mid-sized companies showing some kind of cloud activity in early 2010 which quickly doubled just 18 months later to 13 percent and 36 percent respectively as 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 a managed data center’s servers for small to mid-sized businesses. The five top most businesses to be benefited from this adoption as shown in Fig. 1.20 are IT and technology, Education, Manufacturing, Business and professional services and Government.
  • 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 an experienced vendor. They can provide a greater level of service to support a more complex IT infrastructure due to the amount of capital invested in new technology and facilities. Small and mid-sized businesses likely do not have the budget or time to build or support in-house IT. 2. Education. Cloud applications will increase the efficiency of educational system nation wide or statewide through the latest technologies which are also made available to the less privileged education centers not merely the top institutions. Geographical location would no longer be a barrier in the class attendance. This not only enhances the knowledge sharing but also fortifies the team collaboration. 3. Manufacturing. Manufacturers take the cloud applications as the most important tool for the IT advancement in the future. It allows the IT manufacturers to avoid the technical as well as business issues that would otherwise have taken place in their own data centers. This also allows them to pay for the utilized services hence becoming a cost effective solution. In cloud computing, the huge remote internet servers are accessed by the manufacturers just the same way as their own. 4. Business and professional services. The manufacturers are now able to be virtually present at every location in the world through employing three major components namely, Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS). This enables the manufacturers to explore business opportunities globally and link with the IT infrastructure. Cloud computing can possibly provide the travel and hospitality companies with many convenient solutions in this competitive world. Without any paper expense, it allows people to book the desired flights for travelling, reserve places for accommodation and not 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 as all 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. This industry comprises of patients, insurance companies, hospitals, laboratories and physicians. The cloud benefits the health industry in innumerable ways. Better quality patient data updates, easier updates, better communication with the patients, higher consumer lifestyle choices and more appropriate choice of following the specified courses of patients
  • 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 government organizations 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 get benefited from cloud computing. SOLVED QUESTIONS Q. 1. What is cloud computing ? Ans. Cloud computing is the delivery of computing services over the Internet. Whether they realize it or not many people use cloud computing services for their own personal needs. For example, many people use social networking sites or webmail, and these are cloud services. Photographs that people once kept on their own computers are now being 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 networking site 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 advertising purposes 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 information is extremely important. Given that personal information is being turned over to another organization, often in another country, it is vital to ensure that the information is safe and that 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 indefinitely or used for other purposes. Such information could also be accessed by government agencies, 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 for rather 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 and operating computers and networks. If an organization uses a cloud provider, it does not need to spend money on information technology infrastructure, or buy hardware or software licences. Cloud services can often be customized and flexible to use, and providers can offer advanced services that an individual company might not have the money or expertise to develop.
  • 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 could offer better protection of personal information compared with current security and privacy practices. Through economies of scale, large cloud providers may be able to use better security technologies than individuals or small companies can and have better backup and disaster-recovery capabilities. Cloud providers may also be motivated to build privacy protections into new technology, and to support better audit trails. On the other hand, while cloud computing may not increase the risk that personal information 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 cyber criminals, 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 via the Internet. This hardware is typically owned and operated by a third party on a consolidated basis in one or more data center locations. The machines can run any combination of operating systems. Q. 7. Define Cloud services with example. Ans. Any web-based application or service offered via cloud computing is called a cloud service. Cloud services can include anything from calendar and contact applications to 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” anywhere in the world on demand. The consumers are assured that the Cloud infrastructure is very robust and will always be available at any time. Computing services need to be highly reliable, scalable, and autonomic to support ubiquitous access, dynamic discovery and computability.” The vision of cloud computing are : (a) Service provisioning model. This vision of the computing utility based on the service provisioning model anticipates the massive transformation of the entire
  • 1-32 INTRODUCTION TO CLOUD COMPUTING computing industry in the 21st century whereby computing services will be readily available on demand, like other utility services available in today’s society. (b) Computer utilities. It enables individual computers to communicate with any other computers located elsewhere in the world. This internetworking of standalone computers provide potential of utilizing endless amount of distributed computing resources owned by various owners. (c) Grid computing. Grid computing enables the sharing, selection, and aggregation of a wide variety of physically distributed resources including supercomputers, storage systems, data sources, and specialized devices owned by different organizations 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 business processes and IT services so that business processes can be seamlessly automated using IT services. (f) Market-oriented computing. It views computing resources in economic terms such that resource users will need to pay resource providers for utilizing the computing resources. (g) Virtualized compute and storage technologies. Today the latest paradigm to emerge is that of Cloud computing which promises reliable services delivered through next-generation data centers that are built on virtualized compute and storage 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 described by NIST are as following : (a) On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider. (b) Broad network access. The capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and workstations). (c) Resource pooling. The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. (d) Rapid elasticity. The capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand.
  • INTRODUCTION TO CLOUD COMPUTING 1-33 (e) Measured service. Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the 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 end users. For developers, cloud computing provides increased amounts of storage and processing power to run the applications they develop. Cloud computing also enables new ways to access information, process and analyze data, and connect people and resources from any location anywhere in the world. For users, documents hosted in the cloud always exist, no matter what happens to the user’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 traditional network 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 users 2. Improved performance 3. Lowers the infrastructure costs 4. Fewer maintenance issues 5. Lower software costs 6. Instant software updates 7. Increased computing power 8. Unlimited storage capacity 9. Increased data safety 10. Improved compatibility between operating systems 11. Improved document format compatibility 12. Easier group collaboration 13. Universal access to documents 14. Latest version availability 15. Removes the tether to specific devices Disadvantages : 1. Requires a constant internet connection 2. Does not work well with low-speed connections 3. Can be slow 4. Features might be limited 5. Stored data might not be secure 6. If the cloud loses your data you are screwed
  • 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) (b) (c) (d) Amazon Google App Engine IBM Salesforce.com Q. 14. Explain the cloud computing deployment model. Ans. The National Institute of Standards and Technology (NIST) is emerging as the preferred 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. In other words the proprietary network or the data center supplies hosted services to a certain group of people. (ii) Community cloud. The cloud infrastructure is shared by several organizations with common 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 general public. It may be owned, managed, and operated by a business, academic, or government organization, 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 distinct cloud infrastructures such as private, community, or public that remain unique entities, but are bound together by standardized or proprietary technology that enables data and application 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 identifies the major performer/Actor their activities and functions in cloud computing. It represents
  • 1-35 INTRODUCTION TO CLOUD COMPUTING a generic high-level architecture and is intended to facilitate the understanding of the requirements, uses, characteristics and standards of cloud computing. The NIST cloud computing reference architecture defines five major performers. Each performer is an entity may be a person or an organization that participates in a transaction or process and/or performs tasks in cloud computing. The briefly lists of the actors / performers defined in the NIST cloud computing reference architecture in Table 1.2. The general activities 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 relationship with, and uses service from, cloud providers. Cloud Provider A person, organization, or entity responsible for making a available service to interested parties. Cloud Auditor A party that can conduct independent assessment of cloud services, information system operations, performance and security of the cloud implementation. Cloud Broker An entity that manages the use, performance and delivery of cloud services, and negotiates relationship between cloud providers and cloud consumers. Cloud Carrier An intermediary that provides connectivity and transport of cloud services from cloud providers to cloud consumers. A cloud consumer may request cloud services from a cloud provider directly or via a cloud broker. A cloud auditor conducts independent audits and may contact the others to collect necessary information. Q. 16. What are the features of robust cloud development ? Who it offers ? Ans. The features of robust cloud development are : (a) (b) (c) (d) (e) Dynamic web serving Full support for all common web technologies Persistent storage with queries, sorting, and transactions Automatic scaling and load balancing 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 the Internet. 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.
  • 1-36 INTRODUCTION TO CLOUD COMPUTING A good example of web services are the “mashups” created by users of the Google Maps API. With these custom apps, the data that feeds the map is provided by the developer, 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 enables application service providers to lease data center capabilities for deploying applications depending on user QoS (Quality of Service) requirements. Cloud applications environment have different: composition, configuration, and Deployment requirements. Quantifying the performance of resource allocation policies and application scheduling algorithms at finer details in Cloud computing environments for different application and service models under : (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 and simulation of Cloud computing environments are used. The toolkit supports modeling and creation 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 Centers to enable a study on federation and associated policies for migration of VMs 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 on the Internet as managed third-party services. Examples of cloud computing services include : 1. Virtual IT. It configures and utilizes remote, third-party servers as extensions to a company’s local IT network 2. Software. They utilizes commercial software applications, or develop and remotely host custom built applications 3. Network storage. The back up or archive data across the Internet to a provider without needing to know the physical location of storage. Cloud computing systems all generally are designed for scalability to support large numbers of customers and surges in demand. Service providers are responsible for installing and maintaining core technology within the cloud. Some customers prefer this model because it limits their own manageability burden. However, customers cannot directly control system 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
  • 1-37 INTRODUCTION TO CLOUD COMPUTING of delivering applications and services through it. Cloud computing within this image there are a number of services that are delivered via the Internet. These include Software as 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 use the provider's applications running on a cloud infrastructure. (b) Platform as a Service (PaaS). The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages, libraries, services, and tools supported by the provider. (c) Infrastructure as a Service (IaaS). The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can 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 (c) Internet issues (e) Compatibility issues (b) Business model issues (d) Security 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 efficiently deliver the request. These requirements include scalability, adaptability, extensibility, and manageability. 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 of the pyramid are users accessing the applications in the center is a dynamic control plane that 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 components that include compute resources and management resources, the base layer of the cloud 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 components most often supplied by vendors who provide IaaS solutions to their customers (b) Cloud architecture - Framework Computing- PaaS. Many 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 a convenient way for businesses to build custom applications without worrying about the details that lay beneath the platforms.
  • 1-38 INTRODUCTION TO CLOUD COMPUTING (c) Cloud architecture - Business Computing- SaaS. At the top of the pyramid is general business computing. This is where many business organizations find themselves with the ability to identify a business need but without the ability to build 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 an experienced vendor. They can provide a greater level of service to support a more complex IT infrastructure due to the amount of capital invested in new technology and facilities. (b) Education. Geographical location would no longer be a barrier in the class attendance. This not only enhances the knowledge sharing but also fortifies the team collaboration. (c) Manufacturing. It allows the IT manufacturers to avoid the technical as well as business issues that would otherwise have taken place in their own data centers. (d) Business and professional services. The manufacturers are now able to be virtually present at every location in the world through employing three major components namely; Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS). UNSOLVED QUESTIONS 1. 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