cloud computing

profilealisgh
topic_1.pptx

1

ITC561 Cloud Computing

Topic 1: Cloud Basics

NOTICE: Slides are extracted from Cloud Computing: Concepts, Technology & Architecture by Thomas Erl; Ricardo Puttini; Zaigham Mahmood and other resources.

© PRENTICE HALL

1

At the end of this topic you should be able to:

understand the origins of Cloud Computing and gain an insight into its use and influences;

comprehend the basic concepts and terminology of Cloud Computing;

define and distinguish the goals and benefits of Cloud Computing;

comprehend the risks and challenges presented by Cloud Computing.

Required reading

Prescribed text: Erl, Chapter 3: Understanding Cloud Computing

Other: Liu, F., Tong, J., Mao, J., Bohn, R. B., Messina, J. V., Badger, M. L., & Leaf, D. M. (2011). NIST Cloud Computing Reference Architecture (NIST SP-500-292). Gaithersburg, MD: National Institute of Standards and Technology. Retrieved from http://www.nist.gov/customcf/get_pdf.cfm?pub_id= 909505

Learning Outcomes

A Brief History

Definitions

Business Drivers

Capacity Planning

Cost Reduction

Organizational Agility

Technology Innovations

Clustering

Grid Computing

Virtualization

Technology Innovations vs. Enabling Technologies

3.1 Origins and Influences

John McCarthy publicly proposed in 1961: “If computers of the kind I have advocated become the computers of the future, then computing may someday be organized as a public utility just as the telephone system is a public utility. ... The computer utility could become the basis of a new and important industry.”

In 1969, Leonard Kleinrock stated: “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’ ...”.

Since the mid-1990s through various incarnations of search engines (Yahoo!, Google), e-mail services (Hotmail, Gmail), open publishing platforms (MySpace, Facebook, YouTube), and other types of social media (Twitter, LinkedIn). Though consumer-centric, these services popularized and validated core concepts that form the basis of modern-day cloud computing.

In the late 1990s, Salesforce.com pioneered the notion of bringing remotely provisioned services into the enterprise.

A Brief History

In 2002, Amazon.com launched the Amazon Web Services (AWS) platform, a suite of enterprise-oriented services that provide remotely provisioned storage, computing resources, and business functionality.

A slightly different evocation of the term “Network Cloud” or “Cloud” was introduced in the early 1990s throughout the networking industry.

It wasn’t until 2006 that the term “cloud computing” emerged in the commercial arena. It was during this time that Amazon launched its Elastic Compute Cloud (EC2) services that enabled organizations to “lease” computing capacity and processing power to run their enterprise applications. Google Apps also began providing browser-based enterprise applications in the same year, and three years later, the Google App Engine became another historic milestone.

A Brief History (cont..)

A Gartner report listing cloud computing at the top of its strategic technology areas further reaffirmed its prominence as an industry trend by announcing its formal definition as:

“...a style of computing in which scalable and elastic IT-enabled capabilities are delivered as a service to external customers using Internet technologies.”

Forrester Research provided its own definition of cloud computing as:

“...a standardized IT capability (services, software, or infrastructure) delivered via Internet technologies in a pay-per-use, self-service way.”

NIST:

“Cloud computing is a model for enabling ubiquitous, 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 is composed of five essential characteristics, three service models, and four deployment models.”

This book provides a more concise definition:

“Cloud computing is a specialized form of distributed computing that introduces utilization models for remotely provisioning scalable and measured resources.”

Definitions

Capacity planning is the process of determining and fulfilling future demands of an organization’s IT resources, products, and services.

Capacity planning is focused on minimizing this discrepancy to achieve predictable efficiency and performance.

Different capacity planning strategies exist:

Lead Strategy – adding capacity to an IT resource in anticipation of demand

Lag Strategy – adding capacity when the IT resource reaches its full capacity

Match Strategy – adding IT resource capacity in small increments, as demand increases

Planning for capacity can be challenging because it requires estimating usage load fluctuations.

There is a constant need to balance peak usage requirements without unnecessary over-expenditure on infrastructure.

An example is outfitting IT infrastructure to accommodate maximum usage loads which can impose unreasonable financial investments. In such cases, moderating investments can result in under-provisioning, leading to transaction losses and other usage limitations from lowered usage thresholds.

