'

Введение в Grid и пакет ‘Глобус’ (Globus Toolkit™)

Понравилась презентация – покажи это...





Слайд 0

Введение в Grid и пакет ‘Глобус’ (Globus Toolkit™) Вероника Нефёдова The Globus Project™ Argonne National Laboratory USC Information Sciences Institute http://www.globus.org


Слайд 1

February 5, 2016 2 Introduction to Grid Computing Содержание Введение в Grid (Grid Computing) Определения Архитектура Grid Проблема программирования Глобус (The Globus Toolkit™) Введение, защита, управление ресурсами, информационный сервис, управление данными Будущие направления


Слайд 2

February 5, 2016 3 Introduction to Grid Computing Проблема Grid Гибкое, защищённое, координированное пользование динамичными ресурсами между различными динамичными группами персональных пользователей и организаций. From “The Anatomy of the Grid: Enabling Scalable Virtual Organizations” Сделать возможным для различных групп пользователей (‘виртуальных организаций’) совместное использование географически удалённых ресурсов при совместной работе – подразумевая отсутствие… Центрального расположения, Централизированного контроля, Атмосферы доверия в рабочих отношений.


Слайд 3

February 5, 2016 4 Introduction to Grid Computing Состовляющие Проблемы Совместное использование ресурсов Компьютеры, хранение данных, сети, … Совместное использование ресурсов всегда возможно только при определённых условиях: вопросы доверия, внутренних правил, оплата, переговоры, … Координированное решение задач Анализ удалённых данных, вычисления, совместная работа, … Виртуальные организации - динамичные, включающие различные Институты, группы Научные сообщества включают различные классические организации Многочисленные или нет, динамичные или статичные


Слайд 4

February 5, 2016 5 Introduction to Grid Computing DOE X-ray grand challenge: ANL, USC/ISI, NIST, U.Chicago Томографическая реконструкция Сбор данных в режиме реального времени wide-area dissemination ПК & ВР совместное управление Advanced Photon Source Доступ в сети к научным инструментам архивы


Слайд 5

February 5, 2016 6 Introduction to Grid Computing Image courtesy Harvey Newman, Caltech Grids в Физике Высоких энергий


Слайд 6

February 5, 2016 7 Introduction to Grid Computing Maтематики решили задачу NUG30 Поиск решения NUG30 quadratic assignment problem Совместная работа математиков и компьютерных специалистов Condor-G произвёл 3.46E8 CPU секунд за 7 дней (мах 1009 процессоров) в США и Италии (8 организаций) 14,5,28,24,1,3,16,15, 10,9,21,2,4,29,25,22, 13,26,17,30,6,20,19, 8,18,7,27,12,11,23 MetaNEOS: Argonne, Iowa, Northwestern, Wisconsin


Слайд 7

February 5, 2016 8 Introduction to Grid Computing Кто = 1000s домашних ПК компания Entropia Научно-исследовательская компания Scripps Единая Цель = ускорить исследования в области СПИДа Домашние компьютеры тестируют лекарства от СПИДа


Слайд 8

February 5, 2016 9 Introduction to Grid Computing Расширенный контекст “Grid Computing” имеет много общего с различными индустриальными приложениями Business-to-business, Peer-to-peer, Application Service Providers, Storage Service Providers, Distributed Computing, Internet Computing… Проблема совместного использования ресурсов на сегодня не решена Сложные требования : “Запустить программу X на домене организации Y при условии ограничений данной организации P, обеспечивая доступ к данным на домене организации, Z при условии ограничений Q” Высокая производительность : новые требования высоко-производительных систем


Слайд 9

February 5, 2016 10 Introduction to Grid Computing Компьютерные сети Сети vs. Производительность компьютеров Вычислительные скорости удваиваются каждые 18 месяцев Скорости сетей удваиваются каждые 9 месяцев Разница на целый порядок за 5 лет 1986 to 2000 компьютеры: x 500 сети: x 340,000 2001 to 2010 компьютеры: x 60 сети: x 4000 Moore’s Law vs. storage improvements vs. optical improvements. Graph from Scientific American (Jan-2001) by Cleo Vilett, source Vined Khoslan, Kleiner, Caufield and Perkins.


