COM 444 Cloud Computing



Similar documents
Distributed and Cloud Computing

CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies. Lecture 1

COM 444 Cloud Computing

DISTRIBUTED SYSTEMS AND CLOUD COMPUTING. A Comparative Study

Cloud Computing: Computing as a Service. Prof. Daivashala Deshmukh Maharashtra Institute of Technology, Aurangabad

CHAPTER 8 CLOUD COMPUTING

COM 444 Cloud Computing

System Models for Distributed and Cloud Computing

Introduction to Engineering Using Robotics Experiments Lecture 18 Cloud Computing

SOA and Cloud in practice - An Example Case Study

How To Understand Cloud Computing

Service-Oriented Architectures

Novel Network Computing Paradigms (I)

Architectural Implications of Cloud Computing

Enabling Technologies for Distributed and Cloud Computing

Cloud Computing & Service Oriented Architecture An Overview

Service Oriented Architectures

Emerging Technology for the Next Decade

Aneka: A Software Platform for.net-based Cloud Computing

Enabling Technologies for Distributed Computing

Cloud computing: the state of the art and challenges. Jānis Kampars Riga Technical University

Distributed Systems and Recent Innovations: Challenges and Benefits

CLOUD COMPUTING INTRODUCTION HISTORY

Service Oriented Architecture

CLOUD COMPUTING. When It's smarter to rent than to buy

Manjrasoft. Cloud Computing: The Next Revolution in Information Technology

Cluster, Grid, Cloud Concepts

CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies. Virtualization of Clusters and Data Centers

Data Centers and Cloud Computing

Li Sheng. Nowadays, with the booming development of network-based computing, more and more

Cloud Computing Architecture: A Survey

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

TECHNOLOGY GUIDE THREE. Emerging Types of Enterprise Computing

Cloud Courses Description

VALLIAMMAI ENGINEERING COLLEGE SRM NAGAR, KATTANKULATHUR DEPARTMENT OF COMPUTER APPLICATIONS SUBJECT : MC7502 SERVICE ORIENTED ARCHITECTURE

Virtualization and Cloud Computing

Business applications:

How To Compare Cloud Computing To Cloud Platforms And Cloud Computing

IOS110. Virtualization 5/27/2014 1

David Pilling Director of Applications and Development

INTRODUCTION TO CLOUD COMPUTING CEN483 PARALLEL AND DISTRIBUTED SYSTEMS

CS 695 Topics in Virtualization and Cloud Computing and Storage Systems. Introduction

Introduction to Service Oriented Architectures (SOA)

Lecture 02b Cloud Computing II

Introduction into Web Services (WS)

Grid Computing Vs. Cloud Computing

Client/Server Computing Distributed Processing, Client/Server, and Clusters

Introduction to grid technologies, parallel and cloud computing. Alaa Osama Allam Saida Saad Mohamed Mohamed Ibrahim Gaber

Mobile Cloud Computing T Open Source IaaS

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series

4/6/2009 CLOUD COMPUTING : PART I WHY IS CLOUD COMPUTING DISTINCT? INTRODUCTION: CONTINUE A PERSPECTIVE STUDY

Symmetric Multiprocessing

Computing. M< MORGAN KAUfMANM. Distributed and Cloud. Processing to the. From Parallel. Internet of Things. Geoffrey C. Fox. Dongarra.

High Performance Computing Cloud Computing. Dr. Rami YARED

WEB SERVICES FOR MOBILE COMPUTING

How To Understand Cloud Computing

Clouds vs Grids KHALID ELGAZZAR GOODWIN 531

Cloud Computing Technology

Lecture 02a Cloud Computing I

Cloud Computing: Making the right choices

DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING. Carlos de Alfonso Andrés García Vicente Hernández

Cloud Courses Description


What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.

Sistemi Operativi e Reti. Cloud Computing

Classic Grid Architecture

Distributed and Cloud Computing

Aneka: A Software Platform for.net-based Cloud Computing

COMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters

On Cloud Computing Technology in the Construction of Digital Campus

