Introduction. MCSN N. Tonellotto Complements of Distributed Enabling Platforms

Similar documents
Concepts and Architecture of the Grid. Summary of Grid 2, Chapter 4

Cluster, Grid, Cloud Concepts

The Data Grid: Towards an Architecture for Distributed Management and Analysis of Large Scientific Datasets

THE CCLRC DATA PORTAL

Web Service Based Data Management for Grid Applications

Grid Computing Vs. Cloud Computing

Distribution transparency. Degree of transparency. Openness of distributed systems

Data Grids. Lidan Wang April 5, 2007

How To Understand The Concept Of A Distributed System

Grid Computing With FreeBSD

Classic Grid Architecture

An approach to grid scheduling by using Condor-G Matchmaking mechanism

IBM Solutions Grid for Business Partners Helping IBM Business Partners to Grid-enable applications for the next phase of e-business on demand

A Survey Study on Monitoring Service for Grid

Collaborative & Integrated Network & Systems Management: Management Using Grid Technologies

A High-Performance Virtual Storage System for Taiwan UniGrid

GridFTP: A Data Transfer Protocol for the Grid

Grid Scheduling Dictionary of Terms and Keywords

MIGRATING DESKTOP AND ROAMING ACCESS. Migrating Desktop and Roaming Access Whitepaper

System Models for Distributed and Cloud Computing

LinuxWorld Conference & Expo Server Farms and XML Web Services

Introduction to Cloud Computing. Lecture 02 History of Enterprise Computing Kaya Oğuz

IT Infrastructure and Emerging Technologies

Analyses on functional capabilities of BizTalk Server, Oracle BPEL Process Manger and WebSphere Process Server for applications in Grid middleware

Research on the Model of Enterprise Application Integration with Web Services

A Taxonomy and Survey of Grid Resource Planning and Reservation Systems for Grid Enabled Analysis Environment

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

The Lattice Project: A Multi-Model Grid Computing System. Center for Bioinformatics and Computational Biology University of Maryland

Distributed System: Definition

GridSolve: : A Seamless Bridge Between the Standard Programming Interfaces and Remote Resources

DISTRIBUTED SYSTEMS AND CLOUD COMPUTING. A Comparative Study

16th International Conference on Control Systems and Computer Science (CSCS16 07)

Grid Computing vs Cloud

Introduction. The Evolution of the Grid. Introduction (cont.) Grid Computing Fall 2004 Paul A. Farrell 9/2/2004

Agenda. Distributed System Structures. Why Distributed Systems? Motivation

Grid based Integration of Real-Time Value-at-Risk (VaR) Services. Abstract

Resource Management on Computational Grids

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

Scientific versus Business Workflows

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

An IDL for Web Services

Writing Grid Service Using GT3 Core. Dec, Abstract

Distributed Systems and Recent Innovations: Challenges and Benefits

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

Grid Scheduling Architectures with Globus GridWay and Sun Grid Engine

DFSgc. Distributed File System for Multipurpose Grid Applications and Cloud Computing

HPC and Grid Concepts

Chapter 4 IT Infrastructure and Platforms

Introduction to Service Oriented Architectures (SOA)

Praseeda Manoj Department of Computer Science Muscat College, Sultanate of Oman

Service-Oriented Computing and Service-Oriented Architecture

Client/Server and Distributed Computing

Simplest Scalable Architecture

Hadoop. Sunday, November 25, 12

Cloud Computing. Lecture 5 Grid Case Studies

GRID COMPUTING Techniques and Applications BARRY WILKINSON

Data Management in an International Data Grid Project. Timur Chabuk 04/09/2007

A Generic Database Web Service

Building Platform as a Service for Scientific Applications

Monitoring Clusters and Grids

IT Infrastructure: Hardware and Software

e-science Technologies in Synchrotron Radiation Beamline - Remote Access and Automation (A Case Study for High Throughput Protein Crystallography)

Principles and characteristics of distributed systems and environments

Client/server and peer-to-peer models: basic concepts

GENERIC DATA ACCESS AND INTEGRATION SERVICE FOR DISTRIBUTED COMPUTING ENVIRONMENT

Distributed Systems Architectures

Globus Striped GridFTP Framework and Server. Raj Kettimuthu, ANL and U. Chicago

Automatic Configuration and Service Discovery for Networked Smart Devices

AquaLogic Service Bus

High Performance Cluster Support for NLB on Window

THE EXPAND PARALLEL FILE SYSTEM A FILE SYSTEM FOR CLUSTER AND GRID COMPUTING. José Daniel García Sánchez ARCOS Group University Carlos III of Madrid