Business Drivers - Capacity Planning

The growth of IT environments often corresponds to the assessment of their maximum usage requirements.

Two costs need to be accounted for: the cost of acquiring new infrastructure, and the cost of its ongoing ownership.

Common forms of infrastructure-related operating overhead include the following:

technical personnel required to keep the environment operational

upgrades and patches that introduce additional testing and deployment cycles

utility bills and capital expense investments for power and cooling

security and access control measures that need to be maintained and enforced to protect infrastructure resources

administrative and accounts staff that may be required to keep track of licenses and support arrangements

The on-going ownership of internal technology infrastructure can encompass burdensome responsibilities that impose compound impacts on corporate budgets.

Business Drivers - Cost Reduction

Organizational agility is the measure of an organization’s responsiveness to change.

An IT enterprise often needs to respond to business change by scaling its IT resources beyond the scope of what was previously predicted or planned for.

In other cases, changing business needs and priorities may require IT resources to be more available and reliable than before.

On a broader scale, the up-front investments and infrastructure ownership costs that are required to enable new or expanded business automation solutions may themselves be prohibitive enough for a business to settle for IT infrastructure of less-than-ideal quality, thereby decreasing its ability to meet real-world requirements.

Worse yet, the business may decide against proceeding with an automation solution altogether upon review of its infrastructure budget, because it simply cannot afford to. This form of inability to respond can inhibit an organization from keeping up with market demands, competitive pressures, and its own strategic business goals.

Business Drivers - Organizational Agility

A cluster is a group of independent IT resources that are interconnected and work as a single system.

System failure rates are reduced while availability and reliability are increased, since redundancy and failover features are inherent to the cluster.

Component devices that form a cluster are kept in synchronization through dedicated, high-speed communication links.

The basic concept of built-in redundancy and failover is core to cloud platforms.

Technology Innovations Clustering

A computing grid (or “computational grid”) provides a platform in which computing resources are organized into one or more logical pools. These pools are collectively coordinated to provide a high performance distributed grid, sometimes referred to as a “super virtual computer.”

As a result, grid computing systems can involve computing resources that are heterogeneous and geographically dispersed, which is generally not possible with cluster computing-based systems.

For example, grid computing is based on a middleware layer that is deployed on computing resources.

This middle tier can contain load balancing logic, failover controls, and autonomic configuration management, each having previously inspired similar—and several more sophisticated—cloud computing technologies. It is for this reason that some classify cloud computing as a descendant of earlier grid computing initiatives.

Technology Innovations Grid Computing

Virtualization represents a technology platform used for the creation of virtual instances of IT resources. A layer of virtualization software allows physical IT resources to provide multiple virtual images of themselves so that their underlying processing capabilities can be shared by multiple users.

The virtualization process severs this software-hardware dependency, as hardware requirements can be simulated by emulation software running in virtualized environments.

As cloud computing evolved, a generation of modern virtualization technologies emerged to overcome the performance, reliability, and scalability limitations of traditional virtualization platforms.

Technology Innovations Virtualization

These are distinguished as cloud-enabling technologies, the following of which are covered in Chapter 5:

• Broadband Networks and Internet Architecture

• Data Center Technology

• (Modern) Virtualization Technology

• Web Technology

• Multitenant Technology

• Service Technology

Technology Innovations vs. Enabling Technologies

Cloud

IT Resource

On-Premise

Cloud Consumers and Cloud Providers

Scaling

Horizontal Scaling

Vertical Scaling

Cloud Service

Cloud Service Consumer

3.2 Basic Concepts and Terminology

A cloud refers to a distinct IT environment that is designed for the purpose of remotely provisioning scalable and measured IT resources.

The term originated as a metaphor for the Internet which is, in essence, a network of networks providing remote access to a set of decentralized IT resources.

Prior to cloud computing becoming its own formalized IT industry segment, the symbol of a cloud was commonly used to represent the Internet in a variety of specifications and mainstream documentation of Web-based architectures.

Cloud

Figure 3.1 The symbol used to denote the boundary of a cloud environment.

It is important to distinguish the term “cloud” and the cloud symbol from the Internet. As a specific environment used to remotely provision IT resources, a cloud has a finite boundary.