Слайд 10

February 5, 2016 11 Introduction to Grid Computing Глобус - The Globus Project™ мы делаем работу в сети (Grid) реальностью Тесное сотрудничество с реальными Grid проектами в науке и промышленности Разработка и распространение стандартных протоколов для Grid с целью достижения совместимости и создания инфраструктуры Разработка и распространение стандартного програмного обеспечения для Grid - универсального и мультиплатформного Пакет Глобус - The Globus Toolkit™: Бесплатное, в прямом доступе; база для создания различных приложений и создания Grid инфраструктуры Global Grid Forum: Разработка стандартных протоколов и приложений для Grid


Слайд 11

February 5, 2016 12 Introduction to Grid Computing Некоторые Grid Проекты New New


Слайд 12

February 5, 2016 13 Introduction to Grid Computing Некоторые Grid Проекты New New New New New


Слайд 13

February 5, 2016 14 Introduction to Grid Computing Некоторые Grid Проекты New New


Слайд 14

February 5, 2016 15 Introduction to Grid Computing Некоторые Grid Проекты New New Also many technology R&D projects: e.g., Condor, NetSolve, Ninf, NWS See also www.gridforum.org


Слайд 15

February 5, 2016 16 Introduction to Grid Computing The 13.6 TF TeraGrid: Computing at 40 Gb/s 26 24 8 4 HPSS 5 HPSS HPSS UniTree External Networks External Networks External Networks External Networks Site Resources Site Resources Site Resources Site Resources NCSA/PACI 8 TF 240 TB SDSC 4.1 TF 225 TB Caltech Argonne TeraGrid/DTF: NCSA, SDSC, Caltech, Argonne www.teragrid.org


Слайд 16

February 5, 2016 17 Introduction to Grid Computing U.S. PIs: Avery, Foster, Gardner, Newman, Szalay www.ivdgl.org iVDGL: International Virtual Data Grid Laboratory


Слайд 17

February 5, 2016 18 Introduction to Grid Computing Для Информации Globus Project™ www.globus.org Grid Forum www.gridforum.org Книга (Morgan Kaufman) www.mkp.com/grids


Слайд 18

Некоторые Определения The Globus Project™ Argonne National Laboratory USC Information Sciences Institute http://www.globus.org


Слайд 19

February 5, 2016 20 Introduction to Grid Computing Некоторые Важные Определения Ресурс Протокол сети Сервис, обеспечиваемый сетью Интерфейс приложения - Application Programmer Interface (API) Software Development Kit (SDK) Синтаксис


Слайд 20

February 5, 2016 21 Introduction to Grid Computing Ресурс Всё, что можно использовать совместно Компьютеры, накопители информации, данные, компьютерные программы и т.д. Не обязательно должен быть физической единицей Condor pool, distributed file system, … Определяется интерфейсами, а не устройствами ‘планировщик’ (such as LSF and PBS) определяет комьютерный ресурс Open/close/read/write определяет доступ к распределённой системе файлов , e.g. NFS, AFS, DFS


Слайд 21

February 5, 2016 22 Introduction to Grid Computing Протокол сети Формальное описание форматов сообщений и набор правил для обмена сообщениями Правила могут определять последовательность обмена сообщениями Протокол может определять изменение состояния ситемы в конечной точке (например, изменение состояния системы файлов) Хорошие протоколы созданы с одной целью Протоколы можно накладывать друг на друга Примеры Протоколов IP, TCP, TLS (was SSL), HTTP, Kerberos


Слайд 22

February 5, 2016 23 Introduction to Grid Computing Сервис, обеспечиваемый сетью Создание протокола, который определяет набор возможностей Протокол определяет связь с сервисом Все сервисы нуждаются в протоколе Не все протоколы используются для предоставления сервиса(e.g. IP, TLS) Примеры: FTP и Web серверы