International Journal of Innovative Technology & Adaptive Management (IJITAM) ISSN: , Volume-1, Issue-5, February 2014

Cloud computing - Architecting in the cloud

Web Services and Service Oriented Architectures. Thomas Soddemann, RZG

Soft Computing Models for Cloud Service Optimization

ebay : How is it a hit

Service-Oriented Architecture and Software Engineering

CHAPTER 2 THEORETICAL FOUNDATION

Chapter 19 Cloud Computing for Multimedia Services

Cloud Computing Paradigm Shift. Jan Šedivý

Cloud Service Model. Selecting a cloud service model. Different cloud service models within the enterprise

2) Xen Hypervisor 3) UEC

Cloud Computing with Red Hat Solutions. Sivaram Shunmugam Red Hat Asia Pacific Pte Ltd.

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

A Study of Infrastructure Clouds

Introduction to Cloud Computing

Certified Cloud Computing Professional Sample Material

Oracle Applications and Cloud Computing - Future Direction

Cloud Computing. Adam Barker

Putchong Uthayopas, Kasetsart University

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

How To Understand A Services-Oriented Architecture

Getting Familiar with Cloud Terminology. Cloud Dictionary

Virtual machine interface. Operating system. Physical machine interface

International Research Journal of Engineering and Technology (IRJET) e-issn: Volume: 02 Issue: 05 Aug p-issn:

Contents. What is Cloud Computing? Why Cloud computing? Cloud Anatomy Cloud computing technology Cloud computing products and market

Transcription:

COM 444 Cloud Computing Lec 1: Introduction to Cloud Computing Enabling Technologies and Distributed System Models Prof. Dr. Halûk Gümüşkaya Enabling Technologies and Distributed System Models 1. Scalable Computing over the Internet 2. Technologies for Network-based Systems 3. System Models for Distributed and Cloud Computing 4. Software Environments for Distributed Systems and Clouds 5. Performance, Security and Energy Efficiency haluk.gumuskaya@gediz.edu.tr haluk@gumuskaya.com http://www.gumuskaya.com Computing Engineering Department 1 2 Cloud Computing: Convergence of various Technologies Data Deluge Enabling New Challenges a web page, or web application, that uses content from more than one source to create a single new service 3 4

The Evolution of Distributed Computing Technologies, 1950s 2010s From Desktop/HPC/Grids to Internet Clouds in 30 Years HPC moving from centralized supercomputers to geographically distributed desktops, desksides, clusters, and grids to clouds over last 30 years. R/D efforts on HPC, clusters, Grids, P2P, and virtual machines has laid the foundation of cloud computing that has been greatly advocated since 2007. Location of computing infrastructure in areas with lower costs in hardware, software, datasets, space, and power requirements moving from desktop computing to datacenter-based clouds. 5 6 Interactions among 4 Technical Challenges Data Deluge, Cloud Technology, escience, and Multicore/Parallel Computing Clouds and Internet of Things (IoT) 7 HPC: High-Performance Computing MPP: Massively Parallel Processors HTC: High-Throughput Computing 8

Computing Paradigm Distinctions Centralized Computing All computer resources are centralized in one physical system. Parallel Computing All processors are either tightly coupled with central shared memory or loosely coupled with distributed memory Distributed Computing Field of CS/CE that studies distributed systems. A distributed system consists of multiple autonomous computers, each with its own private memory, communicating over a network. Cloud Computing An Internet cloud of resources that may be either centralized or decentralized. The cloud apples to parallel or distributed computing or both. Clouds may be built from physical or virtualized resources. 9 Applications of High-Performance and High-Throughput Systems 10 The Trend toward Utility Computing 2011 Gartner IT Hype Cycle for Emerging Technologies Technology Convergence toward HPC for Science and HTC for Business IoT was introduced in 1999 at MIT 2009 2010 2011 Web Data Centres Utility Computing Service Computing Grid Computing P2P Computing Market-Oriented Computing Cloud Computing Computing Paradigms Technology Convergence + - Ubiquitous: Reliable, Scalable, - Autonomic: Dynamic, Discovery - Composable: QoS, SLA - -Trillion $ business - Who will own it? 2008 2007 Attributes/Capabilities (Courtesy of Raj Buyya, University of Melbourne, 2011) 11 12