There are many individual clouds that are accessible via the Internet. Whereas the Internet provides open access to many Web-based IT resources, a cloud is typically privately owned and offers access to IT resources that is metered.

A cloud can be based on the use of any protocols that allow for the remote access to its IT resources.

Cloud (cont..)

An IT resource is a physical or virtual IT-related artifact that can be either software-based, such as a virtual server or a custom software program, or hardware-based, such as a physical server or a network device

IT Resource

Figure 3.2 Examples of common IT resources and their corresponding symbols.

IT Resource (cont..)

Figure 3.3 A cloud is hosting eight IT resources: three virtual servers, two cloud services, and

three storage devices.

As a distinct and remotely accessible environment, a cloud represents an option for the deployment of IT resources.

An IT resource that is hosted in a conventional IT enterprise within an organizational boundary (that does not specifically represent a cloud) is considered to be located on the premises of the IT enterprise, or on-premise for short.

The term “on-premise” is another way of stating “on the premises of a controlled IT environment that is not cloud-based.”

On-premise is used to qualify an IT resource as an alternative to “cloud-based.” An IT resource that is on-premise cannot be cloud-based, and vice-versa.

On-Premise

The party that provides cloud-based IT resources is the cloud provider.

The party that uses cloud-based IT resources is the cloud consumer.

These terms represent roles usually assumed by organizations in relation to clouds and corresponding cloud provisioning contracts.

Cloud Consumers and Cloud Providers

Scaling, from an IT resource perspective, represents the ability of the IT resource to handle increased or decreased usage demands.

The following are types of scaling:

• Horizontal Scaling – scaling out and scaling in

• Vertical Scaling – scaling up and scaling down

Scaling

Horizontal Scaling

Figure 3.4 An IT resource (Virtual Server A) is scaled out by adding more of the same IT

resources (Virtual Servers B and C).

Vertical Scaling

Figure 3.5 An IT resource (a virtual server with two CPUs) is scaled up by replacing it with a more

powerful IT resource with increased capacity for data storage (a physical server with four CPUs).

A comparison of horizontal and vertical scaling

A cloud service is any IT resource that is made remotely accessible via a cloud.

A cloud service can exist as a simple Web-based software program with a technical interface invoked via the use of a messaging protocol, or as a remote access point for administrative tools or larger environments and other IT resources.

A multitude of models for generic types of cloud services have emerged, most of which are labeled with the “as-a-service” suffix.

Cloud Service

Cloud Service (cont..)

Figure 3.6 A cloud service with a published technical interface is being accessed by a consumer outside of the cloud (left). A cloud service that exists as a virtual server is also being accessed from outside of the cloud’s boundary (right). The cloud service on the left is likely being invoked by a consumer program that was designed to access the cloud service’s published technical interface. The cloud service on the right may be accessed by a human user that has remotely logged on to the virtual server.

The cloud service consumer is a temporary runtime role assumed by a software program when it accesses a cloud service.

Cloud service consumers can include software programs and services capable of remotely accessing cloud services with published service contracts, as well as workstations, laptops and mobile devices running software capable of remotely accessing other IT resources positioned as cloud services.

Cloud Service Consumer

Figure 3.7 Examples of cloud service consumers. Depending on the nature of a given diagram, an artifact labeled as a cloud service consumer may be a software program or a hardware device (in which case it is implied that it is running a software program capable of acting as a cloud service consumer).

Reduced Investments and Proportional Costs

Increased Scalability

Increased Availability and Reliability

3.3 Goals and Benefits

Similar to a product wholesaler that purchases goods in bulk for lower price points, public cloud providers base their business model on the mass-acquisition of IT resources that are then made available to cloud consumers via attractively priced leasing packages.

The most common economic rationale for investing in cloud-based IT resources is in the reduction or outright elimination of up-front IT investments, namely hardware and software purchases and ownership costs.

Elimination or minimization of up-front financial commitments allows enterprises to start small and accordingly increase IT resource allocation as required.

Reduction of up-front capital expenses allows for the capital to be redirected to the core business investment.

Reduced Investments and Proportional Costs

Common measurable benefits to cloud consumers include:

• On-demand access to pay-as-you-go computing resources on a short-term basis (such as processors by the hour), and the ability to release these computing resources when they are no longer needed.

• The perception of having unlimited computing resources that are available on demand, thereby reducing the need to prepare for provisioning.

• The ability to add or remove IT resources at a fine-grained level, such as modifying available storage disk space by single gigabyte increments.

• Abstraction of the infrastructure so applications are not locked into devices or locations and can be easily moved if needed.

Reduced Investments and Proportional Costs (cont..)

clouds can instantly and dynamically allocate IT resources to cloud consumers, on-demand or via the cloud consumer’s direct configuration.

cloud consumers to scale their cloud-based IT resources to accommodate processing fluctuations and peaks automatically or manually.

cloud-based IT resources can be released (automatically or manually) as processing demands decrease.

Besides the evident financial gain to the automated reduction of scaling, the ability of IT resources to always meet and fulfill unpredictable usage demands avoids potential loss of business that can occur when usage thresholds are met.

Increased Scalability

Increased Scalability (cont..)

Figure 3.8 An example of an organization’s changing demand for an IT resource over the course of a day.

The availability and reliability of IT resources are directly associated with tangible business benefits.

Runtime failures that are not immediately corrected can have a more significant impact during high-volume usage periods.

An IT resource with increased availability is accessible for longer periods of time.

An IT resource with increased reliability is able to better avoid and recover from exception conditions.

Increased Availability and Reliability

3.4 Risks and Challenges

The moving of business data to the cloud means that the responsibility over data security becomes shared with the cloud provider.

It can be difficult to establish a security architecture that spans such a trust boundary without introducing vulnerabilities, unless cloud consumers and cloud providers happen to support the same or compatible security frameworks—which is unlikely with public clouds.

The extent to which the data is secure is now limited to the security controls and policies applied by both the cloud consumer and cloud provider.

Increased Security Vulnerabilities

Increased Security Vulnerabilities (cont..)

Figure 3.9 The shaded area with diagonal lines indicates the overlap of two organizations trust boundaries.

Cloud consumers are usually allotted a level of governance control that is lower than that over on-premise IT resources.

Consider the following examples:

• An unreliable cloud provider may not maintain the guarantees it makes in the SLAs that were published for its cloud services. This can jeopardize the quality of the cloud consumer solutions that rely on these cloud services.

• Longer geographic distances between the cloud consumer and cloud provider can require additional network hops that introduce fluctuating latency and potential bandwidth constraints.

A cloud governance system is established through SLAs, given the “as-a-service” nature of cloud computing.

A cloud consumer must keep track of the actual service level being offered and the other warranties that are made by the cloud provider.

Reduced Operational Governance Control

Reduced Operational Governance Control (cont..)

Figure 3.10 An unreliable network connection compromises the quality of communication between cloud

consumer and cloud provider environments.

Due to a lack of established industry standards within the cloud computing industry, public clouds are commonly proprietary to various extents.

For cloud consumers that have custom-built solutions with dependencies on these proprietary environments, it can be challenging to move from one cloud provider to another.

Limited Portability Between Cloud Providers

Figure 3.11 A cloud consumer’s application has a decreased level of portability when assessing a

potential migration from Cloud A to Cloud B, because the cloud provider of Cloud B does

not support the same security technologies as Cloud A.

Third-party cloud providers will frequently establish data centers in affordable or convenient geographical locations.

Cloud consumers will often not be aware of the physical location of their IT resources and data when hosted by public clouds.

For example, some UK laws require personal data belonging to UK citizens to be kept within the United Kingdom.

Another potential legal issue pertains to the accessibility and disclosure of data. For example, a European cloud consumer’s data that is located in the U.S. can be more easily accessed by government agencies (due to the U.S. Patriot Act) when compared to data located in many European Union countries.

Most regulatory frameworks recognize that cloud consumer organizations are ultimately responsible for the security, integrity, and storage of their own data, even when it is held by an external cloud provider.

Multi-Regional Compliance and Legal Issues

NIST Cloud Computing Reference Architecture

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

NIST Special Publication 500-292

No tutorial for this week

Student should visit Podcast of Week 1 intro in Resource Folder to recap missed out key subject introduction..

Tutorial