Слайд 23

February 5, 2016 24 Introduction to Grid Computing Application Programming Interface (API) Набор спецификаций для приложения Относится к функциональному определению, а не к конкретному воплощению Например, существует много воплощений MPI Часто эти спецификации бывают привязаны к конкретному языку программирования Название программы, количество и тип аргументов, определённые языковые конструкции Поведение функции или программы Примеры GSS API (security), MPI (message passing)


Слайд 24

February 5, 2016 25 Introduction to Grid Computing Средство для создания програмных продуктов (SDK) Определённое воплощение API SDK состоит из библиотек и программ Представляет собой воплощение спецификаций API Для одного API может быть много SDKs


Слайд 25

February 5, 2016 26 Introduction to Grid Computing Синтаксис Правила для расшифровки информации XML, Condor ClassAds, Globus RSL X.509 certificate format (RFC 2459) Cryptographic Message Syntax (RFC 2630) Не протокол ! Один и тот же синтаксис может быть использован разными протоколами (e.g., XML); а также быть использован в других целях Синтаксис может быть наложен один на другой E.g., Condor ClassAds -> XML -> ASCII Очень важно понимать концепцию наложения синтаксиса при сравнениях и оценке.


Слайд 26

February 5, 2016 27 Introduction to Grid Computing Протокол может иметь множество APIs TCP/IP APIs включают в себя BSD sockets, Winsock, System V streams, … Протокол предоставляет совместимость: программы, использующие разные APIs, могут обмениваться информацией Мне не нужно знать API другого пользователя TCP/IP Protocol: Reliable byte streams WinSock API Berkeley Sockets API Application Application


Слайд 27

February 5, 2016 28 Introduction to Grid Computing API может иметь много протоколов MPI - портативно: любая правильная программа должна компилироваться и работать на любой платформе Не предоставляет совместимость:все процессы должны использовать одинSDK E.g., MPICH и LAM версии MPI


Слайд 28

February 5, 2016 29 Introduction to Grid Computing APIs и Протоколы очень важны Стандартные APIs/SDKs важны Они дают приложению портативность Но без стандартных протоколов внутренняя совместимость невозможна (любой SDK понимет любой протокол?) Стандартные протоколы важны Дают внутреннюю совместимость независимости от месторасположения Делают возможным совместные инфраструктуры Но без стандартных APIs/SDKs становится невозможным портативность приложения (различные платформы работают с протоколами по-разному)


Слайд 29

Архитектура Grid The Globus Project™ Argonne National Laboratory USC Information Sciences Institute http://www.globus.org


Слайд 30

February 5, 2016 31 Introduction to Grid Computing Зачем обсуждать Архитектуру? Описание Предлoжить общие термины для обсуждения Grid систем Направление работ Определить основные области, требующие создания сервиса Предопределение Определить стандартные “Intergrid” протоколы и APIs для создания совместимых и портативных приложений


Слайд 31

February 5, 2016 32 Introduction to Grid Computing Некоторые Требования Идентификация Авторизация&правила Поиск ресурсов Описание ресурсов Резервирование ресурсов Распределённые алгоритмы Доступ к удалённым данным Высоко-скоростная пересылка данных Гарантирование производительности Обнаружение несанкционированного доступа Распределение ресурсов Счета и оплата Обнаружение неполадок Эволюция систем Мониторинг И т.д. И т.д. …


Слайд 32

February 5, 2016 33 Introduction to Grid Computing В итоге, Grid Архитектура, ориентированная на Протоколы: Создание протоколов и сервисной оболочки Grid Доступ к удалённым ресурсам через протоколы Новые сервисы: предоставление ресурсов “работать в Grid” = понимать Intergrid протоколы В основном уже имеющиеся протоколы или их расширения Создание Grid APIs & SDKs Интефейсы к Grid протоколам и сервисной оболочкe Помощь в создании приложений путём созданий абстракций на более высоком уровне Модель , имеющая огромный успех - Internet


