36
1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Embed Size (px)

Citation preview

Page 1: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

1

NETE4631Cloud-enabling technologies and

standards

Lecture Notes #3

Page 2: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

2

Recap – Definition if Cloud Computing “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.” (A definition by the US National institute of standards and technology (NIST))

Some of the characteristics Distributed computing at a massive scale On demand elasticity Exploiting existing technologies (Grid, Utility,

Virtualization) Pay per use model Driven by economies of scale

Page 3: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Recap (2) - Cloud Types

3

Page 4: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

4

Recap (3) - Benefits VS Challenges

Benefits ChallengesOn-demand self-serviceBroad network accessResource poolingRapid elasticityMeasured serviceLower costsEase of utilizationQuality of ServiceReliabilityOutsourced IT managementSimplified maintenance and upgradeLow barrier to entry

SecurityInteroperabilityReliabilityLaws and regulationsOrganizational changesCost

Page 5: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Enabling Technologies for Cloud

5

Modified from Building the cloud Virtualized Optical WAN

Enterprise Data Center – New York

Cloud Data Center– Dallas

Enterprise Data Center – Newark

WAN

Key attributes:• Long distance VM• Elastic bandwidth

Cloud Data Center – Miami

PublicCloud

vCenterServer

Users

Page 6: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Lecture Outline

Enabling technologies for cloud Enabling technologies – HW Enabling technologies – SW Enabling technologies – Network Enabling technologies – Data Enabling technologies – People

6

Page 7: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Enabling Technologies – HW

Supercomputers. running exceptionally scientific applications.

Clusters (of servers *** for cloud) independent computers works cooperatively a single administrative domain usually residing in a single room

Servers **** for cloud Workstations Personal Computers

7

Page 8: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Enabling Technologies – SW

Grid Computing Utility Computing Virtualization

Abstraction and Virtualization Load balancing Hypervisor and its types

8

Page 9: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Which technologies make up Cloud?

9

Virtualization Technology

Utility Computing+

Grid Computing

Cloud

Page 10: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Grid Computing Grid computing combines computers from

multiple administrative domains to reach a common goal, to solve a single task. (Wikipedia)

One of the main strategies of grid computing is to use middleware to divide and apportion pieces of a program among several computers, sometimes up to many thousands.

Grid computing involves computation in a distributed fashion, which may also involve the aggregation of large-scale cluster computing-based systems.

10

Page 11: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

The process flow of grid computing application

From Cloud Application Architectures, Reese, G.

11

Page 12: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Utility Computing

Utility computing is the packaging of computing resources, such as computation, storage and services, as a metered service. This model has the advantage of a low or no initial cost to acquire computer resources; instead, computational resources are essentially rented. (Wikipedia)

12

Page 13: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Virtualization Technology

Virtualization is the creation of a virtual (rather than actual) version of something, such as a hardware platform, operating system (OS), storage device, or network resources. (Wikipedia)

13

Page 14: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Virtualization type

Platform virtualization Virtual memory Storage virtualization Network virtualization Memory virtualization Application virtualization Desktop virtualization Data Center Virtualization

14

Page 15: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Virtualization

15Platform virtualization

Page 16: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

16

Virtualization

Virtualization supports “Abstraction” Abstraction is the key concept in providing

the promised benefits of cloud computing Mapping a logical address (id) to a set

of physical resources Virtual servers Virtual storage Virtual networks

Load balancing Hypervisor Porting applications between vendors

Page 17: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Virtualization (2)

Virtualization is a key enabler of abstraction and cloud computing –logical address for extendable and scalable physical resources

Types of virtualization Virtualization support for cloud computing

attributes Service-based Scalable and elastic Shared services Metered usage Internet delivery

17

Page 18: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Load Balancing

Virtualized network access to a service through load balancing technology –Hardware or software based technology

Resources to be load balanced Network interfaces and services such as

DNS, FTP, HTTP Connections through intelligent switches Processing through computer system

assignment Storage resources Access to application instances

18

Page 19: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Load Balancing (2)

A load balancer listens to service request and uses a scheduling algorithm to assign the request

Keeps the record of a request’s session to support a failover for the request

19

Page 20: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Hypervisor

A low level program that provides system resources access to virtual machines

Hypervisor is also called Virtual Machine Monitor (VMM)

One level higher than the supervisory program for a hardware and/or hardware & OS

Presents a virtual platform to a guest OS and manages its functioning