Enabling Technologies and Distributed System Models 1. Scalable Computing over the Internet 2. Technologies for Network-based Systems Improvement in Processor and Network Technologies over 33 Years 3. System Models for Distributed and Cloud Computing 4. Software Environments for Distributed Systems and Clouds 5. Performance, Security and Energy Efficiency 13 14 A Modern Multicore CPU Chip Using a Hierarchy of Caches Multi-threading Processors L1 cache is private to each core, on-chip L2 cache is shared and L3 cache or DRAM is off the chip. Four-issue superscalar (e.g. Sun Ultrasparc I) Implements instruction level parallelism (ILP) within a single processor. Executes more than one instruction during a clock cycle by sending multiple instructions to redundant functional units. Fine-grain multithreaded processor Switch threads after each cycle Interleave instruction execution If one thread stalls, others are executed Coarse-grain multithreaded processor Executes a single thread until it reaches certain situations Simultaneous multithread processor (SMT) Instructions from more than one thread can execute in any given pipeline stage at a time. 15 16

Multithreading Technology: Five Micro-Architectures in Modern CPU Processors Dispatch of 5 independent threads of instructions to 4 pipelined data paths (functional units) Architecture of a Many-Core Multiprocessor GPU Interacting with a CPU Processor superscalar CPU is singlethreaded with 4 functional units. Each row represents the issue slots for a single execution cycle: A filled box indicates that the processor found an instruction to execute in that issue slot on that cycle; An empty box denotes an unused slot. 17 18 NVIDIA Fermi GPU built with 16 streaming multiprocessors (SMs) of 32 CUDA cores each; only one SM Is shown. Power Efficiency of the GPU 19 20

Memory, Storage Interconnection Networks Network attached storage (NAS) Storage Area Network (SAN) SAN (storage area network) - connects servers with disk arrays LAN (local area network) connects clients, hosts, and servers NAS (network attached storage) connects clients with large storage systems 21 22 Virtual Machines Eliminate real machine constraint Increases portability and flexibility Virtual machine adds software to a physical machine to give it the appearance of a different platform or multiple platforms. Benefits Cross platform compatibility Increase security Enhance performance Simplify software migration Initial Hardware Model All applications access hardware resources (i.e. memory, i/o) through system calls to operating system (privileged instructions) Advantages Design is decoupled (i.e. OS people can develop OS separate of Hardware people developing hardware) Hardware and software can be upgraded without notifying the Application programs 23 24

Initial Hardware Model Virtual Machine Basics Disadvantages Application compiled on one ISA will not run on another ISA. Applications compiled for Mac use different operating system calls then application designed for Windows. ISA s must support old software Can often be inhibiting in terms of performance Since software is developed separately from hardware Software is not necessarily optimized for Virtual software placed between underlying machine and conventional software Conventional software sees different ISA from the one supported by the hardware Virtualization process involves: Mapping of virtual resources (registers and memory) to real hardware resources Using real machine instructions to carry out the actions specified by the virtual machine instructions hardware. 25 26 Virtual Machine Architecture Virtual Machines and Virtualization Middleware Three VM Architectures (Courtesy of VMWare, 2010) 27 28

Primitive Operations in Virtual Machines Datacenter and Server Cost Distribution 29 30 Enabling Technologies and Distributed System Models 1. Scalable Computing over the Internet 2. Technologies for Network-based Systems 3. System Models for Distributed and Cloud Computing 4. Software Environments for Distributed Systems and Clouds 5. Performance, Security and Energy Efficiency 31 32

A Typical Cluster Architecture Cluster Design Issues and Implementations 33 34 Grid Families A Typical Computational Grid 35 36