Слайд 33

February 5, 2016 34 Introduction to Grid Computing Многоуровневая Архитектура Grid (По Аналогии с Архитектутой Интернета)


Слайд 34

February 5, 2016 35 Introduction to Grid Computing Протоколы, Сервис и APIs находятся на каждом уровне Язык/Frameworks Fabric Layer Приложение Протоколы и APIs локального доступа APIs and SDKs общего сервиса Общий сервис Протоколы общего сервиса APIs and SDKs ресурсов Сервис ресурсов Протоколы сервиса ресурсов APIs связи Протоколы связи


Слайд 35

February 5, 2016 36 Introduction to Grid Computing Важные моменты: Основано на протоколах и сервисе Интернет Связь, маршруты, определение имени, и т.д. “Многоуровневость” здесь чисто концептуальна, НЕ накладывает никаких ограничений на то, кто какие функции может вызвать Протоколы/сервис/APIs/SDKs в идеале, будут самодостаточны Некоторые вещи здесь фундаментальны: например, коммуникация и защищённость Привлекательно для функций высокого уровня использовать стандартные функции низкого уровня


Слайд 36

February 5, 2016 37 Introduction to Grid Computing Модель Песочных часов Фокус на вопросах архитектуры Предлагаем набор основных сервисов как основы архитектуры Использовать для создания решений высого уровня специфичных для домейна Принципы дизайна Минимизировать затраты Локальный контроль Модель IP ‘песочные часы” Diverse global services Core services Local OS A p p l i c a t i o n s


Слайд 37

February 5, 2016 38 Introduction to Grid Computing Где мы сейчас с Архитектурой? Не существует никаких ‘официальных’ стандартов НО: Globus Toolkit™ является практически de facto стандартом для многих важных протоколов (связь, ресурсы и общие) GGF имеет рабочую группу по архитектуре Технические детали находятся сейчас в разработке: защищённость, управление ресурсами и данными, информационный сервис Документы (в области безопасности) приняты к публикации в Интернете


Слайд 38

February 5, 2016 39 Introduction to Grid Computing ‘Fabric’ уровень Протоколы и сервис Всё что можно ожидать: огромное разнообразие совместных ресурсов ПК, файловые системы, архивы, каталоги метаданных, сети, сенсоры и т.д, и т.п. Несколько ограничений на технологии низких уровней (Few constraints on low-level technology): протоколы связи и ресурсов являются узким местом Определется интерфейсами, а не физическими характеристиками


Слайд 39

February 5, 2016 40 Introduction to Grid Computing GSI: www.gridforum.org/security/gsi Уровень связи: Протоколы & Сервис Коммуникация Internet протоколы: IP, DNS, routing, etc. Защищённость: Grid Security Infrastructure (GSI) Единая идентификация, авторизация и защищённая передача сообщений Однократный логин, делегирование, идентификация Public key technology, SSL, X.509, GSS-API Инфраструктура поддержки: централизованная выдача сертификатов, управление сертификатами и ключами, …


Слайд 40

February 5, 2016 41 Introduction to Grid Computing GRAM, GridFTP, GRIS: www.globus.org Уровень ресурсов: Протоколы & Сервис Grid Resource Allocation Management (GRAM) Удалённые ресурсы : выделение, резервирование, мониторинг и управление компьютерными ресурсами GridFTP протокол (FTP расширения) Высокоскоростной доступ к данным и пересылка Grid Resource Information Service (GRIS) Доступ к информации В проекте: доступ к каталогам, доступ к библиотеке програм, Catalog access, code repository access, и т.д. Всё пострено на уровне: GSI & IP


Слайд 41

February 5, 2016 42 Introduction to Grid Computing Общий Уровень: Протоколы & Сервис Рапределение ресурсов (e.g., Condor Matchmaker) Поиск и выявление ресурсов Каталог реплик Сервис копирования Сервис по одновременному резервированию и выделению И т.д. Condor: www.cs.wisc.edu/condor


