70ad39b2bf47302ecc58122b657900d7.ppt
- Количество слайдов: 39
Организационная встреча– семинар «Среда GPE: формирование сообщества» 1 февраля 2008 г. Санкт-Петербург
Рабочая программа встречи: • Опыт работы пользователей в среде GPE. Неформальные выступления пользователей GPE в России с краткими обзорами своих работ • Предложения по дальнейшему развитию функциональности среды GPE. Александр Лукичев • Предложения по формированию и работе сообщества пользователей и разработчиков среды GPE. Игорь Одинцов • Круглый стол с разработчиками GPE. Александр Лукичев, Дмитрий Петров, Валерий Шорин, Денис Жигула, Владимир Рябинин, Игорь Одинцов 2
Команда Александр Лукичев Дмитрий Петров Валерий Шорин Денис Жигула Владимир Рябинин Игорь Одинцов 3
Опыт работы пользователей в среде GPE
Предложения по дальнейшему развитию функциональности среды GPE Александр Лукичев, Интел
Перспективы дальнейшего развития GPE • Создание «мощной» грид-системы: – – – – • Улучшение «пользовательского» интерфейса (в т. ч. и интерфейса прикладного программиста): – – • 6 повышение масштабируемости (решение известных проблем узких мест) интероперабельность с другими системами (прежде всего, Unicore 6) улучшение средств управления (приложения администрирования GPE-грид в виде оконных программ или веб-порталов) интеллектуальная диспетчеризация заданий мониторинг производительности новые методы передачи данных, доступ к СУБД, интегрированный в грид повышение устойчивости к отказам улучшения в клиентах (оконный, портальный) переход на Grid. Bean API 2. 0 (разработка FZ Juelich) Другие сценарии использования: – грид малого масштаба ( «офисный грид» ) — максимальное использование вычислительных ресурсов малых предприятий (например, рендеринг компьютерной анимации)
Повышение масштабируемости • Узкие места: – многие типы объектов-ресурсов хранятся в оперативной памяти => ограничения по количеству ресурсов – простая и плоская система информационных реестров => что будет при кардинальном увеличении количества узлов? – управление пользователями (подключение нескольких виртуальных организаций) • группы участников В. О. • Решения: – 100% реализация хранения объектов-ресурсов во внешней памяти (сериализция) – продумать проект GPE-системы большого масштаба 7
Интероперабельность с Unicore • Использовать модель запуска заданий Unicore: – ресурс целевая система создается для каждого пользователя • Использовать модель безопасности Unicore (ETD, в back-up) – может быть реализовано в GPE/Globus – каковы проблемы взаимодействия с не-GPE сервисами • Переключение на финальные спецификации Unigrids+WSRF – ждать, пока Globus не перейдет на WSRF final ИЛИ – построить собственную версию Globus с финальными спецификациями WSRF 8
Улучшение средств управления • Прошлое: – Admin Client – недостатки: • нет поддержки расширяемости (разных типов администрируемых сервисов) • недостаточно упрощена работа администратора (много рутинных действий, которые могли бы быть выполнены автоматически) • Настоящее: – управляющие скрипты – недостатки: • отсутствие GUI • работает только на Linux • Будущее: – ? 9
Интеллектуальная диспетчеризация заданий • Текущее состояние: – простейший брокер с равномерным распределением заданий ( «равномерное распределение» — математический термин) • Возможные варианты: – реализация более совершенных брокеров с интерфейсом Target. System • интеграция с поддержкой виртуальных машин – реализация резервирования ресурсов • изменения в интерфейсах? – поддержка динамической перебалансировки • для каких сценариев стоит реализовывать? 10
Мониторинг производительности грид • • Работы в ННГУ Возможные направления работы: – интеграция существующих решений (Ganglia, …) – создание своих решений на основе open-source-компонент 11
Новые методы передачи и хранения данных • Настоящее: – – • Будущее: – – – 12 Byte I/O – слишком медленно • может быть использован для интерактивных приложений: мало данных, произвольный доступ • интегрирован в SOA SFTP • сложная интеграция в SOA • необходимо построение соответствия security tokens Grid и SSH Grid. FTP • очень быстрый, Grid-specific • не интегрирован в SOA, требователен к настройкам сетевого окружения “WS-FTP”(? ) • command connection with WS interface • content-based addressing (by CERN) Поддержка репликации данных
Доступ к СУБД • Исследование вопроса (OGSA-DAI? ) – – • 13 Было разработано решение для потоков управления на BPEL (сложное) Использование gridlet’ов существенно упростит задачу (можно использовать OGSA-DAI API) Интеграция в GPE API, GPE services
Повышение устойчивости к отказам • • Необходимо исследование устойчивости к отказам GPE Меры по повышению устойчивости: – автоматический мониторинг грид – автоматический перезапуск заданий 14
Улучшения в клиентах • • 15 Имеются нарекания по интерфейсу клиентов (Application, Portal) Необходима работа по сбору требований и устранению недочетов
Grid. Bean API 2. 0 и другие. . . • Grid. Bean API 1. 4 плохо подходит для написания Grid. Beans, интегрируемых в потоки управления • FZ Juelich разрабатывает Grid. Bean API 2. 0 – https: //gpe 4 gtk. svn. sf. net/svnroot/gpe 4 gtk/gpe-2. 0 – stay in touch… • Новые API, разработанные сообществом – CAEBeans – PEG API – интеграция их в GPE 16
Другие сценарии использования грид: «офисный грид» it bm su system-1. . . Job Queue JSS* TSS get. Next. Job system-n *Job Spool Server PC Local Network su bm submit queue-n GPE container . . . TSS queue-1 TSI it TSI Client Cluster(s), Lab Network 17
«Заповеди GPE-программиста» • Изолированность уровней – – – • Распределение функциональности по уровням – – • 18 код делится на shared и backend-specific (GTK 4, Unicore 6, etc) shared код НЕ ДОЛЖЕН содержать ссылки на классы из backend-specific подпроектов • например, не должно быть ссылок на com. intel. gpe. client. gpe 4 gtk из com. intel. gpe. client 2 код GPE Client API не должен ссылаться на код, относящийся к GUI • например, не должно быть ссылок на классы, так или иначе ссылающиеся на Swing, из классов com. intel. gpe. client. gpe 4 gtk или com. intel. gpe. client. api например, функциональность, связанная с обработкой SOAP-сообщения должна находиться на уровне сервисов, а вещи, специфичные для запуска заданий, должны реализовываться на уровне GPE Target. System API еще пример: не использовать зависимые от Swing классы в тех классах, которые могут быть использованы, например, в портальном клиенте Стандартные правила – – – Избегать статических (static) полей Следовать Java Code Style Использовать Design Patterns
Спасибо за внимание! 19
Дополнительные слайды к предложениям по дальнейшему развитию функциональности среды GPE 20
Unicore Security Headers Consignor . . . Delegation 1 Identifies the entity which creates the envelope (job decsription, etc) Describes the chain of trusted entities (for delegation) Delegation. N User SOAP Header SOAP Body SOAP Envelope 21 Identifies the entity on behalf of which the actions are performed
USER token May contain certificate revocation list A signed (by VOSS) SAML authn assertions A subject – X. 500 name B subject – login (rfc 822 name) PORTAL User with password A B 2 VO Security service 1 User with X. 509 cert UAS B Additional attributes: - user role … 1 – public key (SSL) authentication, VOSS may contain certificate revocation list 2 – login/password authentication UAS 22 both operations – SAML over SOAP/HTTP ?
DELEGATION token Delegation 1 Issuer = consignor 1 Receiver = consignor 2 Endorser = USER token ID Signed by consignor 1 Delegation 2 Issuer = consignor 2 Receiver = consignor 3 Endorser = USER token ID Signed by consignor 2 Delegation 3 Issuer = consignor 3 Receiver = consignor 4 Endorser = USER token ID Signed by consignor 3 23 The terminal entity receives a request from consignor 4 with Delegation 3 header. It can trust if: • the chain is valid, and • delegation 1 is trusted: • consignor 1 is a trusted entity (portal), or • endorser = consignor 1 Changes: use Endorser=“USER token ID” instead of Custodian DN
Authorization 1. 2. 3. Validate delegation path (including USER token sig) Extract USER token Convert SAML assertion+request body to XACML request UAS XACML Auth. Z Service XACML DB VO-wide Auth. Z Service 24 XACML DB 1. 2. ? * UPRS-XUUDB 3. 4. The delegation of trust MUST be used Validate delegation path (including USER token sig) Extract USER token Map USER token to X-login map USER token to login Data or Compute Center * - maybe some standard protocol can be used here?
PC-Grid Job Queue *Job Spool Server system-1. . . submit JSS* Client TSS get. Next. Job system-n PC Local Network system-i: Questions: • security • job state • data management 25 • execution daemon queries the job queue for jobs and executes them • acts as a client • only executes when the system is idle get. Next. Job update. Job. Status read? write? register
Executing a job in PC-Grid Executing a job: • Preconfigured image – User-mode VM: • User Mode Linux (for Linux) • co. Linux (for Windows) – Zones (for Solaris) – Classical VMs: • Xen • VMware • 26 Preconfigured applications
Virtual Machines Use Unicore solution in GPE 4 GTK VM reconfiguration: image data access • native code OR • 27 java code for direct access
Предложения по формированию и работе сообщества пользователей и разработчиков среды GPE Игорь Одинцов, Интел
Компоненты Grid Programming Environment Интерфейс задачи Абстрактный клиент Клиентский API Grid. Bean Реализация API GPE 4 GTK Clients, GPE 4 Unicore Clients Контейнер гридсервисов Реализация сервисов API сервисов Globus WSRF Core 4. 0. x, Unicore 6. 0. x GPE 4 GTK services, GPE 4 Unicore services GPE Atomic Service API GPE AS for SSH Реализация API сервисов Агент исполнения заданий 29 • «конструктор» для создания грид-систем Application. Client, Grid. Bean API GPE Client API SSH server • несколько уровней абстракции • Java- и WS-интерфейсы VO support services
История исследовательского проекта 2007 • 1. 5. 2 (Декабрь) • 1. 5. 1 (Сентябрь) – поддержка виртуальных организаций • 1. 4. 2 (Июль) – Unicore 6 release • 1. 4. 1 (Март) – Native TSI, автоматизированная установка сервера Unicore 6 2006 • • 1. 3 1. 2 1. 1 0. 8 (Декабрь) – Портальный клиент (Сентябрь) – Workflow Service for Unicore (Июль) (Май) – брокер ресурсов Uni. Grid. S, … 2005 Unicore (1 -4) 30 • Beta (Декабрь) – Workflow Service, Expert Client • Alpha (Сентябрь) – Application Client, Grid. Beans
Сообщество Члены сообщества Коммуникация, обмен информацией Стратегические и тактические планы 31 Программный код: владение и изменения
Члены сообщества FZ Juelich SUSU intern @ Intel NNSU SPb. SU ITMO 32 Присоединяйтесь!
Стратегические и тактические планы (как все может развиваться дальше. . . ) intern hiring 5 инженеров Intern Intel HC 1. 5. 2 Release Community growth GPE Communit y 3 -4 Community forming Q 4/2007 33 4 -10 >10 >10 1. 5. 3 1. 5. 4 1. 5. 5 1. 5. 6 Bug Fixes Community Release New Features Community Release Q 1/2008 Q 2/2008 Q 3/2008 Q 4/2008
Программный код: владение и изменения • Владение программным кодом и окружением – Программный код GPE 4 GTK • Категории разработчиков: Root – Active – Others • “Основной” владелец для компонент – GPE 4 GTK WWW-страницы – Трекер ошибок, форум – Документация – Тестовые сюиты • Правила и политики для изменения кода (рецензирование, формальные запросы, и т. п. ) – Категории изменения функциональности и пример правил (на следующем слайде) – Тестирование – Изменение документации и WWW-страниц 34
Категории изменения функциональности и пример правил 1) New functionality or bugfix without component API changes a) with GUI changes b) without GUI changes 2) Changing component APIs a) Java API, only one (maven) project involved b) Java API, several projects involved c) XML Schema, WSDL 3) 4) 5) 6) 7) • Package structure change within one project Package structure change within several projects Changing project structure, version (pom file modification) Tagging out the sources Documentation changes Пример правила: Категория 1 b: project (component) owners do notify others, nonowners should ask for approvement the owners (e. g. send diff) 35
Коммуникация, обмен информацией • Почтовые рассылки • Собрания/совещания ежеквартально (или с другой частотой) • Совмещение собраний с конференциями • ПАВТ (январь) • Абрау-Дюрсо (сентябрь) • Дубна (½, июль) • Форумы • Группа «В контакте» 36
Спасибо за внимание! 37
Круглый стол с разработчиками GPE Александр Лукичев, Дмитрий Петров, Валерий Шорин, Денис Жигула, Владимир Рябинин, Игорь Одинцов, Интел
39
70ad39b2bf47302ecc58122b657900d7.ppt