Peer-to-Peer (P2P) Network A distributed system architecture Each computer in the network can act as a client or server for other netwpork computers. No centralized control Typically many nodes, but unreliable and heterogeneous Nodes are symmetric in function Take advantage of distributed, shared resources (bandwidth, CPU, storage) on peer-nodes Fault-tolerant, self-organizing Operate in dynamic environment, frequent join and leave is the norm 37 Peer-to-Peer (P2P) Network Overlay network - computer network built on top of another network. Nodes in the overlay can be thought of as being connected by virtual or logical links, each of which corresponds to a path, perhaps through many physical links, in the underlying network. For example, distributed systems such as cloud computing, peer-to-peer networks, and client-server applications are overlay networks because their nodes run on top of the Internet. 38 Peer-to-Peer (P2P) Network 39 The Cloud Historical roots in today s Internet apps Search, email, social networks File storage (Live Mesh, Mobile Me, Flicker, ) A cloud infrastructure provides a framework to manage scalable, reliable, on-demand access to applications A cloud is the invisible backend to many of our mobile applications A model of computation and data storage based on pay as you go access to unlimited remote data center capabilities 40

Basic Concept of Internet Clouds The Next Revolution in IT: Cloud Computing Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over a network (typically the Internet). The name comes from the use of a cloud-shaped symbol as an abstraction for the complex infrastructure it contains in system diagrams. Cloud computing entrusts remote services with a user's data, software and computation. Every 18 months? Classical Computing Buy & Own Hardware, System Software, Applications often to meet peak needs. Install, Configure, Test, Verify, Evaluate Manage.. Finally, use it $$$$...$(High CapEx) Cloud Computing Subscribe Use $ - pay for what you use, based on QoS (Courtesy of Raj Buyya, 2012) 41 42 Cloud Service Models (1): Infrastructure as a Service (IaaS) Most basic cloud service model Cloud providers offer computers, as physical or more often as virtual machines, and other resources. Virtual machines are run as guests by a hypervisor, such as Xen or KVM. Cloud users deploy their applications by then installing operating system images on the machines as well as their application software. Cloud providers typically bill IaaS services on a utility computing basis, that is, cost will reflect the amount of resources allocated and consumed. Examples of IaaS: Amazon CloudFormation (and underlying services such as Amazon EC2), Rackspace Cloud, Terremark, and Google Compute Engine. 43 Cloud Service Models (2): Platform as a Service (PaaS) Cloud providers deliver a computing platform typically including operating system, programming language execution environment, database, and web server. Application developers develop and run their software on a cloud platform without the cost and complexity of buying and managing the underlying hardware and software layers. Examples of PaaS: Amazon Elastic Beanstalk, Cloud Foundry, Heroku, Force.com, EngineYard, Mendix, Google App Engine, Microsoft Azure and OrangeScape. 44

Cloud Service Models (3): Software as a Service (SaaS) Cloud providers install and operate application software in the cloud and cloud users access the software from cloud clients. The pricing model for SaaS applications is typically a monthly or yearly flat fee per user, so price is scalable and adjustable if users are added or removed at any point. Three Cloud Service Models in a Cloud Landscape of Major Providers Examples of SaaS: Google Apps, innkeypos, Quickbooks Online, Limelight Video Platform, Salesforce.com, and Microsoft Office 365. 45 46 Enabling Technologies and Distributed System Models 1. Scalable Computing over the Internet 2. Technologies for Network-based Systems 3. System Models for Distributed and Cloud Computing 4. Software Environments for Distributed Systems and Clouds 5. Performance, Security and Energy Efficiency 47 Service-Oriented Architecture (SOA) SOA is an evolution of distributed computing based on the request/reply design paradigm for synchronous and asynchronous applications. An application's business logic or individual functions are modularized and presented as services for consumer/client applications. Key to these services - their loosely coupled nature; i.e., the service interface is independent of the implementation. Application developers or system integrators can build applications by composing one or more services without knowing the services' underlying implementations. For example, a service can be implemented either in.net or J2EE, and the application consuming the service can be on a different platform or language. 48