How To Manage Technology

XSEDE Service Provider Software and Services Baseline. September 24, 2015 Version 1.2

KNOWLEDGE GRID An Architecture for Distributed Knowledge Discovery

Transcription:

Introduction 1 Distributed relating to a computer network in which at least some of the processing is done by the individual computers and information is shared by and often stored at the computers Enabling to make possible, practical, or easy Platforms the computer architecture and equipment used for a particular purpose TO DO WHAT? 2 1

Large Scale Problems In research - Frontier research in many different fields today requires world-wide collaborations - Online access to expensive scientific instrumentation - Scientists and engineers will be able to perform their work without regard to physical location - Simulations of world-scale mathematical models - Batch analysis of gazillion-bytes of experimental data In production Crawling, indexing, searching the Web Web 2.0 applications Mining information Highly interactive applications Online analysis of gazillion-bytes of usage data 3 Biology 4 2

Earth Science 5 Physics 6 3

Astronomy 7 Google 8 4

Big enough? Large Hadron Collider: 10 19 bytes/year generated 10 21 bytes/year forecasted 10 3 scientists 10 2 institutions Google 10 19 byte/day processed 0.1 sec query latency 9 Computing and Communication Technologies Evolution: 1960-2010! COMPUTING Communication * HTC * P2P * Mainframes * Minicomputers * PDAs * PCs * Workstations * Grids * PC Clusters Computing * Crays * MPPs * XEROX PARC worm * WS Clusters as Utility * e-science * IETF * TCP/IP * W3C * Ethernet * HTML * Mosaic * Email * Sputnik * Internet Era * WWW Era * ARPANET * e-business * Web Services * SocialNets * XML 1960 1970 1975 1980 1985 1990 1995 2000 2010 Centralised Control Decentralised 10 5

Performance, Capability, Value of ICT as defined by the three Laws of Computing Moore s Law. Transistors on a single chip doubles ~ every 18 months. Gilder s Law. Aggregate bandwidth triples ~ every year. Metcalfe s Law. The value of a network may grow exponentially with the number of participants. Source: Cambridge Energy Resource Associates 11 Experiment You must put together your computers to calculate 10 20 prime numbers. How do you proceed? You agree to collaborate You put your computers in a network You install the programs You run the programs You wait for results You publish your results on the Web Is really that simple? 12 6

What if I do not trust someone else s computer? I do not trust the application? I want to use my laptop during lectures? The application wants more computers? I forget the IP address of some computers? My disk disintegrates losing the data? Someone pays and we must share money? We are still waiting the results after the class? NOT SO SIMPLE! 13 Security Resource sharing Dynamicity Lack of information Lack of global state Fault tolerance Accounting Some issues 14 7

How to solve a problem? Manual Computing Personal Computing Mobile Computing Ubiquitous Computing Pervasive Computing Parallel Computing Distributed Computing High Performance Computing Grid Computing Cloud Computing 15 Grid Computing 16 8

