Грид технологии Лекция 7 Архитектура Globus Toolkit

Slides:



Advertisements
Similar presentations
LEAD Portal: a TeraGrid Gateway and Application Service Architecture Marcus Christie and Suresh Marru Indiana University LEAD Project (
Advertisements

MyProxy Jim Basney Senior Research Scientist NCSA
© 2007 Open Grid Forum Data Management Challenge - The View from OGF OGF22 – February 28, 2008 Cambridge, MA, USA Erwin Laure David E. Martin Data Area.
GT 4 Security Goals & Plans Sam Meder
Data Management Expert Panel - WP2. WP2 Overview.
An Overview of OGSA-DAI Kostas Tourlas
CSF4, SGE and Gfarm Integration Zhaohui Ding Jilin University.
The Globus Toolkit and OMII-Europe Neil Chue Hong EPCC, University of Edinburgh Thanks to Ian Foster and the Globus Team for slides.
GridFTP: File Transfer Protocol in Grid Computing Networks
MTA SZTAKI Hungarian Academy of Sciences Grid Computing Course Porto, January Introduction to Grid portals Gergely Sipos
Seminar Grid Computing ‘05 Hui Li Sep 19, Overview Brief Introduction Presentations Projects Remarks.
USING THE GLOBUS TOOLKIT This summary by: Asad Samar / CALTECH/CMS Ben Segal / CERN-IT FULL INFO AT:
1 CENTER FOR PARALLEL COMPUTERS An Introduction to Globus Toolkit® 3 -Developing Interoperable Grid services.
Introduction to Globus Toolkit 4
Globus Toolkit 4 hands-on Gergely Sipos, Gábor Kecskeméti MTA SZTAKI
The Globus Toolkit Gary Jackson. Introduction The Globus Toolkit is a product of the Globus Alliance ( It is middleware for developing.
GGF Toronto Spitfire A Relational DB Service for the Grid Peter Z. Kunszt European DataGrid Data Management CERN Database Group.
1-2.1 Grid computing infrastructure software Brief introduction to Globus © 2010 B. Wilkinson/Clayton Ferner. Spring 2010 Grid computing course. Modification.
Data Grids: Globus vs SRB. Maturity SRB  Older code base  Widely accepted across multiple communities  Core components are tightly integrated Globus.
4b.1 Grid Computing Software Components of Globus 4.0 ITCS 4010 Grid Computing, 2005, UNC-Charlotte, B. Wilkinson, slides 4b.
GT4 Introductory and Advanced Practicals Rachana Ananthakrishnan, Charles Bacon, Lisa Childers Argonne National Laboratory University of Chicago.
Globus Computing Infrustructure Software Globus Toolkit 11-2.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
Data Grid Web Services Chip Watson Jie Chen, Ying Chen, Bryan Hess, Walt Akers.
1 Globus Developments Malcolm Atkinson for OMII SC 18 th January 2005.
Globus 4 Guy Warner NeSC Training.
Kate Keahey Argonne National Laboratory University of Chicago Globus Toolkit® 4: from common Grid protocols to virtualization.
Java Services in Apache Axis Plus GT Libraries and Handlers Your Python Service Flac WS RFT GRAM Delegation Index Trigger Python WS Core Your C Service.
The Data Replication Service Ann Chervenak Robert Schuler USC Information Sciences Institute.
Data Management Kelly Clynes Caitlin Minteer. Agenda Globus Toolkit Basic Data Management Systems Overview of Data Management Data Movement Grid FTP Reliable.
OPEN GRID SERVICES ARCHITECTURE AND GLOBUS TOOLKIT 4
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
Grid Resource Allocation and Management (GRAM) Execution management Execution management –Deployment, scheduling and monitoring Community Scheduler Framework.
CSF4 Meta-Scheduler Name: Zhaohui Ding, Xiaohui Wei
Grid Services Overview & Introduction Ian Foster Argonne National Laboratory University of Chicago Univa Corporation OOSTech, Baltimore, October 26, 2005.
National Computational Science National Center for Supercomputing Applications National Computational Science NCSA-IPG Collaboration Projects Overview.
CYBERINFRASTRUCTURE FOR THE GEOSCIENCES Data Replication Service Sandeep Chandra GEON Systems Group San Diego Supercomputer Center.
Communicating Security Assertions over the GridFTP Control Channel Rajkumar Kettimuthu 1,2, Liu Wantao 3,4, Frank Siebenlist 1,2 and Ian Foster 1,2,3 1.
Grid Security: Authentication Most Grids rely on a Public Key Infrastructure system for issuing credentials. Users are issued long term public and private.
Mike Jackson EPCC OGSA-DAI Architecture + Extensibility OGSA-DAI Tutorial GGF17, Tokyo.
Amy Krause EPCC OGSA-DAI An Overview OGSA-DAI Technology Update GGF17, Tokyo (Japan)
Reliable File Transfer: Lessons Learned Bill Allcock, ANL Ravi Madduri, ANL.
6/23/2005 R. GARDNER OSG Baseline Services 1 OSG Baseline Services In my talk I’d like to discuss two questions:  What capabilities are we aiming for.
Rights Management in Globus Data Services Ann Chervenak, ISI/USC Bill Allcock, ANL/UC.
WEB SERVER SOFTWARE FEATURE SETS
MGRID Architecture Andy Adamson Center for Information Technology Integration University of Michigan, USA.
Globus Data Storage Interface (DSI) - Enabling Easy Access to Grid Datasets Raj Kettimuthu, ANL and U. Chicago DIALOGUE Workshop August 2, 2005.
1 Case Study: Business Intelligence & Customer Data Customer Support Web-based Dashboard VP Marketing SQL XSLT XML Data Grid Customer Data Customer Order.
Amy Krause EPCC OGSA-DAI An Overview OGSA-DAI on OMII 2.0 OMII The Open Middleware Infrastructure Institute NeSC,
Parallel Computing Globus Toolkit – Grid Ayaka Ohira.
Globus Toolkit 4: Current Status and Futures Stuart Martin Argonne National Lab.
Отчетность средствами Reporting Services 2008
Classic Storage Element
Module Overview Installing and Configuring a Network Policy Server
Example: Rapid Atmospheric Modeling System, ColoState U
Data Bridge Solving diverse data access in scientific applications
Peter Kacsuk – Sipos Gergely MTA SZTAKI
Study course: “Computing clusters, grids and clouds” Andrey Y. Shevel
THE STEPS TO MANAGE THE GRID
Viet Tran Institute of Informatics Slovakia
PHP / MySQL Introduction
Patrick Dreher Research Scientist & Associate Director
A Web-Based Data Grid Chip Watson, Ian Bird, Jie Chen,
Core Grid Functions: A Minimal Architecture for Grids
Core Grid Functions: A Minimal Architecture for Grids
Module 01 ETICS Overview ETICS Online Tutorials
Cloud computing mechanisms
From Prototype to Production Grid
Grid Computing Software Interface
Presentation transcript:

Грид технологии Лекция 7 Архитектура Globus Toolkit Радченко Глеб Игоревич, каф. СП, ЮУрГУ http://dom.susu.ru/grid.htm

Содержание Обеспечение безопасности в GT4 Компоненты управления данными Управление выполнением задач Информационные службы

Обеспечение безопасности в GT4

Globus Toolkit v4 www.globus.org Python Runtime WebMDS C Runtime Data Replication Credential Mgmt Replica Location Grid Telecontrol Protocol Delegation Data Access & Integration Community Scheduling Framework WebMDS Python Runtime Community Authorization Reliable File Transfer Workspace Management Trigger C Runtime Authentication Authorization GridFTP Grid Resource Allocation & Management Index Java Runtime Security Data Mgmt Execution Mgmt Info Services Common Runtime

Безопасность GT Контроль доступа к разделенным ресурсам Обеспечение управления доступом, например разделение политик доступа для рабочих групп Поддержка многопользовательских объединений Объединение посредством взаимно-доверяемых служб Поддержка динамического определения доверяемых областей пользователями и ВО Персональная (или ВО) коллекция ресурсов, которые работают вместе на базе доверия пользователя (ВО). If two parties have certificates, and if both parties trust the CAs that signed each other's certificates, then the two parties can prove to each other that they are who they say they are. This is known as mutual authentication

Безопасность GT4 Права Права ВО Права KCA Доступ Вычислительный центр Authz Callout: SAML, XACML SSL/WS-Security c сертификатами доступа Службы (работают на стороне пользователя) Права Вычислительный центр Доступ MyProxy is an online credential repository. You can store X.509 proxy credentials in the MyProxy repository, protected by a passphrase, for later retrieval over the network. This eliminates the need for manually copying private key and certificate files between machines. MyProxy can also be used for authentication to grid portals and credential renewal with job managers. The KCA component is a Kerberized certification service. It issues proxy certificates based on a Kerberos authentication. The KX.509 component is a Kerberized client that generates and stores proxy certificates with help from KCA. CAs или VOMs выпускают сертификаты SAML или X.509 Local policy on VO identity or attribute authority ВО Права Пользователи Права KCA MyProxy

Безопасность GT4 Аутентификация на основе открытого ключа Расширяемая инфраструктура авторизации на основе стандартов Web-служб Идентификатор авторизации SAML Интегрированный механизм обработки политик язык XACML и т.п. Службы управления сертификатами MyProxy Служба Групповой Авторизации Отдельная служба делегирования

Использование стандартов безопасности GT4 Поддерживается но медленный Поддерживается но не безопасный Самый быстрый по умолчанию

Интеграция GT и XACML eXtensible Access Control Markup Language — расширяемый язык разметки контроля доступа стандарт OASIS, открытая реализация XACML: сложный язык работы с политиками GT предоставляет среду исполнения XACML Включена в каждом клиенте и сервере GT … которая может быть прозрачно вызвана из среды исполнения или пользовательского приложения.

Инфраструктура авторизации GT 10

Другие службы безопасности 11 MyProxy Упрощенное управление сертификатами Интеграция с Web-порталами (Tomcat) Поддержка единого входа KCA & kx.509 Интеграция с доменами Kerberos SimpleCA Генерация сертификатов Online

Компоненты управления данными

Globus Toolkit v4 www.globus.org Security Data Mgmt Execution Mgmt Replication Credential Mgmt Replica Location Grid Telecontrol Protocol Delegation Data Access & Integration Community Scheduling Framework WebMDS Python Runtime Community Authorization Reliable File Transfer Workspace Management Trigger C Runtime Authentication Authorization GridFTP Grid Resource Allocation & Management Index Java Runtime Security Data Mgmt Execution Mgmt Info Services Common Runtime

GT4 Data Management Хранение/перемещение больших объемов данных с/на узлы GridFTP, Reliable File Transfer (RFT) Отдельно, и интегрировано с GRAM Определение местонахождения необходимой информации Replica Location Service (RLS) Реплики данных для увеличения производительности Distributed Replication Service (DRS) Обеспечение доступа к различным источникам данных Файловые системы параллельные файловые системы, иерархические системы хранения: GridFTP Базы данных: OGSA DAI

GridFTP в GT4 Поддержка IPv6 Расширенный ввод/вывод (XIO) для различных транспортных протоколов Разделение на полосы (Striping)  скорости передачи данных порядка мульти-Gb/sec 27 Gbit/s на 30 Gbit/s канале Подключаемый Front-end: канал, контролируемый WS Back-end: HPSS, кластерная файловая система Передача: UDP, NetBLT transport Future: integration of provisioning E.g., storage reservation HPSS High Performance Storage System высокопроизводительная система хранения (данных) If you simply wish to access data that others have made available, you need a GridFTP client. The Globus Toolkit provides a client called globus-url-copy for this purpose. This client is capable of accessing data via a range of protocols (http, https, ftp, gsiftp, and file). As noted above this is not an interactive client, but a command line interface, suitable for scripting. For example, the following command: globus-url-copy gsiftp://remote.host.edu/path/to/file file:///path/on/local/host would transfer a file from a remote host to the locally accessible path specified in the second URL. Finally, if you wish to add access to files stored behind GridFTP servers, or you need custom client functionality, you can use our very powerful client library to develop custom client functionality.

Reliable File Transfer: надежный протокол передачи 16 Передача: запустил и забыл Интерфейс Web-служб Интегрированная система восстановления RFT Client SOAP Messages Notifications (Optional) RFT Service RFT is a Web Services Resource Framework (WSRF) compliant web service that provides “job scheduler"-like functionality for data movement. You simply provide a list of source and destination URLs (including directories or file globs) and then the service writes your job description into a database and then moves the files on your behalf. Once the service has taken your job request, interactions with it are similar to any job scheduler. Service methods are provided for querying the transfer status, or you may use standard WSRF tools (also provided in the Globus Toolkit) to subscribe for notifications of state change events. We provide the service implementation which is installed in a web services container (like all web services) and a very simple client. There are Java classes available for custom development, but due to lack of time and resources, work is still needed to make this easier. GridFTP Server GridFTP Server Master DSI Protocol Interpreter Data Channel IPC Receiver Slave DSI IPC Link Data Channel Protocol Interpreter Master DSI Slave DSI IPC Receiver IPC Link

Replica Location Service Позволяет определить положение файлов посредством карты имен: логических в физические Распределенный индекс имен Управление ~40 миллионами файлов на ~10 сайтах Index Index RLS is a simple registry that keeps track of where replicas exist on physical storage systems. Users or services register files in RLS when the files are created. Later, users query RLS servers to find these replicas. RLS is a distributed registry, meaning that it may consist of multiple servers at different sites. By distributing the RLS registry, we are able to increase the overall scale of the system and store more mappings than would be possible in a single, centralized catalog. We also avoid creating a single point of failure in the Grid data management system. If desired, RLS can also be deployed as a single, centralized server. Local DB Update send (secs) Bloom filter (secs) Bloom filter (bits) 10K <1 2 1 M 24 10 M 5 M 7 175 50 M

OGSA-DAI Предоставляет сервисно-ориентированный доступ к структурированным ресурсам данных как часть системы Globus Определяет интерфейсы доступа к различным типам хранилищ данных (начиная с реляционных и XML)

OGSA-DAI: инфраструктура для разработки приложений Поддерживает доступ к данным Реляционные: MySQL, Oracle, DB2, SQL Server, Postgres XML: Xindice, eXist Файлы – CSV, BinX, EMBL, OMIM, SWISSPROT,… Поддерживает передачу данных SOAP над HTTP FTP; GridFTP E-mail Inter-service Поддерживает трансформацию данных XSLT ZIP; GZIP Поддерживает безопасность X.509 certificate based security

Инфраструктура OGSA-DAI Application Client Toolkit 20 OGSA-DAI service Data resources used to be called connection managers Engine readFile XPath SQLQuery XSLT GZip GridFTP Действия JDBC XMLDB File Ресурсы данных MySQL SQL Server DB2 XIndice SWISS PROT Базы данных

Пример расширения OGSA-DAI service Engine SQLQuery SQLQuery Multiple Data resources used to be called connection managers SQLQuery SQLQuery Multiple SQL GDS JDBC MySQL SQL JDBC SQL JDBC SQL JDBC SQL JDBC

OGSA-DAI: другие свойства Инфраструктура для создания клиентов Библиотека Client Toolkit library Инфраструктура для разработки функциональности Возможность расширения существующих или создания собственных действий Возможность объединения действий Высоко-расширяемая Возможность «затачивать» продукт Разработка собственных служб, клиентских приложений и собственной функциональности (в зависимости от данных)

Управление выполнением задач

Security Data Mgmt Execution Mgmt Info Services Common Runtime Replication Credential Mgmt Replica Location Grid Telecontrol Protocol Delegation Data Access & Integration Community Scheduling Framework WebMDS Python Runtime Community Authorization Reliable File Transfer Workspace Management Trigger C Runtime Authentication Authorization GridFTP Grid Resource Allocation & Management Index Java Runtime Security Data Mgmt Execution Mgmt Info Services Common Runtime

Управление исполнением (GRAM) 25 Общий интерфейс для планировщиков на основе WS Unix, Condor, LSF, PBS, SGE, … Обобщенно: интерфейс для управления процессами Формирование среды исполнения Загрузка данных Мониторинг и управление жизненным циклом Завершение работы, очистка

Архитектура GT4 WS GRAM Service host(s) and compute element(s) 26 Service host(s) and compute element(s) Job events SEG GT4 Java Container Compute element GRAM services GRAM services Local job control Local scheduler Job functions sudo GRAM adapter Delegate The Scheduler Event Generator (SEG) is a program which uses scheduler-specific monitoring modules to generate job state change events. At the SEG level, the state change events correspond to changes in any jobs which are managed by the scheduler, even if they do not correspond to jobs initiated by the Managed Job Service. Client Transfer request Delegation Delegate GridFTP User job RFT File Transfer FTP control FTP data Remote storage element(s) GridFTP

Архитектура GT4 WS GRAM Сертификат может быть передан приложению 27 Service host(s) and compute element(s) Job events SEG GT4 Java Container Compute element GRAM services GRAM services Local job control Local scheduler Job functions sudo GRAM adapter Delegate Client Transfer request Delegation Delegate GridFTP User job RFT File Transfer FTP control FTP data Remote storage element(s) GridFTP Сертификат может быть передан приложению

Архитектура GT4 WS GRAM Сертификат может быть 28 Service host(s) and compute element(s) Job events SEG GT4 Java Container Compute element GRAM services GRAM services Local job control Local scheduler Job functions sudo GRAM adapter Delegate Client Transfer request Delegation Delegate GridFTP User job RFT File Transfer FTP control FTP data Remote storage element(s) GridFTP Сертификат может быть передан для авторизации в RFT

Архитектура GT4 WS GRAM Сертификат может быть 29 Service host(s) and compute element(s) Job events SEG GT4 Java Container Compute element GRAM services GRAM services Local job control Local scheduler Job functions sudo GRAM adapter Delegate Client Transfer request Delegation Delegate GridFTP User job RFT File Transfer FTP control FTP data Remote storage element(s) GridFTP Сертификат может быть использован для аутентификации В GridFTP

Производительность WS GRAM 30 Время постановки базового задания GRAM Pre-WS GRAM: < 1 секунды WS GRAM: 2 секунды Максимальное количество заданий Pre-WS GRAM: 300 заданий WS GRAM: 32,000 заданий (максимум папок в директории)

Workspace Service: Служба рабочего пространства 31 Политика Задача Клиент Согласование доступа Инициация задачи Мониторинг задачи Контроль задачи Окружение Поставщик ресурса Интерфейс

Задачи могут быть вложенные 32 Клиент Политика Клиент Клиент Среда Поставщик ресурсов Интерфейс

Например Инициация, управление и мониторинг на всех уровнях 33 JVM Установить службу JVM Установить контейнер In computing, a hypervisor (also: virtual machine monitor) is a virtualization platform that allows multiple operating systems to run on a host computer at the same time. The term usually refers to an implementation using full virtualization. VM Установить виртуальную машину Гипервизор/OS Установить гипервизор/OS Физическая машина Обеспечить аппаратные ресурсы Инициация, управление и мониторинг на всех уровнях

Динамическое развертывание служб 34 Сообщество А Сообщество Z … Групповые механизмы планирования Распределение данных Групповой менеджмент Научные службы ... Требования: Управление группами Устойчивость Гарантированные ресурсы Изолированность (принцип «невмешательства»)

Затраты на использование виртуальных машин 35 Job in booted VM GRAM job in paused VM GRAM job

Информационные службы

Python Runtime WebMDS C Runtime Trigger Java Runtime Index Data Replication Credential Mgmt Replica Location Grid Telecontrol Protocol Delegation Data Access & Integration Community Scheduling Framework WebMDS Python Runtime Community Authorization Reliable File Transfer Workspace Management Trigger C Runtime Authentication Authorization GridFTP Grid Resource Allocation & Management Index Java Runtime Security Data Mgmt Execution Mgmt Info Services Common Runtime

Мониторинг и обнаружение 38 Должны поддерживаться стандартные механизмы мониторинга и обнаружения служб WSRF/WSN предоставляют такие механизмы Общая инфраструктура для сбора информации: MDS-Index: кешируемые Xpath запросы MDS-Trigger: выполнение действия по условию Глубокая интеграция с контейнерами и службами Globus: каждая служба GT4 может быть обнаружена GRAM, RFT, GridFTP, CAS, … XPath (XML Path Language) - язык запросов к элементам XML-документа. Он был разработан для организации доступа к частям документа XML в файлах трансформации XSLT, и является стандартом консорциума W3C. Обнаружение - это процесс, с помощью которого клиентское приложение находит Web-службу и определяет, что же она может делать. При выполнении этого процесса к службе и от неё идут сообщения, которые описывают, что именно служба может делать. Клиентам, пред тем как использовать службу, эти данные надо знать. Кроме того, служба сообщает клиенту, какие виды сообщений она будет принимать.

Мониторинг и обнаружение служб GT4 Клиенты (WebMDS) 39 GT4 Container WS-ServiceGroup MDS- Index Регистрация и доступ WSRF/WSN WebMDS: configurable via XSLT style sheets WebMDS enables end users to view monitoring information via a standard web browser interface, without installing any additional software on their PC. WebMDS is implemented as a servlet that uses a plugin interface to gather monitoring information (or any other information in XML format) and XSLT transforms, and present the data to the user in a readable form. adapter GT4 Cont. GT4 Container MDS- Index MDS- Index Особые протоколы для не-WS сущностей Автомат. регистрация в контейнере GridFTP RFT GRAM User

Производительность сервера индекса 40 По мере роста индекса MDS4, замедляется время обработки запроса, хотя и менее чем линейно Время ответа увеличивается в связи с увеличивающимся объемом передаваемых данных Ответ перестраивается под каждый запрос

Поставщики информации 41 Поставщики информации (information providers) GT4 собирают информацию с определенной системы и предоставляют в виде свойств ресурса WSRF Количество поставщиков информации постоянно растет Ganglia, CluMon, Nagios SGE, LSF, OpenPBS, PBSPro, Torque Множество попыток разработки новых поставщиков Например мониторинг сетей, систем хранения, сенсоров Ganglia - масштабируемая распределенная система мониторинга для высокопроизводительных компьютерных систем, таких как кластеры и Грид. Она основана на иерархической структуре, соответствующей объединениям кластеров. NCSA CluMon is a Linux-based cluster monitoring tool.

Службы Java на Apache Axis плюс библиотеки и обработчики GT 42 КЛИЕНТ Your Java Client Your C Client Your Python Client Ваш клиент (Java) Ваш клиент (С) Ваш клиент (Python) Your Java Client Your C Client Your Python Client Ваш клиент (Java) Ваш клиент (С) Ваш клиент (Python) In summary Совместимые с WS-I сообщения SOAP X.509 сертификаты = общая аутентификация Your Java Service GRAM RFT Delegation Index Trigger Archiver CAS OGSA-DAI GTCP Ваша служба (Python) Ваша служба (С) Ваша служба (Java) GridFTP SimpleCA MyProxy RLS Pre-WS GRAM Pre-WS MDS pyGlobus WS Core C WS Core Службы Java на Apache Axis плюс библиотеки и обработчики GT Хостинг на Python, библиотеки GT Службы на C, использующие библиотеки GT СЕРВЕР

Ссылки и литература Я. Фостер, К. Кессельман, Д.М. Ник, С. Тьюке “ФИЗИОЛОГИЯ ГРИД”. Открытая архитектура грид- служб для интеграции распределённых систем. [http://www.gridclub.ru/library/publication.2004-11- 29.8307957187/publ_file/] Borja Sotomayor. The Globus Toolkit 4 Programmer’s Tutorial. November 2005. http://gdp.globus.org/gt4- tutorial/download/progtutorial-pdf_0.2.1.tar.gz] Globus Toolkit 4.2.1 Release Manuals [http://www- unix.globus.org/toolkit/docs/4.2/4.2.1/]

Презентации

Спасибо за внимание! Ваши вопросы? Страница курса: http://dom.susu.ru/grid.htm Радченко Глеб Игоревич, каф. СП, ЮУрГУ