SOA Key Characteristics SOA services have self-describing interfaces in platformindependent XML documents. Web Services Description Language (WSDL) is the standard used to describe the services. SOA services communicate with messages formally defined via XML Schema (also called XSD). Communication among consumers and providers or services typically happens in heterogeneous environments, with little or no knowledge about the provider. Messages between services can be viewed as key business documents processed in an enterprise. SOA Key Characteristics SOA services are maintained in the enterprise by a registry that acts as a directory listing. Applications can look up the services in the registry and invoke the service. Universal Description, Definition, and Integration (UDDI) is the standard used for service registry. Each SOA service has a quality of service (QoS) associated with it. Some of the key QoS elements are security requirements, such as authentication and authorization, reliable messaging, and policies regarding who can invoke services. 49 50 Web Services Layered Achitecture for Web Services A web service is a software component stored on one computer that can be accessed by an application (or other software component) on another computer over a network. Web services communicate using such technologies as XML, JSON (JavaScript Object Notation) and HTTP. One of the dominant paradigms for programming distributed systems. Enables Business to Business (B2B) integration. (Suppose one organization uses CORBA and another uses.net) No problem! Enables Service Oriented Architecture (SOA). Web services provide the underlying middleware for both the Grid and Cloud Computing. May exist internally to an organization or externally (in the cloud). 51 52

Web Services Infrastructure and Components A SOAP Based System In A Nutshell A web service (WS) is identified by a URI and can be accessed by clients using messages formatted in XML. SOAP is used to encapsulate these messages and transmit them over HTTP or another protocol, for example, TCP or SMTP. A web service deploys service descriptions to specify the interface and other aspects of the service for the benefit of potential clients. The top layer: WSs and applications may be built on top of other web services. Some particular From Globus.org (Grid computing) WSs provide general functionality required for the operation of a large number of other web services. They include directory services, security and choreography. 53 54 Two Approaches SOAP (Simple Object Access Protocol) Based (WS-*) Web Services REST (Representational State Transfer) style web services Two Java APIs that facilitate web services: JAX-WS is based on the SOAP an XML-based protocol that allows web services and clients to communicate, even if the client and the web service are written in different languages. JAX-RS uses REST a network architecture that uses the web s traditional request/response mechanisms such as GET and POST requests. Web Service Interfaces Many well-known commercial web servers including Amazon, Yahoo, Google and ebay, offer web service interfaces that allow clients to manipulate their web resources. The web service offered by Amazon.com: Provides operations to allow clients to get information about products, to add an item to a shopping cart or to check the status of a transaction. The Amazon web services [associates.amazon.com] may be accessed either by SOAP or by REST. 80% of the requests to the web services at Amazon.com are via the REST interface, with the remaining 20% using SOAP. 55 56

Combination of Web Services (Mashups) Cloud Computing Challenges: Dealing with too Many Issues Scalability Reliability Billing Utility & Risk Management The travel agent service combines other web services What concerns are not shown? This is an important list: Transactions, Security (privacy, identification, authentication, authorization), Reliability, Orchestration tooling, Interoperability through Standards, RPC or Messaging, Service Level agreements Programming Env. & Application Dev. Software Eng. Complexity Uhm, I am not quite clear Yet another complex IT paradigm? 57 58 The Internet of Things (IoT) Opportunities of IoT in 3 Dimensions Smart Earth Internet of Things Smart Earth: An IBM Dream 59 60

61 62 Transparent Cloud Computing Environment Parallel and Distributed Programming 63 64

Grid Standards and Middleware Enabling Technologies and Distributed System Models 1. Scalable Computing over the Internet 2. Technologies for Network-based Systems 3. System Models for Distributed and Cloud Computing 4. Software Environments for Distributed Systems and Clouds 5. Performance, Security and Energy Efficiency 65 66 Dimensions of Scalability System Scalability vs. OS Multiplicity Size increasing performance by increasing machine size Software upgrade to OS, libraries, new apps. Application matching problem size with machine size Technology adapting system to new technologies 67 68

System Availability vs. Configuration Size Four Operational Layers of Distributed Computing Systems 69 70 System Attacks and Network Threads Acknowledgements The slides have been based in-part upon original slides of a number of books and Profesors including: Distributed and Cloud Computing: From Parallel Processing to The Internet of Things, K. Hwang, G. Fox and J. Dongarra, Morgan Kaufmann Publishers, 2012. 71 72