Слайд 42

February 5, 2016 43 Introduction to Grid Computing Пример: Data Grid Aрхитектура Приложение, специфичное для какой-то области Выбор реплики, управление заданием, виртуальный каталог данных, … Каталог реплик, управление репликами, выделение ресурсов, выдача сертификатов, каталоги метаданных Доступ к данным, доступ к компьютерам, доступ к информации о сети,.. Коммуникации, поиск сервиса (DNS), идентификация, авторизация, делегация Системы хранрния данных, кластеры, сети, ... Collective (App) App Collective (Generic) Resource Connect Fabric


Слайд 43

Проблема программирования The Globus Project™ Argonne National Laboratory USC Information Sciences Institute http://www.globus.org


Слайд 44

February 5, 2016 45 Introduction to Grid Computing Проблема программирования Как мне создать надёжное, долговременное, высокоэффективное приложение для динамичных и разнородных Grids? Для этого мне нужно: Абстракции и модели чтобы ускорить/улучшить сам процесс Набор програмных средств для диагностики проблем и упрощения написания программы Создать универсальные средства, чтобы было возможно использование некоторых компонент другими


Слайд 45

February 5, 2016 46 Introduction to Grid Computing Технологии Программирования в Grid “Grid приложения” - очень разнообразны (данные, сотрудничество, вычисления, мониторинг,...) Невозможно найти единое решение Многие приложения были написаны “с нуля” используя или не используя возможности Grid Библиотеки приложений показали свою действенность/полезность Не придуманы ещё ни новые языки, ни модели программирования, которые бы решили проблему Grid Но, в принципе, это ещё возможно


Слайд 46

February 5, 2016 47 Introduction to Grid Computing Примеры Програмных Технологий в Grid MPICH-G2: адаптированный для Grid MPI CoG Kits, GridPort: идея портала, основано на N-уровневой архитектуре GDMP, Data Grid Tools, SRB: управление репликами, набором данных Condor-G: управление процессом расчётов Legion: объектные модели для программирования в Grid Cactus: адаптированные для Grid набор средств для решения численных задач Обратите внимание на огромное разнообразие средств (все ориентированны на определённое приложение)


Слайд 47

February 5, 2016 48 Introduction to Grid Computing MPICH-G2: MPI, Aдаптированный для Grid Полная версия Message Passing Interface (MPI) для разнородных вычислительных платформ Основано на версии MPICH (ANL, Gropp and Lusk) Использует сервис для идентификации, выделения ресурсов, запуске программ, пересылка результатов, и т.д. Программы работают в глобальной сети без каких-либо изменений www.globus.org/mpi


Слайд 48

February 5, 2016 49 Introduction to Grid Computing Высоко-эффективные вычисления и Кондор Высоко-эффективные вычисления CPU работает дни (недели, месяцы, год?) при не самых благоприятных условиях “Сколько раз в месяц я могу запускать программу Х на счёт, используя все имеющиеся компьютеры?” Кондор превращает набор независимых компьютеров и компьютерных кластеров в расперделённую единую высоко-эффективную компьютерную систему Упор сделан на надёжность и соблюдение правил www.cs.wisc.org/condor


Слайд 49

February 5, 2016 50 Introduction to Grid Computing Порталы N-уровневая архитектура, где средние уровни используют функциональность Grid ‘Лёгкие приложения’ = web browsers Средний уровень = e.g. Java Server Pages, с набором средств Java CoG Kit, GPDK, GridPort Нижний уровень = различные ресурсы Grid Многочисленные приложения и проекты Unicore, Gateway, Discover, Mississippi Computational Web Portal, NPACI Grid Port, Lattice Portal, Nimrod-G, Cactus, NASA IPG Launchpad, Grid Resource Broker, …


Слайд 50

