Grid Computing Part 2. Grid Architecture Margarita M.Stepanova Saint-Petersburg State University, Faculty of Physics v
Grid Topology and Services Slide from Erwin Laure, CERN
Requirements to Grid 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
Основные структурные компоненты грид-системы компьютеры с установленным пользовательским интерфейсом; ресурсные центры, включающие –вычислительные ресурсы; –ресурсы хранения данных; набор базовых грид-сервисов
Обобщенная схема структуры грида Picture from: Введение в грид-технологии, Препринт НИИЯФ МГУ
User Interface, UI Предназначен для обеспечения доступа пользователя к ресурсам грида осуществляет запуск заданий на выполнение; пересылает данные с одного ресурса хранения данных на другой; контролирует процесс выполнения задания; получает результат выполнения задания
Resource Сentre Может включать два типа ресурсов: Вычислительный ресурс, на котором выполняется обработка данных; Ресурс хранения данных (Storage Element, SE), который обеспечивает хранение и транспортировку данных между аналогичными ресурсами и/или данным ресурсом и пользователем.
Базовые грид-службы (services) Oбеспечивают работу всей грид-системы в целом подсистема управления загрузкой (Workload Management System, WMS), –служба распределения заданий (Resource Broker, RB); подсистема управления данными (Data Management System, DM) –базовые службы: служба файлового каталога, служба каталога метаданных; подсистема информационного обслуживания и мониторинга (Information System, IS) –служба регистрации и учета ресурсов грида, подсистема безопасности и контроля прав доступа (Grid Security Infrastructure, GSI) –служба выдачи и поддержки сертификатов (Certificate Authority, CA), –служба регистрации виртуальных организаций и пользователей, –служба управления виртуальными организациями и выдачи proxy-сертификатов (Virtual Organization Membership Service, VOMS), –служба продления действия прокси-сертификата (MyProxy Service, MP); подсистема протоколирования (Logging and Bookkeeping, LB) –служба отслеживания статуса выполняемых заданий, подсистема учета (Accounting Subsystem, AS) –служба учета использования грид-ресурсов.
Service-oriented architecture (SOA) Picture from: Введение в грид-технологии, Препринт НИИЯФ МГУ
Workload ManagementData Management Security Information & Monitoring Access Grid Middleware Services (gLite) API Computing Element Workload Management Metadata Catalog Storage Element Data Movement File & Replica Catalog Authorization Authentication Information & Monitoring Application Monitoring Auditing Job Provenance Package Manager CLI Accounting Site Proxy Overview paper
Общие архитектурные принципы Обязательное требование к Грид ПО - интероперабельность Работа по общим протоколам, обеспечивающая взаимодействие элементов распределенной системы и структуру информации Многоуровневая архитектура Функциональная базовая компонента – сервис(служба)
Middleware structure Applications have access both to Higher- level Grid Services and to Foundation Grid Middleware Higher-Level Grid Services are supposed to help the users building their computing infrastructure but should not be mandatory Foundation Grid Middleware will be deployed on the infrastructure –Must be complete and robust –Should allow interoperation with other major grid infrastructures –Should not assume the use of Higher-Level Grid Services Foundation Grid Middleware Security model and infrastructure Computing (CE) and Storage Elements (SE) Accounting Information and Monitoring Higher-Level Grid Services Workload Management Replica Management Visualization Workflow Grid Economies... Applications Overview paper
Core Services and Abstractions (e.g. TCP, HTTP) Resource and Connectivity protocol Diverse global services Local OS A p p l i c a t i o n s User Applications Collective services Fabric The Hourglass Model
Layered Grid Architecture (By Analogy to Internet Architecture) Application Fabric Connectivity Resource Collective Internet Transport Application Link TCP/IP Grid Fabric Layer (аппаратный уровень) протоколы, по которым службы работают с ресурсами; Connectivity Layer (связывающий уровень) протоколы, которые обеспечивают обмен данными между компонентами базового уровня (транспорт и маршрутизация сообщений) и протоколы аутентификации; Resource Layer (ресурсный уровень) – это ядро многоуровневой системы, которое взаимодействует с ресурсами, используя унифицированный интерфейс и не различая архитектурные особенности конкретного ресурса; Collective Layer (коллективный уровень) отвечает за координацию использования имеющихся ресурсов; Application Layer (прикладной уровень) описывает пользовательские приложения, работающие в среде виртуальной организации
Fabric Layer Fabric services Resource Management Configuration Management Configuration Management Monitoring and Fault Tolerance Monitoring and Fault Tolerance Node Installation & Management Node Installation & Management Fabric Storage Management Fabric Storage Management 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., Defined by interfaces not physical characteristics Picture: Flavia Donno, CERN, 2004
Connectivity Layer Communication -Internet protocols: IP, RSVP, TCP, TLS, SSL, FTP, HTTP, routing.. Security: Grid Security Infrastructure (GSI) – Authentication, authorization – Message protection – Single sign-on, delegation, identity mapping – Public key technology: SSL, X.509, GSS-API – Certificate Authorities
Resource Layer 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 All built on connectivity layer: GSI & IP
Collective Layer Index servers aka metadirectory 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 Application layer Users applications from VO - Scientific, Engineering, Collaboration…
Protocols, Services, and APIs at each Level Languages/Frameworks Fabric Layer Applications Local Access APIs and Protocols Collective Service APIs and SDKs Collective Services Collective Service Protocols Resource APIs and SDKs Resource Services Resource Service Protocols Connectivity APIs Connectivity Protocols
API (Application Programming Interface) A specification for a set of routines to facilitate application development Refers to definition, not implementation Spec often language-specific Examples: GSS API (security), MPI (message passing) Standard protocols enable interoperability across heterogeneous resources Standard APIs enable portability SDK (Software Development Kit) A particular instantiation of an API SDK consists of libraries and tools Can have multiple SDKs for an API Example of SDK: MPICH TCP/IP Protocol: Reliable byte streams WinSock APIBerkeley Sockets API Application And an API can have Multiple Protocols The Protocol can have Multiple APIs: Example:TCP/IP APIs include BSD sockets, Winsock, System V streams, …
Middleware: Globus ToolKit. Является базисом для построения грид и приложений Последняя версия пакета - Globus Toolkit включает средства разработки служб в соответствии с группой стандартов WS, среду их функционирования, а также базовый набор служб: управления заданиями(Execution Management), управления распределенными данными (Data Management), информационного обслуживания (Information Services), безопасности (Grid Security Infrastructure (GSI).
Globus Toolkit Services (GT2) Security (GSI – Grid Security Infrastructure ) –PKI-based Security (Authentication) Service Job submission and management (GRAM – Grid Resource Allocation and Management protocol ) –Uniform Job Submission Information services (MDS – Meta Directory Service ) –LDAP-based Information Service Remote file management (GASS – Grid Access Data Services ) –Remote Storage Access Service Remote Data Catalogue and Management Tools
Functionality, standardization Custom solutions OGSA, WSRF Real standards Multiple implementations Web services, etc. Managed shared virtual systems Computer science research Globus Toolkit Defacto standard Single implementation Internet standards The emergence of Open Grid standards 2010 Slide adapted from the Globus Alliance
Globus Toolkit (GT2)
Grid protocols (GSI, GRAM, …) enable resource sharing within virtual orgs; toolkit provides reference implementation ( = Globus Toolkit services) User Gatekeeper (factory) Reliable remote invocation GRAM (Grid Resource Allocation & Management) Reporter (registry + discovery) User process #2 Proxy #2 Create process Register Working Globus Toolkit l Protocols (and APIs) enable other tools and services for membership, discovery, data mgmt, workflow, … Other service (e.g. GridFTP) Other GSI- authenticated remote service requests GIIS: Grid Information Index Server (discovery) MDS-2 (Monitor./Discov. Svc.) Soft state registration; enquiry User process #1 Proxy Authenticate & create proxy credential GSI (Grid Security Infrastruc- ture) Picture from I.Foster,C.Kesselman THE ANATOMY OF THE GRID, 2001
GRAM LSFCondorNQE Application RSL Simple ground RSL Information Service Local resource managers RSL specialization Broker Ground RSL Co-allocator Queries & Info Resource Management Architecture RSL – Resource Specification Language
A Model Architecture for Data Grids Metadata Catalog Replica Catalog Tape Library Disk Cache Attribute Specification Logical Collection and Logical File Name Disk ArrayDisk Cache Application Replica Selection Multiple Locations NWS Selected Replica GridFTP Control Channel Performance Information & Predictions Replica Location 1Replica Location 2Replica Location 3 MDS GridFTP Data Channel
Key Concepts for GT4 Open Grid Services Architecture (OGSA) Web Services Resource Framework: –WSRF is the core of GT4 Web Services: –OGSA, WSRF, and GT4 are based on standard Web Services technologies such as SOAP and WSDL. –Ned to be familiar with the Web Services architecture and languages. The GT4 Architecture: –Based on WS-Resources and Web Services, and grid computing Java & XML: –to use GT4, you need to be able to program in Java, and to understand basic XML. Globus OGSA Web Services
Non-WS Components Pre-WS Authentication Authorization GridFTP C Common Libraries Globus Toolkit version 2 (GT2) Grid Resource Alloc. Mgmt (GRAM) Monitoring & Discovery (MDS) Web Services Components Data Mgmt Security Common Runtime Execution Mgmt Info Services
Web Services Components Non-WS Components Pre-WS Authentication Authorization GridFTP C Common Libraries WS Authentication Authorization Reliable File Transfer Data Access & Integration Grid Resource Alloc. Mgmt (WS GRAM) MDS3 Java WS Core Community Authorization Replica Location eXtensible IO (XIO) Globus Toolkit version 3 (GT3) Grid Resource Alloc. Mgmt (GRAM) Monitoring & Discovery (MDS) Data Mgmt Security Common Runtime Execution Mgmt Info Services
Web Services Components Non-WS Components Pre-WS Authentication Authorization GridFTP Pre-WS Grid Resource Alloc. & Mgmt Pre-WS Monitoring & Discovery C Common Libraries Authentication Authorization Reliable File Transfer Data Access & Integration Grid Resource Allocation & Management Index Java WS Core Community Authorization Replica Location eXtensible IO (XIO) Credential Mgmt Community Scheduling Framework Delegation Globus Toolkit version 4 (GT4) Data Replication Trigger C WS Core Python WS Core WebMDS Workspace Management Grid Telecontrol Protocol Contrib/ Preview Core Depre- cated Data Mgmt Security Common Runtime Execution Mgmt Info Services
Open Grid Services Architecture (OGSA) Standard interfaces & behaviors for distributed system management Service orientation: Grid Services, in analogy to Web Services –Web services: persistent –Grid services: transient (issues: e.g., how are they discovered?) –Extending WSDL to GSDL (work with W3C) Standard service specifications –Resource management –Data management –Workflow –Security –etc. Gives interoperability and true modularity of Grid structures
Grid Services Architecture(OGSA) Applications Grid Services Layer InformationResource mgmt SecurityData accessFault detection... Grid Fabric Layer TransportMulticast InstrumentationControl interfacesQoS mechanisms... High-energy physics data analysis Regional climate studies Collaborative engineering Parameter studies On-line instrumentation Application Toolkit Layer Distributed computing Data- intensive Collab. design Remote vizualization Remote control
Common features of computational Grid systems GFD.30The Open Grid Services Architecture, Version 1.0
Web-сервисы Используют спецификации: XML - язык разметки для того, чтобы обмениваться структурированными данными; SOAP (Simple Object Access Protocol)– основанный на XML протокол для спецификации содержания сообщений,служебной информации («конверт сообщения») и информации необходимой для правильной обработки сообщений; WSDL (Web Services Description Language) –основанный на XML, используемый для описания атрибутов, интерфейсов и других свойств веб-сервиса. Документ WSDL используется потенциальным клиентом, чтобы узнать о сервисе и способах обращения к нему. Веб-сервисы (или веб-службы) – это распределенные программные компоненты, идентифицируемые своим сетевым адресом, интерфейс которых описан на WSDL (язык описания веб-сервисов)
WS Components/Arch HTTP Server - Apache HTTP Server Application Server - Tomcat SOAP Engine - Apache AXIS Web Service - Any (you write this) Software stack used by GT4 WSRF Implementation Application rpcrouter SOAP HTTP TCP/IP Infrastructure (Data link) Application (servlet) Web server SOAP HTTP TCP/IP Infrastructure (Data link)
OGSA: definition of Grid Servise OGSA определяет грид-сервис как веб-сервис, который предоставляет набор интерфейсов, определенных на языке WSDL, и следует специфическим конвенциям для их создания и композиции сложных распределенных систем. Интерфейсы определяют способы обнаружения, динамического создания службы, управления жизненным циклом, уведомления, управление Конвенции определяют способ именования и возможность модернизации грид-служб Грид-сервис это (возможно временная) служба на базе грид-протоколов, описанная посредством WSDL
Grid Infrastructure:Open Standards Web services (WSDL, SOAP, WS-Security, WS-ReliableMessaging, …) WS-Resource Framework & WS-Notification (Resource identity, lifetime, inspection, subscription, …) WS-Agreement (Agreement negotiation) WS Distributed Management (Lifecycle, monitoring, …) Applications of the framework (Compute, network, storage provisioning, job reservation & submission, data management, application service QoS, …)
Reference 1.I.Foster, C.Kesselman The Grid -Blueprint for a New Computing Infrastructure, - Morgan Kaufman Publishers, I.Foster, C. Kesselmann, S. Tuecke, The Anatomy of the Grid, (2000) 3.I. Foster, C. Kesselmann, S. Tuecke, J.M.Nick The Physiology of the Grid, (2002) 4.Global Grid Forum (GGF) Documents 5.World Wide Web Consortium 6.Введение в технологию Грид./Составлено А.К.Кирьяновым и Ю.Ф.Рябовым – ПИЯФ, Введение в грид-технологии, рус. (препринт НИИЯФ МГУ, 2007)