Two types of Hypervisor Type 1 or full virtualization (Oracle VM, Vmware ESX) Type 2 or paravirtualization (Xen)

20

Page 21: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Types of Hypervisors

21

Types of Hypervsiors : Reproduced Figure 5.1 from Sosinsky, B., Cloud Computing Bible, 2011.

Page 22: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Enabling Technologies - Network

Network types Network according to size

WAN/MAN/LAN/PAN Network Topologies.

Network …. Internet, intranet, extranet

22

Page 23: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

WAN (Wide Area Network)

23Modified from CCNA 4 version 3.0Rick Graziani, Cabrillo College

Page 24: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

WWW or Web

24

HTTP Request

HTTP Response

HTTP R

equ

est

HTTP R

esp

onse

Internet

Internet

www.it.mut.ac.th

Client-Server model Web browser – Web server

HTTP protocol Receiving and sending HTML

Page 25: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Communication – Web Browser

Service is accessible through the web browser or web service API

Web Browser Communication protocol

HTTP 1.0 and 1.1 (W3C) Provide 8 different ways of request (HEAD, GET, POST)

Hypertext Markup Language (HTML) Tags for separating content and HTML code

Cascading Style Sheets for controlling the presentation Dynamic HTML

Provides more control over HTML elements on client side Document Object Model (DOM) Scripts (e.g., JavaScript and ActiveX) Changing the tags and properties Real-time positioning Dynamic fonts (Netscape feature only) Data binding (IE feature only)

25

Page 26: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Communication – Web Service A web service “is a software system designed

to support interoperable machine-to-machine interaction over a network” W3C

Data JSON: JavaScript Object Notation computer data

interchange format –transmitted after serialization –alternative to XML

JSON Basics: Based on subset of JavaScript –language independent

JSON should be used instead of XML when JavaScript is used –less CPU overhead and less coding as no need to use DOM for data extraction because an object is already an object in JSON

26

Page 27: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

XML: Extensible Markup Language

Provides a standardized way to represent text and data for platform independence

HTML and XML XML is extensible by end users while

W3C defines HTML

27

Page 28: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

XML: Extensible Markup Language (2)

Key features Self-descriptive data –no type or relation

definition Database integration: multiple types of data No programmatic modification –XSL Style sheet

can handle Open Server view of data –only one view of

data, even located at different places Open and extensible Contains machine-readable context information Content vs. presentation

28

Page 29: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

REST Web Services

Representational state transfer (REST) An architectural style based on

Internet-based technologies like HTTP and XML

Easier to use compared with SOAP which has much richer functionality

Resources are sources of specific information and each of them is referred by a global identifier, URI

29

Page 30: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

REST Web Services (2)

Potential benefits Better response time and reduced

server load -caching No need to maintain session state Only browser is enough at the client

side No separate resource discover,

hyperlinks are sufficient Better long term compatibility and

evolvability30

Page 31: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

SOAP Simple Object Access Protocol (SOAP)

Support communication between two different systems

Procedure calls Remote Procedure Calls (RPC) wouldn’t go

through firewall with HTTP SOAP solves this problem by describing how

to encode an HTTP header and an XML file –so a program can call an other program, both running on different computers, in a way that program calls can get through firewalls

31

Page 32: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Enabling Technologies - Data

32From Cloud Application Architectures, Reese, G.

Networks such as network bandwidth, servers such as CPU, storage such as DB server NAS HD, applications, services.

Page 33: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Enabling Technologies - People

Cloud providers Service providers End-users Cloud adopters Cloud resellers Other clouds

33

Page 34: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

References

Course book – Chapter 3, 5 Belle, J-P. V., et al., 2003,

Discovering Information Systems. Kahanwal1, B., Singh, T.P., The

Distributed Computing Paradigms: P2P, Grid, Cluster, Cloud, and Junggle, International Journal of Latest Research in Science and Technology 2012, page:183-187.

34

Page 35: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Project assignment (20%)

Select one of the network information systems (NISs) or cloud-based applications and present it in the class (between class12 – class15) Relevance to NIS or Cloud and the process

of transformation data to information (5%) Content (topics studied in the class such as

enabling technologies, architecture, management, security, demo…etc.) (7%)

On-time (in the day of presentation) (3%) Presentation and slides (5%)

35

Page 36: 1 NETE4631 Cloud-enabling technologies and standards Lecture Notes #3

Thanks you

Question? Conclusion of the Workshop of

class#2…

36