Preliminary Definitions (1) Resource An entity that may be shared CPU, storage, data, software, Not necessarily a physical entity Filesystem, bandwidth, thread pool Defined in terms of interfaces and capabilities Open/close/read/write define the access methods to a filesystem Copy/delete/move/create/cat define the methods to manipulate data Protocol A formal description of messages format and a set of rules to exchange messages Messages allow two or more resources to communicate Rules may define a sequence of message exchanges Message may change resources status and/or behavior A good protocol does a single Filesystem, bandwidth, thread pool Defined in terms of interfaces and capabilities (APIs) Open/close/read/write define the access methods to a filesystem Copy/delete/move/create/cat define the methods to manipulate data 17 Preliminary Definitions (2) Service A server-side protocol implementation providing a set of capabilities The protocol defines the interactions between a client and a server A server implementing a protocol is the service Every service needs a protocol to implement A service can implement more than one protocol, but good services expose just one Examples FTP servers (ftp://) Web servers (http://) Mail servers (pop or imap) FTP Protocol FTP Server Telnet Protocol TCP Protocol IP Protocol Web Server HTTP Protocol TLS Protocol TCP Protocol IP Protocol 18 9

Preliminary Definitions (3) API (Application Programming Interface) Specifies a set of routines to facilitate the development of applications Definition, NOT implementation An API may have several implementations (e.g., MPI) An API specifies behaviors and interfaces APIs may be language-oriented Mapping specification to language constructs Name, number, order and type of parameters SDK (Software Development Kit) A particular implementation of an API Provides libraries and tools Given an API we can have multiple SDK e.g., LAM/MPI, MPICH, HP-MPI, Open MPI 19 Standard API/SDK are important They enable applications portability But without standard protocols, interoperability is difficult Standard protocols are important They enable applications interoperability Programs using different APIs for the same protocol can communicate Clients do not need to know server s API. They allow shared infrastructures 20 10

21 Example A web service is a service available on the Internet It allows creation of client/server applications. Platform and language independent protocol based on XML. Most use HTTP for transporting messages Lend themselves naturally to build loosely coupled distributed systems. XML XML Computer A Perl Windows 2000 Computer B Java Linux 22 11

Roles Service Provider Implements the service and make it available on the Internet Service Requestor Service consumers use existing services opening a network connection, sending XML requests and receiving XML responses Service Registry The service registry provides a central point where service providers can publish their services and service requestors can look for existing services Scoperta Registry Pubblicazione Invocazione Requestor Provider 23 Protocols Discovery UDDI Description Invocation WSDL SOAP,XML-RPC Transpost HTTP,FTP The Web Services Architecture is specified and standardized by the World Wide Web Consortium, the same organization responsible for XML, HTML, CSS, etc. 24 12

Protocols in Action 25 Web Service Invocation (1) 1. Client will call the client stub. The client stub will turn this 'local invocation into a proper SOAP request. This is often called the marshaling or serializing process. 2. The SOAP request is sent over a network using the HTTP protocol. The server receives the SOAP requests and hands it to the server stub. The server stub will convert the SOAP request into something the service implementation can understand (this is usually called unmarshaling or deserializing).. 26 13

Web Service Invocation (2) 4. Once the SOAP request has been deserialized, the server stub invokes the service implementation, which then carries out the work it has been asked to do. 5. The result of the requested operation is handed to the server stub, which will turn it into a SOAP response. 27 Web Service Invocation (3) 6. The SOAP response is sent over a network using the HTTP protocol. The client stub receives the SOAP response and turns it into something the client application can understand. 7. Finally the application receives the result of the Web Service invocation and uses it. 28 14

29 Why? Large-scale resource sharing Spanning administrative boundaries Multi-institutional environment Dynamicity Geographical distribution Grid computing is all about achieving performance and throughput by pooling and sharing resources on a local, national or world-wide level 30 15

Reading Assignments C. Kesselman, et al., The Anatomy of the Grid: Enabling Scalable Virtual Organizations Internationall Journal of Supercomputing Applications, pp. 1-25, 2001. http://www.globus.org/alliance/publications/papers/anatomy.pdf I. Foster, et al., The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration Globus Research, Work-in-Progress 2002. http://www.globus.org/alliance/publications/papers/ogsa.pdf Links provided at: http://www.cli.di.unipi.it/doku/doku.php/magistraleinformaticanetworking/cpa/start 31 Power Grid 32 16

Elements of Grid Computing Resource sharing Computers, data, storage, sensors, networks, Sharing always conditional: issues of trust, policy, negotiation, payment, Coordinated problem solving Beyond client-server: distributed data analysis, computation, collaboration, Dynamic, multi-institutional virtual organizations Community overlays on classic org structures Large or small, static or dynamic 33 Virtual Organizations Dynamic set of individuals and/or institutions defined by a shared goal and a set of sharing rules Example: several partners in a research project May vary in size, scope, duration and structure Example: class students for cooperative lecture writing Goal? Rules? Example: industrial consortium building a new aircraft Goal? Rules? The sharing is highly controlled, with resource providers and consumers defining clearly and carefully just what is shared 34 17

The Grid Vision Simple, transparent access to resources without central control Dynamic coordination and combination of services on demand Easy addition of resources Autonomic management of Grid components Complexity of the infrastructure is hidden from user or resource provider 35 Requirements Identity & authentication Authorization & policy Resource discovery Resource characterization Resource allocation (Co-)reservation, workflow Distributed algorithms Remote data access High-speed data transfer Performance guarantees Monitoring Adaptation Intrusion detection Resource management Accounting & payment Fault management System evolution and many more 36 18

Grid Architecture Coordinating multiple resources : ubiquitous infrastructure services, app.-specific distributed services Sharing single resources : negotiating access, controlling use Talking to things : communication (Internet protocols) & security Application Collective Resource Connectivity Application Transport Internet Internet Protocol Architecture Controlling things locally : Access to & control of resources Fabric Link 37 The Hourglass Model Focus on architecture issues Propose set of core services as basic infrastructure Use to construct high-level, domain-specific solutions Design principles Keep participation cost low Enable local control Support for adaptation IP hourglass model Core services Applications Diverse global services Local OS 38 19

Where are we with Architecture? No official standards exist But Globus Toolkit has emerged as the de facto standard for several important Connectivity, Resource, and Collective protocols OGF has an architecture working group (OGSA) Technical specifications are being developed for architecture elements: e.g., security, data, resource management, information Internet drafts submitted in security area 39 Fabric Layer: Protocol & Services Just what you would expect: the diverse mix of resources that may be shared Individual computers, Condor pools, file systems, archives, metadata catalogs, networks, sensors, etc. Few constraints on low-level technology: connectivity and resource level protocols form the neck in the hourglass Defined by interfaces not physical characteristics 40 20

Connectivity Layer: Protocol & Services Communication Internet protocols: IP, DNS, routing, etc. Security: Grid Security Infrastructure (GSI) Uniform authentication, authorization, and message protection mechanisms in multi-institutional setting Single sign-on, delegation, identity mapping Public key technology, SSL, X.509, GSS-API Supporting infrastructure: Certificate Authorities, certificate & key management, 41 Resource Layer: Protocol & Services Grid Resource Allocation Management (GRAM) Remote allocation, reservation, monitoring, control of compute resources GridFTP protocol (FTP extensions) High-performance data access & transport Grid Resource Information Service (GRIS) Access to structure & state information Others emerging: Catalog access, code repository access, accounting, etc. All built on connectivity layer: GSI & IP 42 21

Collective Layer: Protocol & Services Index servers a.k.a. meta-directory services Custom views on dynamic resource collections assembled by a community Resource brokers Resource discovery and allocation Replica catalogs Replication services Co-reservation and co-allocation services Workflow management services etc 43 Example: High-Throughput Computing App High Throughput Computing System Collective (App) Collective (Generic) Dynamic checkpoint, job management, failover, staging Brokering, certificate authorities Resource Connect Fabric Access to data, access to computers, access to network performance data Communication, service discovery (DNS), authentication, authorization, delegation Storage systems, schedulers 44 22

Example: Data Grid Architecture App Discipline-Specific Data Grid Application Collective (App) Collective (Generic) Resource Connect Fabric Coherency control, replica selection, task management, virtual data catalog, virtual data code catalog, Replica catalog, replica management, co-allocation, certificate authorities, metadata catalogs, Access to data, access to computers, access to network performance data, Communication, service discovery (DNS), authentication, authorization, delegation Storage systems, clusters, networks, network caches, 45 Using the Grid write (code) to solve problem submit to Grid security Grid middleware accounting steering and visualisation stage data deploy publish select 46 23

How Grids are used? Collaborative design High-performance computing Financial modeling Data center automation Collaborative data-sharing Drug discovery High-energy physics Life sciences E-Business E-Science 47 Open Grid Services Architecture Developed by the Global Grid Forum to define a common, standard, and open architectures for Grid-based applications. Provides a standard approach to all services on the Grid. VO Management Service. Resource discovery and management service: Job management service. Security services. Data management services. Built on top of and extends the Web Services architecture, protocols, and interfaces. http://www.ogf.org/documents/gfd.80.pdf 24

OGSA Capabilities Execution Management Job description & submission Scheduling Resource provisioning Data Services Common access facilities Efficient & reliable transport Replication services Resource Management Discovery Monitoring Control Information Services Registry Notification Logging/auditing OGSA OGSA profiles Self-Management Self-configuration Self-optimization Self-healing Security Cross-organizational users Trust nobody Authorized access only Web services foundation 49 Grid Scenarios Collaboration Grids Multiple institutions, secure, widely distributed, VOs Collaborative agreements & commercial partnerships Financial Model: Increase overall revenue Data Center Grids (evolving to Clouds) Centralized management of multiple platforms Aggregation of enterprise resources and applications Financial Model: Reduce Total Cost Ownership (TCO) Cluster Grids Networks of Workstations, Blades, etc. Cycle scavenging, Homogeneous workload Financial Model: Lower marginal costs 50 25

The Eight Fallacies of Distributed Computing (and the Grid) The resources are (network is) reliable Resource latency is zero Resource bandwidth is infinite The resources are (network is) secure Resource topology does not change There is one resource administrator Resource (transport) cost is zero The resources are (network is) homogeneous Adapted from Deutsch & Gosling 51 26