February 5, 2016 51 Introduction to Grid Computing За всем этим стоит единый набор програмных средств Каждый из перечисленных проектов не создавал протоколы и пр. с нуля! Использовался единый набор средств, который… Имеет все основные функции SDKs который может быть использован для создания различных програмных продуктов Стандартный сервис, который легко установить Надёжный, правильно спроектированный, не противоречащий себе Является бесплатным, широко доступным Всем этим требованиям отвечает Globus Toolkit™…


Слайд 51

Введение в набор програмных средств Глобус (The Globus Toolkit™) The Globus Project™ Argonne National Laboratory USC Information Sciences Institute http://www.globus.org


Слайд 52

February 5, 2016 53 Introduction to Grid Computing Globus Toolkit™ Набор програмных средств, решающий основные технические проблемы при создании програмного обеспечения для Grid Предлагает ‘пакетный’ набор средств Позволяет поэтапное создание програмных средств и приложений для Grid Воплощает стандртные Grid протоколы и APIs Доступен бесплатно для всех (Оpen source)


Слайд 53

February 5, 2016 54 Introduction to Grid Computing Общий подход Определить Grid протоколы & APIs Доступ к удалённым ресурсам посредством протоколов Интегрировать и расширить имеющиеся стандарты Создать соответсвующий набор средств Доступный всем Globus Toolkit Набор утилит, SDKs, сервис, и т.д. Адаптировать для Grid множество известных приложений Globus Toolkit, FTP, SSH, Condor, SRB, MPI, … Учиться на своём опыте


Слайд 54

February 5, 2016 55 Introduction to Grid Computing Основные протоколы Глобус (The Globus Toolkit™) основан на четырёх основных протоколах Уровень связи: защищённость: Grid Security Infrastructure (GSI) Уровень ресурсов: Управление ресурсами: Grid Resource Allocation Management (GRAM) Информационный сервис: Grid Resource Information Protocol (GRIP) Пересылка данных: Grid File Transfer Protocol (GridFTP) Также основные протоколы ‘общего’ уровня Информационный сервис, управление репликами, и т.д.


Слайд 55

February 5, 2016 56 Introduction to Grid Computing Grid Security Infrastructure (GSI) Глобус использует протоколы и APIs GSI для создания защищённости GSI протоколы расширяют стандартные протоколы public key Стандарты: X.509 & SSL/TLS Расширения: X.509 Proxy Certificates & Delegation GSI расширяет стандратное GSS-API


Слайд 56

February 5, 2016 57 Introduction to Grid Computing Управление ресурсами The Grid Resource Allocation Management (GRAM) протокол и API позволяет запуск програм на удалённых компьютерах, управление этими программами – несмотря на локальные особенности и неоднородность Resource Specification Language (RSL) ипользуется для передачи информации/требований на удалённый ресурс Многоуровневая архитектура позволяет конкретным приложениям специфицировать требования выделения ресурсов в терминах GRAM Используется в Кондоре, PBS, MPICH-G2, …


Слайд 57

February 5, 2016 58 Introduction to Grid Computing Доступ к данным и их пересылка GridFTP: расширенная версия популярного FTP протокола для доступа к данным на Grid Надёжный, эффективный, гибкий, параллельный, одновременный, и т.д.: Пересылка данных третьими лицами, пересылка неполных файлов Параллельность, striping (e.g., на параллельных файловых системах PVFS) Надёжная, возобновляемая пересылка данных Соответствующее воплощение Существующие клиенты и серверы: wuftpd, ncftp Гибкие, расширяемые библиотеки в Глобусе (Globus Toolkit)


Слайд 58

February 5, 2016 59 Introduction to Grid Computing Выводы Проблема Grid: Совместное использование ресурсов и координированное решение задач в динамических, много-профильных ‘виртуальных’ организациях Архитектура Grid делает упор на системную проблему Протоколы и сервисы – для совместимости програмных продуктов и совместных инфраструктурных сервисах Globus Toolkit™: APIs, SDKs и програмные продукты, основанные на протоколах и сервисе Grid Предлагает програмную инфраструктуру для набора програмных средств для решения проблемы программирования


×

HTML:





Ссылка: