Принципы функционирования и структура GRID
Введение С течением времени, компьютерные сети удешевляются и становятся все более быстрыми и мощными, и в то же самое время новая компьютерная парадигма уравновешивается преобразованиями в научной практике и
прикладных областях. Современная наука,
подхлестываемая увеличивающимся комплексом проблем и движимая нарастающей технологической мощностью, во многом базируется на вычислениях, анализе данных и на попытках сотрудничества отдельно взятых теоретиков и экспериментаторов. Но даже с учетом экспоненциально увеличивающейся мощности компьютеров, размеров хранилищ данных и улучшающихся средств передачи данных, вычислительные ресурсы все-таки не успевают за растущими запросами ученых. Персональный компьютер 2001-го года настолько быстр как суперкомпьютер в 1990. Но 10 лет назад, например, в биологии ставилась задача получения расчета одиночной молекулярной структуры. Теперь же появилась необходимость в просчитывании структуры комплексных сочетаний макромолекул (рис.1), таким образом аппробировать тысячи кандидатов на лекарства. Персональный компьютер поставляется обычно
сейчас
с
жестким
диском
вплоть
до
100
гигабайт,
подобно
целому
суперкомпьютерному центру 90-х годов прошлого столетия. Но к 2006, несколько физических проектов, среди которых ЦЕРН’овский Большой Адронный Коллайдер (LHC, Large Hadron Collider, будущий самый большой ускоритель в мире), будут генерировать многие петабайты (10^15 байт) данных за год. Некоторые WAN (wide area network, глобальные сети) теперь имеют пропускную способность в 155 мегабит в секунду (Mb/s), что на три порядка выше, чем реально внедренные когда-то 56 килобит в секунду (Kb/s), которые соединяли суперкомпьютерные центры в 1985. Но теперь для того, чтобы иметь возможность работать вместе со своими коллегами в разных точках мира с петабайтными наборами данных, ученые нуждаются в скоростях в десятки гигабит в секунду (Gb/s).
(Определение структуры комплексной молекулы, такой как токсин холеры, показанный на рисунке, является вычислительно сверх интенсивной задачей)
Рис.1 -1-
Принципы функционирования и структура GRID Одно из назначений того, что подразумевается под термином «Grid» как раз и предлагает потенциальное решение для преодоления данных препятствий. Базирующийся на Интернете и Всемирной Паутине (World Wide Web), Grid являет собой инфраструктуру нового класса. Обеспечивая масштабируемый, безопасный и высокопроизводительный механизм для обнаружения и определения условий доступа к использованию удаленных ресурсов, Grid обещает сделать возможным существование научных коллабораций (групп) по совместному использованию ресурсной базы в беспрецедентном масштабе, в том числе, создание географически распределенных групп, работающих вместе в режиме, ранее просто не могущим быть реализованным, до появления Grid. Идея Grid (термин буквально можно перевести как «энергетическая система», хотя отдельное его значение «сетка») часто объясняется на примере первого успешного применения в начале 20-го века электрической сети. В своей знаменитой книге "The Grid" [1] ее авторы Ян Фостер и Карл Кессельман сравнивают текущее состояние дел в области вычислений с ситуацией в районе примерно 1910 года. К тому времени в мире существовало достаточное количество генераторов электричества. Появились и устройства, для работы которых был необходим обязательный доступ к источникам электрической энергии. Но для каждого потребителя электричества нужно было строить свой генератор, что было крайне неудобно. Таким образом, изобретение электрической сети явилось действительно революционным. Сейчас пользователю не нужно знать, от какого конкретно генератора поступает к нему электроэнергия. Разумеется, концепция совместного использования распределенных ресурсов не нова. Так что, дата возникновения концепций заложенных в Grid, уходит к самым ранним моментам появления такого понятия как компьютерные вычисления. Но происхождение текущего понятия
Grid,
изыскательских
в
современном
работ
рассмотрении,
проводимых
при
прослеживается
построении
первых
с
момента
начала
экспериментальных
высокоскоростных сетей. Таких как гигабитные тестовые площадки установленные в США в начале 1990 годов. Одна из таких площадок соединяла четыре лаборатории в Калифорнии и Новом Мехико, и носила название сеть CASA. Используя ее, Поль Мессина из Калифорнийского Технологического института, вместе со своими коллегами разработал и продемонстрировал набор приложений, которые объединяли мощные параллельные и векторные суперкомпьютеры для решения задач вычислительной химии и моделирования климата. А на другой тестовой площадке, под названием Blanca, объединявшей несколько мест на Среднем Западе, Чарли Кэтлет из Национального Центра Суперкомпьютерных Приложений, вместе с коллегами, создали мультимедийные цифровые библиотеки и демонстрировали потенциал удаленной визуализации. [7] Еще на двух тестовых площадках исследовали удаленное управление приборами и аппаратурой. Подобные тестовые -2-
Принципы функционирования и структура GRID гигабитные сети были созданы в Германии и еще во многих других странах (см. Приложение). Но, по крайней мере, в США, произошло одно событие, которое выдвинуло концепцию Grid за пределы сетевых лабораторий и позволило обычным ученым осознать ее важность. Это был эксперимент с названием I-WAY (Information Wide Area Year, «год широкого распространения информации»), управляемый Томом ДэФанти из университета Иллинойса (Чикаго) и Риком Стивенсом из Национальной Лаборатории Аргонны. Этот амбициозный проект объединил в единой попытке целых 11 экспериментальных сетей, для создания национальной сетевой инфраструктуры, которая соединила 17 различных мест по всем Соединенным Штатам и Канаде в ноябре 1995 года, и просуществовала в таком виде на протяжении целой недели. Было продемонстрировано около 60 приложений, самого различного толка, от распределенных вычислений и до кооперативного взаимодействия в рамках виртуальной реальности. Целью проекта было показать истинный потенциал высокоскоростных сетей. И, кроме того, I-WAY был первой попыткой построения единой программной инфраструктуры для подобных систем, которая носила название I-Soft. Автор и его помощники, разработали систему I-Soft так, чтобы она обеспечивала единообразное расписание выполнения заданий, одиночный вход в сеть, и другие сервисы, которые позволили I-WAY пройти успешно все испытания, да еще и в качестве интегрированной инфраструктуры, что является наиболее важным результатом. Но стоит вспомнить, что еще в 1965, Фернандо Корбато из Массачусетского Технологического Института, а также и другие разработчики операционной системы Multics, предсказывали
появление
компьютерного
оборудования
работающего
«подобно
энергетическим и водоснабженческим компаниям». И в своей статье за 1968 «Компьютер как устройство коммуникации», Дж. Ликлайдер и Роберт Тейлор уже предсказывали сценарии обмена сообщениями, подобные тем, которые используются для построения Grid. С конца 60х годов прошлого столетия было проделано много работы для развития распределенных систем, но с переменным успехом. О том, что дробление вычислительных ресурсов не есть лучший способ экономии средств, специалисты задумались довольно давно, еще в те самые 60-е. Примерно в то же время велись активные работы по превращению компьютера из однопользовательского в многопользовательское устройство, создавались системы разделения времени. Совместными усилиями перспективно мыслящих ученых и инженеров-практиков идея распределенного пользования вычислительными мощностями была реализована в проекте ARPAnet. Эта сеть была построена именно с целью экономии средств, затрачиваемых на вычислительную технику, а то, что в последующем Internet в основном превратился в коммуникационную среду, поначалу оказалось неожиданностью для его создателей. Хорошо известно, что первым «убийственным приложением» (killer application) стала электронная -3-
Принципы функционирования и структура GRID почта, которая заметно видоизменила первоначальную Сеть, но она была изобретена случайно. Смещению в сторону коммуникаций отчасти способствовало и принятие протокола TCP/IP, который сегодня практически повсеместно рассматривается как истина в последней инстанции, на самом деле являясь плодом деятельности ограниченного числа специалистов. Отсюда его достоинства и недостатки. Достоинствами TCP/IP сегодня мы пользуемся все, а недостатки заключаются в том, что идея распределенного пользования вычислительными ресурсами оказалась замороженной на многие годы.
(Эволюция метакомпьютинга) Рис.2
Но реставрация этой идеи в образе Grid началась. Первыми идею воплотили на практике энтузиасты поиска внеземных цивилизаций, создавшие проект SETI@home (Search for Extraterrestrial Intelligence at home, «поиск внеземного разума на дому»), в котором задействованы домашние компьютеры, предоставляемые их владельцами в пользование бесплатно. Поэтому (рис.2) первое поколение Grid можно назвать альтруистическим. Для многих людей, участвующих в этом проекте, это своего рода соревнование за то, кто больше предоставит ресурсов, в нем есть свои «чемпионы», оно даже стимулирует участников к покупке более мощных домашних ПК, к подключению по ADSL и тому подобное. Но это было только начало. Однако сегодня, сочетание технологических тенденций и достижения в области научных исследований делают вполне выполнимым создание полноценного взгляда на Grid – как осуществление и реализация международной научной инфраструктуры с помощью общего объединенного инструментария, который может удовлетворить нарастающие запросы науки 21-го века. И в самом деле, основные научные сообщества на данный момент приняли технологию Grid как наиважнейшую для своего обозримого будущего. Многочисленные финансируемые правительством исследовательско-разработческие проекты под разными именами
создают
сердцевинные
технологии, -4-
внедряют
производственные
системы
Принципы функционирования и структура GRID метакомпьютинга (русское название Grid), и применяют эти технологии к многообещающим прикладным задачам. Например, IBM InfraGrid, - тестовая метакомпьютинговая площадка, соединяющая исследовательские лаборатории одноименной компании. CrossGrid под эгидой Европейского Союза, или же DATATAG, также в рамках ЕС. AstroGrid (Великобритания) построение
инфраструктуры,
позволяющей
появление
Виртуальной
Обсерватории,
унифицирующей интерфейсы астрономических баз данных и обеспечивающей удаленный доступ и осмысление этих данных. Globus (США, среди поддерживающих организаций DARPA и NASA), исследования инфраструктуры Grid и инструментария для него, разработка общедоступной и совместно развиваемой архитектуры с открытым кодом Globus Toolkit. TeraGrid,
североамериканская
научная
инфраструктура,
соединяющая
4
главных
ресурсосодержательных месторасположения на скорости 40Gb/s. Примечателен факт, что мощность Grid растет практически сама по себе. Как выяснили в компании United Devices, разрабатывающей программное обеспечение для распределенных вычислений, производительность Grid-сетей со временем сама по себе увеличивается. В частности, за шесть месяцев в полтора раза возросла вычислительная мощность состоящей из 1,7 млн. узлов открытой сети Оксфордского университета, которая применяется для поиска средств от сибирской язвы и для онкологических исследований. Как считают в United Devices, производительность корпоративных сетей Grid также может возрастать, поскольку компьютеры в организациях заменяются на более мощные, по меньшей мере, каждые три года. В одном из вполне серьезных американских академических журналов в прошедшем году была напечатана статья в форме сказки. [3] В ней повествовалось о том, что в редакцию этого издания якобы попал доставленный из будущего документ, написанный историком информационных технологий, живущим во времени с интервалом несколько десятков лет впереди нашего. Пафос заключается в том, что о компьютерах, тех самых серверах и ПК, без которых не мыслят своего существования нынешние специалисты, говорится, как о форме антиквариата, как о неких технических феноменах, существовавших на промежуточной стадии эволюции компьютинга и давно канувших в лету. По свидетельству автора документа, живущего в середине XXI века, в его время вычислительные и информационные услуги превратились в такие же коммунальные удобства, как электричество и водопровод; отдельные компьютеры, полностью растворились в глобальной информационной инфраструктуре. С позиций, сформировавшихся буквально в последние годы, подобный сюжет вовсе не так уж и фантастичен. Причиной тому является именно Grid. Надо признать, что идеи Grid пока еще не слишком широко распространены, но ведь совсем недавно, каких-то восемь-десять лет назад и Internet, и WWW тоже были известны только узкому сообществу профессионалов. Однако в 2002 году число пользователей Сети измеряется сотнями миллионов или даже миллиардами; -5-
Принципы функционирования и структура GRID человека, который хотя бы не слышал этих слов, при всем желании, пожалуй, трудно найти. Есть основания думать, что через какое-то время и Grid приобретет не меньшую популярность: его нынешнее состояние сравнивают с Internet «образца» 1994 года, а потенциал и темпы роста отнюдь не меньше. Полезно будет привести современное определение данное в энциклопедии Britannica: «Grid — метод использования распределенных процессорных мощностей и распределенных систем хранения, ставший популярным благодаря схемам, позволяющим использовать незанятые вычислительные ресурсы, разбросанные по всему миру. Сегодня, в основном по причинам недостаточной безопасности, системы, построенные на принципах Grid, создаются чаще всего внутри
предприятий;
этот
метод
позволяет
им
более
эффективно
использовать
вычислительные ресурсы». Действительно, эффективность использования инвестиций в компьютеры волнует современные предприятия больше, чем прежде. Отнюдь не случайно, что именно сегодня HP, IBM и Sun Microsystems, а также более мелкие компании обратили свои взоры в сторону Grid, синхронно предлагая новые и чрезвычайно близкие по смыслу стратегии развития, направленные на реструктуризацию корпоративной информационной инфраструктуры. Каждый называет собственную инициативу по-своему, но будь то utility computing (коммунальный
компьютинг,
(самонастраивающийся
компания
компьютинг,
Hewlett-Packard),
IBM)
или
N1
autonomic
(автономный
computing
компьютинг,
Sun
Microsystems), по сути они очень похожи и, что показательно, все прочно связаны с архитектурой Grid. Однако было бы ошибкой признать справедливость только этого довольно узкого определения и ограничить явление, которое называют Grid, только корпоративными подходами. Grid — это некий контрапункт, поворот в эволюции компьютинга, на котором заканчивается очередная фаза его развития и начинается следующая. Руководители ведущих компаний-производителей откровенно признают: заказчики с большой неохотой вкладывают средства в новую технику. Предстоит довольно длительный период стагнации. По данным Gartner Group, никакого заметного роста, например, на рынке серверов в ближайшие пять лет не ожидается. То, что происходит, имеет полноценное логическое обоснование. Много лет экономисты говорят
о
невозможности
оценки
экономической
эффективности
внедрения
компьютеризированных технологий. Еще в 1987 году лауреат Нобелевской премии по экономике Роберт Соллоу сформулировал свой знаменитый «парадокс продуктивности» (иначе его иногда называют «компьютерный парадокс»), который звучит так: «Мы можем видеть наступление компьютерной эры повсюду, за исключением статистических отчетов по продуктивности». Очень интересные и весьма критические взгляды на оценку эффективности корпоративных компьютерных систем принадлежат Полу Страссману, автору книги -6-
Принципы функционирования и структура GRID «Разоряющий компьютер», который сам в свое время занимал пост CIO (главный управляющий по информации) в Пентагоне. К мнению скептиков долгое время не прислушивались. Но игнорировать подобного рода критику бессмысленно, нынешний кризис является следствием совершенно определенной технической политики, десятилетиями проводившейся предприятиями. Теперь наступил момент истины. У наблюдаемого кризиса (как и у любого другого) есть фундаментальные причины; поиск выхода из кризиса требует их осознания и предложения альтернативных решений. Обращение к Grid — это поиск спасательного круга, с которого может начаться новое плавание.
Несколько замечаний о терминологии Вернемся к параллели между Grid и Internet. Технологии, созданные для Глобальной сети, дали возможность рождения внутрикорпоративных сетей intranet. С тех пор мы пишем Internet с большой буквы как имя собственное (Сеть одна), а intranet — с маленькой (таких сетей много). Сегодня еще нет одной глобальной структуры Grid, возможно она когда-нибудь возникнет, но есть идея Grid. Небольшие корпоративные структуры, построенные на тех же принципах, будем их называть grid. Стоит ли транслитерировать эти названия кириллицей, покажет время, хотя хотелось бы. Вместе со словами Grid и сочетанием Grid-компьютинг в профессиональный лексикон с неизбежностью должно еще прочнее войти и сопутствующее ему ‘компьютинг‘; оно появилось в данном контексте не случайно. Обычно слово компьютинг употребляется там, где отдельный компьютер становится частью сложной вычислительной системы. До сих пор это слово встречалось в таких сочетаниях, как параллельный компьютинг, квазифизический компьютинг или метакомпьютинг, то есть там, где на основе, условно говоря, простых компьютеров строятся системы более высокого уровня. К этому слову вполне можно привыкнуть, привыкли же автомобилисты к слову тьюнинг, а другие — к дайвингу, а третьи — к серфингу. Кстати, и само слово компьютер тоже пришло в русский язык не легко. Компьютинг, или метакомпьютинг как нельзя более точно и ёмко подходит к тому, что представляет собой Grid. В подтверждение обратимся к более общему определению Grid, например, к такому [13]: «Grid представляет собой некий ‘виртуальный суперкомпьютер’, в котором
удаленные
вычислительные
устройства
совместно
образуют
мощную
обрабатывающую среду, что-то вроде Skynet в ‘Терминаторе 2’. Grid-компьютинг — новый класс инфраструктур, в которых из удаленных ресурсов складывается безопасный и масштабируемый вычислительный механизм. В состав этого механизма могут входить компьютеры, начиная от настольных и до серверных ферм и суперкомпьютеров, программные пакеты и устройства ввода/вывода. В основе Grid лежат программные технологии, -7-
Принципы функционирования и структура GRID использующие новые стандарты и протоколы совместно с известными сетевыми и Internetпротоколами». Сейчас, впопад и невпопад, используется словосочетание «информационные технологии». Стоит сказать несколько слов по этому поводу. Прежде всего, потому что со времен Клода Шеннона на инженерном уровне произошло смещение понятий, объединение представлений об информации и данных или сигналах, кодирующих эту информацию. С легкой руки первопроходцев информацией стали называть, по существу, наборы данных. До последнего времени, пока системы были относительно просты, отсутствие четкого разделения на данные и
информацию
не
имело
практического
значения.
Но
с
появлением
сложных
информационных систем, где функции распределены между человеком и машиной, где человек является активной составляющей, а также с развитием таких дисциплин, как управление знаниями, требуются более точные определения базисных понятий: «данные», «информация» и «знание». В литературе можно найти сотни различных определений понятия «информация»; многие из них противоречивы. Но коль скоро мы пока не можем точно определить, что такое информация, то и что такое информационные технологии, не очень понятно. Но сохраним его, как говорится, «термин занят». В России дело обстоит еще хуже. Слово «информатика» бесцеремонно отняли у скромной науки, тоже называвшейся информатикой, но при этом ведавшей именно информацией, в основном научно-технической (во всем мире она называется library science). В итоге совершенно невозможно разобрать, где технологии, а где собственно то, что строится на базе этих технологий. Даже соответствующее отделение Российской академии наук называется, как это ни странно, «Отделение информационных технологий и вычислительных систем». Представьте, что, например, строительную механику, материаловедение и архитектуру смешали бы в одну дисциплину. Термин «компьютинг» может оказаться очень полезным для уточнения терминологии вообще и определения места для информационных технологий, в частности. На самом деле взаимосвязь
между
компьютингом
и
составляющими
информационную
индустрию
технологиями очень проста: она та же, что и в любой другой индустрии, в авиации, машиностроении судостроении, где угодно. Повсюду технологии обеспечивают строительный материал,
строительные
блоки
для
создания
систем,
обладающих
конечными
потребительскими свойствами, самолетов, станков, кораблей и так далее. Уровень зрелости индустрии определяется тем, насколько глубоко технологии скрыты от потребителя. Пользователи не обязаны понимать устройство бытовых электронных приборов или автомобилей, они должны уметь ими пользоваться. Информационная индустрия, несмотря на видимые успехи, не является пока достаточно зрелой: некоторыми признаками зрелости обладают персональные компьютеры, но на -8-
Принципы функционирования и структура GRID корпоративном уровне все еще на уровне становления. О зрелости и незрелости информационных технологий, высказал свое мнение выдающийся шведский ученый Бад Лаусон [14]. Несмотря на видимые достижения, компьютеры и их применения еще только вступают в пору зрелости. Лаусон не назвал имена реальных проявлений и движущих сил новой эпохи, однако вполне вероятно, что это именно Grid и все, что с ним связано.
Примеры практического применения Grid Инструментарий с открытым кодом Globus Toolkit, разработанный совместно Калифорнийским
университетом
и
Аргоннской
национальной
лабораторией,
стал
фактическим стандартом в качестве платформы grid-сетей, получив поддержку ведущих компаний США и Японии. HP, Cray, SGI, Sun Microsystems, Veridian, Fujitsu, Hitachi, NEC, Entropia, IBM и Microsoft разработают оптимизированные варианты Globus Toolkit для своих платформ; в компании Platform Computing планируют совместно с разработчиками инструментария создать его коммерческую версию. Работа над Globus Toolkit шла в течение шести лет, результатом чего стало появление обладающего открытой архитектурой набора протоколов, служб и приложений, реализующих основную концепцию grid-вычислений: надежная масштабируемая среда координированного разделения и использования ресурсов в динамичных многоячеечных «виртуальных организациях». Некоторое время назад были анонсированы альянсы между различными Grid-проектами. В частности, IBM и Globus представили службы метакомпьютинга с открытым исходным кодом. Был анонсирован набор новых спецификаций, которые впервые позволяют организовать совместный доступ к приложениям и вычислительным ресурсам через Интернет. Эти стандарты переводят метакомпьютинг из сферы научно-технических приложений в мир реальных бизнес приложений. На состоявшемся в Торонто форуме Global Grid Forum (форум по глобальному метакомпьютингу) IBM и команда разработчиков Globus Toolkit объявили о создании архитектуры Open Grid Services Architecture (OGSA) – набора спецификаций и стандартов, позволяющих объединить преимущества метакомпьютинга и Web-служб. Заказчики смогут совместно использовать вычислительные ресурсы (по запросу), распределенные по всей сети Интернет, работая при этом в рамках гибкой, самоуправляемой и всегда доступной инфраструктуры. В результате заказчики получат возможность интегрировать приложения, совместно использовать данные и вычислительные ресурсы, что может
привести
к
огромной
потенциальной
экономии
затрат
и
повышению
производительности. “Это прорыв, который выведет нас на следующий этап развития вычислительных систем”, заявил Ирвинг Владавски-Бергер (Irving Wladawsky-Berger), вице-президент по стратегии и -9-
Принципы функционирования и структура GRID развитию технологий подразделения IBM Server Group. “Интернет выходит за рамки электронной почты, информационного содержимого и электронной коммерции. Он становится реальной вычислительной платформой, объединяющей качества корпоративных компьютерных систем со способностью совместно использовать ресурсы, распределенные по всей сети Интернет – приложения, данные, устройства хранения, серверы и все прочие элементы”. Новый набор спецификаций основан на таких стандартах, как XML,WSDL и SOAP (эти стандарты особенно важны для Web-служб). [5] Кроме того, в их состав вошли разработанные Globus Project стандарты для метакомпьютинга (Grid Computing), которые применяются для локализации, планирования и защиты вычислительных ресурсов. Иан Фостер (Ian Foster) и Стив Туек (Steve Tuecke) из Американской национальной лаборатории в Аргонне (Argonne) и Чикагского университета, а также Карл Кесселман (Carl Kesselman) из Университета института информационных наук Южной Калифорнии стали авторами исходных спецификаций для метакомпьютинга, опубликованных в работе "The Anatomy of a Grid" (Анатомия метакомпьютинга). [3] При этом они работали вместе с Fellow Jeffrey Nick из IBM и другими специалистами этой компании над задачей включения стандартов для Web-служб в состав новой архитектуры Open Grid Services Architecture. Их аналитическое исследование "The Physiology of the Grid: An Open Grid Services Architecture for Distributed System Integration" [4] (Физиология метакомпьютинга: архитектура grid-служб с открытым исходным кодом для интеграции распределенных систем) было представлено на форуме Global Grid Forum. “Действуя в соответствии с духом и правилами открытого сообщества, мы – участники проекта Globus Project – верим, что благодаря совместной работе с IBM, другими научными и отраслевыми партнерами нам удастся найти решение чрезвычайно актуальной проблемы”, сказал Иан Фостер, помощник руководителя отделения математических и компьютерных наук Американской национальной лаборатории в Аргонне. “Новая архитектура Open Grid Services Architecture позволяет разрабатывать и интегрировать приложения для метакомпьютинга, которые выходят далеко за рамки научнотехнического сообщества, вторгаясь в сферу реального бизнеса”, - отметил Кесселман, директор
Центра
по
исследованию
технологий
метакомпьютинга
в
институте
информационных наук USC. Архитектуру OGSA уже поддержали несколько компаний отрасли, в том числе AVAKI – поставщик коммерческих программных решений в области метакомпьютинга; Entropia – поставщик корпоративных технологий для распределенных gridвычислений на основе PC; Microsoft; и Platform Computing – поставщик программного обеспечения для распределенных вычислений. IBM намеревается использовать архитектуру OGSA в качестве ключевого элемента в своей инициативе Project eLiza. Проект eLiza – это - 10 -
Принципы функционирования и структура GRID инициатива IBM по построению автономных компьютерных систем, направленная на создание открытой, разнородной и самоуправляемой серверной инфраструктуры для электронного бизнеса и коммерческих приложений метакомпьютинга. “Электронный бизнес стал не только сердцем информационных технологий, но и основой глобального бизнеса. Web-службы, метакомпьютинг и создание виртуальной среды – вот те три самые важные технологии, которые выведут нас на следующий этап развития Интернета как платформы для ведения бизнеса”, - говорит Джонатан Юнис (Jonathan Eunice), главный аналитик и консультант по ИТ компании Illuminata Inc. Проект Globus представляет собой многопрофильную научно-исследовательскую программу по созданию фундаментальных технологий метакомпьютинга. Метакомпьютинг – это устойчивая среда, которая позволяет программным приложениям интегрировать инструменты, устройства отображения, вычислительные и информационные ресурсы, управляемые различными организациями, находящимися на большом расстоянии друг от друга. Основным результатом работы проекта Globus Project является программный пакет с открытым исходным кодом Globus Toolkit, который используется по всему миру в многочисленных проектах по созданию и развертыванию приложений метакомпьютинга. Исследования по проекту Globus проводятся в Американской национальной лаборатории в Аргонне и в университете института информационных наук Южной Калифорнии.
Технологические тенденции Для отображения пропорциональности технологических изменений, удобно использовать систему исчисления, отображающую средний период времени, по прошествии которого скорость, или объем данных удваивается, или что более- менее равнозначно, уменьшается вдвое в цене. Для хранилищ данных, сетей и вычислительной мощности, этот период времени равняется 12, 9 и 18 месяцев соответственно. Для того чтобы укоротить какой-либо промежуток времени из этих трех упомянутых, необходимо существенное привлечение дополнительных средств. Так ежегодное удвоение размера хранилищ данных, измеряемое в битах на единицу площади носителя, уже уменьшило стоимость терабайта (10^12 байт) дискового массива до суммы меньшей $10.000. Упреждая факт тенденции подобного удвоения, конструкторы больших физических экспериментов уже планируют петабайтные архивы данных. А ученые, создающие последовательности высокоточного моделирования также наметили для себя петабайтный рубеж. Столь большие объемы данных предъявляют повышенные требования к нашим аналитическим
возможностям.
Драматическое
улучшение
производительности
микропроцессоров означает тот факт, что настольные или переносные компьютеры даже - 11 -
Принципы функционирования и структура GRID начального уровня можно уже считать мощными вычислительными устройствами. Тем не менее, компьютерная мощность резко падает из-за отставания возможностей хранения информации. Удвоение в этой области происходит «только» каждые 18 месяцев, или около того, поэтому только каждые пять лет, компьютерная мощность возрастает на один порядок. А сборка затребованных вычислительных ресурсов в одном месте, или в одном устройстве становится неоправданной растратой. Решение этих проблем состоит в разительных переменах имеющих место в построении сетевых сообществ. Данное решение, фигурально выражаясь, пришпоривается
развитием
сетевых технологий, или же подобно действию допинга, в роли которого выступают повышение производительности оптоэлектронных устройств, растущие запросы Интернет экономики, так что в результате происходит удвоение производительности глобальных сетей каждые девять месяцев. В результате, за те же пять лет, общее увеличение составляет два порядка, или в 100 раз. В качестве примера можно привести организацию NFSnet, сеть которой объединяет суперкомпьютерные центры Национального Научного Фонда (NFS) в США. В 1985, главная магистраль NFSnet функционировала на то время просто с беспрецедентной скоростью в 56 Kb/s. А уже к 2002, центры объединялись 40 Gb/s сетью проекта TeraGrid. Результирующее улучшение на 6 порядков за 17 лет, или в миллион раз! Сия тенденция удваивания сетевой производительности, по сравнению с 18 месяцами относительно улучшения самих компьютеров, уже изменила способ мышления о том, как обеспечивать совместную работу и взаимодействие различных организаций и людей. Если, как предполагается, подобная тенденция на опережение темпов развития сохранится, процесс передачи информации по существу станет бесплатным. Для разработки подобной тенденции появления практически мало чем ограниченной пропускной способности сети, нужно представлять
себе
совершенно
новые
пути
обеспечения
полезной
нагрузки
и
коммуникационнонасыщенные способы работы. Таких как слияние вычислительных ресурсов, распределение потоков громадных количеств данных из различных баз данных, или оснастка для удаленных компьютеров, связующая разнообразные физические датчики между собой, с другими компьютерами и архивными хранилищами. А также связь между людьми, вычислительной техникой, и хранилищами данных в оптимизированном для совместной работы окружении, что позволит избежать необходимости в дорогостоящих физических перемещениях. Если коммуникации неограниченны и бесплатны, тогда мы не будем ограничены в использовании локальных ресурсов для решения текущих проблем. К примеру, чтобы запустить на выполнение моделирующую программу своего коллеги, не обязательно устанавливать этот код локально. Вместо этого, программу можно запустить удаленно на компьютере коллеги. Когда нужно обработать этой же программой какие-либо наборы - 12 -
Принципы функционирования и структура GRID данных, находящихся в различных физических месторасположениях, нет необходимости в получении их копий на тот же компьютер (а ведь сравнительно недавно еще встречались ситуации, когда приходилось заказывать эти наборы по почте). Вместо этого, можно указать удаленно запущенной программе обратиться напрямую к этим данным, где бы они ни находились. Если же есть необходимость повторять подобный анализ много сотен раз с различными наборами данных, можно запросить коллективную вычислительную мощность в рамках
своего
исследовательского
проекта,
либо
приобрести
эти
мощности
у
соответствующего провайдера. И по получению интересных результатов анализа, можно вместе со своими географически рассредоточенными коллегами ознакомиться и обсудить полученные в результате, огромные выходные наборы данных, используя сложнейший наглядно визуализирующий инструментарий, обеспечивающий совместную и одновременную обработку. Хотя эти сценарии значительно могут варьироваться по своей сложности, но в них присутствует одна общая суть. В каждом случае, используются удаленные ресурсы для выполнения вещей, которые невозможно легко исполнить
в домашних условиях.
Высокоскоростные сети зачастую необходимы для подобного удаленного использования ресурсов, но даже при их наличии, это еще далеко не все, чтобы обеспечить полную достаточность для достижения конечной цели. Удаленные ресурсы обычно принадлежат другим людям или организациям, существуют внутри различных административных зон, с различным программным обеспечением, и подпадают под различные политики безопасности и контроля доступа. Фактическое использование удаленных ресурсов включает несколько последовательных шагов. Первое, мы должны выяснить, что они существуют. Второе, необходимо договориться о доступе к ним (и уж точно не с использованием телефона, если сохранять здравомыслие наших рассуждений). Третье, должно произвести конфигурацию программного и аппаратного обеспечения для эффективного использования этого ресурса. Далее, четвертый шаг, все должно быть проделано так, чтобы не скомпрометировать свою собственную безопасность, или безопасность предоставленных удаленных ресурсов, некоторые из которых могут быть даже платными. Осуществление этих шагов требует наличия единообразных механизмов для таких критичных задач как создание и управление сервисами на удаленных компьютерах, поддержка единичной подписки на распределенные ресурсы, передачи крупных наборов данных на высоких скоростях, создание виртуальных сообществ, и поддержание актуальной информации о существовании, состоянии и политиках использования ресурсов сообщества. Современные Интернет и вэб технологии удовлетворяют основным запросам по передаче информации,
но
не
очерченным
выше
задачам.
- 13 -
Обеспечение
инфраструктуры
и
Принципы функционирования и структура GRID инструментария, который делает возможным создание широкомасштабного, безопасного совместного использования ресурсов, к тому же самым простым и прямым способом, это и есть разумное основание появления Grid.
Инфраструктура и инструментарий Любая инфраструктура – это технология, которую мы можем принять за основу, когда выполняем какую либо нашу деятельность. Система дорог позволяет нам путешествовать на автомобиле; международная банковская система позволяет нам переводить капиталы через границы; а Интернет позволяет нам производить обмен информацией виртуально с любым электронным устройством. Для того чтобы быть полезной, технология в основе инфраструктуры должна повсеместно применятся, это означает, по очереди, что она должна быть простой, или необычно не дорогостоящей, или сразу и то и другое. Хороший пример – это набор протоколов, который должен быть выполнен внутри устройства для получения Интернет доступа. Этот набор такой маленький, что уже конструируются вэб-сервера размером, фигурально выражаясь, со спичечный коробок. Grid-инфраструктуре положено обеспечить больше функциональности, нежели имеющейся в Интернет, на котором тот базируется. Но в то же время, она должна сохранять свою простоту. И конечно, остается нужда в поддержании ресурсов, которые усиливают Grid, такие как высокоскоростное перемещение данных, кэширования огромных наборов данных, и доступ к вычислениям по запросу. Именно с помощью инструментария задействуются сервисы, предоставляемые данной инфраструктурой. Касательно Интернет и WWW, этими инструментами являются браузеры для доступа к удаленным вэб-сайтам, программы электронной почты и поисковые системы для
нахождения
нужных
вэб-страниц.
Инструменты
метакомпьютинга
связаны
с
обнаружением ресурсов, управлением данными, построением расписаний вычислений, безопасностью и тому подобное. Но Grid выходит за рамки просто совместного использования, распределения данных и вычислительных ресурсов. Для ученого Grid предлагает новые и более действенные пути выполнения своей работы. Удобней всего их проиллюстрировать на следующих примерах: •
Научные порталы. Мы уже привыкли к тому, что постоянно приходится пробираться через дебри изучения, установки и использования новых программных пакетов. Научные же порталы намного упрощают использование передовых методов решения проблем, позволяя удаленно обращаться к сложнейшим пакетам программ, используя обыкновенный стандартный вэб-браузер, или запрашивая автоматическую установку небольшого и быстро скачиваемого «тонкого клиента», представляющего из себя интерфейс между пользователем и удаленным сервисом, способным решить данную - 14 -
Принципы функционирования и структура GRID проблему. Этот удаленный пакет сам по себе также может выполняться на наиболее подходящем
для
него
компьютере,
внутри
Grid
системы.
Такие
порталы
разрабатываются и активно используются в биологии, ядерных исследованиях, вычислительной химии, а также и в других областях науки. •
Распределенные вычисления. Высокоскоростные рабочие станции и сети могут соединять вместе персональные компьютеры по всей организации, формируя значимый вычислительный ресурс. Например, в компании Entropia Inc, в рамках системы FightAIDSAtHome для вычисления общей задачи запряжены более чем 30.000 компьютеров, анализирующих лекарственные препараты для борьбы со СПИДом. Можно еще упомянуть событие имевшее место в 2001 году, когда математики из США и Италии, объединили свои вычислительные ресурсы для получения частного решения в проблеме математической оптимизации, известного под названием «Nug30». На протяжении недели, это сотрудническое объединение задействовало в среднем от 630 до 1006 (максимум) компьютеров, именно для работы над Nug30, в результате чего на задачу было отведено вплоть до 42.000 процессоро-дней. Будущие улучшения сетевой производительности и технологий метакомпьютинга расширят диапазон проблем, с которыми смогут справляться собирающиеся воедино вычислительные ресурсы.
•
Широкомасштабный анализ данных. Многие интереснейшие научные проблемы требуют анализа огромного количества данных. Для таких проблем, создание шаблонного механизма распределения ресурсов и хранения данных является просто неоценимой вещью. Боле того, естественный параллелизм присущий большинству процедур анализа данных, делает вполне осуществимым эффективное использование распределенных
ресурсов.
Например,
анализ
многих
петабайтов
данных,
производимый в рамках проекта LHC и других будущих физических экспериментах, требует выстраивание в единую систему десятков тысяч процессоров и сотен терабайт дискового пространства для размещения промежуточных результатов. По различным техническим и политическим соображениям, сборка таких ресурсов в одном физическом
расположении,
представляется
непрактичным.
В
тоже
время,
коллективные учрежденческие и национальные ресурсы из сотен учреждений, принимающих участие в таких экспериментах, могут обеспечить данные ресурсы. К тому же, эти сообщества могут совместно использовать не только просто компьютеры и хранилища. Они также могут разделять имеющиеся методики анализа и сами вычислительные результаты. •
Аппаратура по типу «компьютер-в-цепи». Научный инструментарий, такой как телескопы, синхротроны и электронные микроскопы генерируют необработанные потоки данных, которые архивируются для последовательной пакетной обработки. Но - 15 -
Принципы функционирования и структура GRID квазиреальновременной анализ может значительно улучшить возможности данного инструментария. Например, рассмотрим работу астронома по анализу и изучению солнечных вспышек с помощью массива радиотелескопов. Нахождение оригинала функции и алгоритмы анализа, использующиеся для обработки данных по обнаружению вспышек весьма и весьма требовательны в вычислительном смысле. Непрерывное выполнение алгоритмов обработки данных может быть зачастую неэффективным для изучения поведения вспышек, которые могут появляться спорадически, в любой момент и проявлять себя за очень короткий промежуток времени. Но если астроном сможет задействовать значительные вычислительные ресурсы (наряду со сложнейшим программным обеспечением) в манере по востребованию, он или она сможет автоматизировать технику обнаружения вспышек (с помощью намеренной фокусировки оборудования именно на нужной области Солнца), как только они случаются. •
Совместная работа. Зачастую, исследователи желают объединить вместе не только компьютерные мощности, но также и применение человеческой экспертизы. Формулировка проблемы сотрудничества, анализа данных и подобных моментов, являются важнейшими прикладными моментами метакомпьютинга. Как пример, можно привести работу астрофизика, моделирующего системы с огромными, много терабайтными массивами информации, который может пожелать обсудить полученные результаты со своими коллегами в реальном времени, размещающимися в самых различных уголках планеты, при этом, чтобы каждый мог получить визуальное представление результатов в том же виде и в тоже время, что и исходные.
Реальные Grid-приложения зачастую будут состоять из нескольких описанных выше сценариев использования (но не только именно этих). К примеру, тот же радиоастроном может пожелать найти в международном архиве подобные события, с результатами которых ему будет полезно и важно ознакомиться прямо по ходу текущего обсуждения с коллегами. И в то же время, инициировать выполнение распределенного вычисления в реальном времени для проверки альтернативных алгоритмов.
Архитектура Grid Почти целое десятилетие исследований, экспериментов и разработки привели к возникновению взаимных договоренностей и согласия по основным вопросам, касающимся потребностей и архитектуры технологии метакомпьютинга. Стандартные протоколы, которые определяют содержимое и последовательность обмена сообщениями использующиеся для запроса на производство удаленных действий, теперь рассматриваются как наиважнейшие и неотъемлемые в смысле достижения взаимодействия сетей, от которых зависит успех работы - 16 -
Принципы функционирования и структура GRID систем метакомпьютинга. Еще одним наиважнейшим моментом является установление стандарта на интерфейс программирования приложений (API, application programming interfaces), который определяет стандарты по созданию библиотек кода и взаимодействия с ними,
а
также
способствует
построению
компонентов
Grid,
позволяя
повторное
использования кода, применяемого в этих компонентах для решения других задач. Как можно увидеть на приведенном схематическом рис.3, протоколы и API можно категоризировать в соответствии с ролью, которую они играют в Grid-системе. На самом нижнем уровне – сам материал (fabric, фабрика), с которым предполагается основная работа. Это и физические устройства, или ресурсы, которые пользователи Grid желают разделять и иметь доступ, включая компьютеры, системы хранения, каталоги, сети, и различные варианты датчиков. Выше уровнем лежат слои ресурсов и обеспечения связи. Протоколы, применяемые в этих слоях, обязаны быть реализованы повсеместно, а посему, должны быть относительно небольшими по своему количеству и размеру. Соединительный слой составляет сердцевину коммуникационных и идентификационных протоколов, обязательных для сетевого обмена, согласуясь со спецификой метакомпьютинга. Коммутационные протоколы позволяют обмен данными между ресурсами, тогда как идентификационные протоколы надстраиваются поверх сервисов связи для обеспечения криптографически безопасных механизмов проверки подлинности пользователей и ресурсов.
(Слои обеспечения средств компьютинга)
Ресурсный
слой
содержит
Рис.3 протоколы,
использующие
коммуникационные
и
идентификационные протоколы, позволяя безопасную инициацию сеансов связи, слежение и контроль над операциями совместного использования ресурсов. Выполнение одной и той же - 17 -
Принципы функционирования и структура GRID программы на различных компьютерных системах зависит от протокола ресурсного уровня. Как раз Globus Toolkit обычно выступает в роли наиболее использующегося источника протоколов установления связи и использования ресурсов, предоставляя свои API. Коллективный уровень содержит протоколы, сервисы и API, которые осуществляют взаимодействие через совокупность ресурсов. Так как они объединяют и используют компоненты из относительно узких ресурсных и связующих слоев, и эти компоненты коллективного уровня могут обеспечивать выполнение очень широкого круга задач, совершенно различного рода и смысла. Причем, без необходимости создания новых компонентов ресурсного уровня. Примеры коллективных сервисов включают сервисы директорий и брокеров ресурсов, выполняющих функции их обнаружения и назначения. Еще пример, это сервисы мониторинга и проведения диагностики; затем сервисы тиражирования данных и сервисы членства и осуществления политики, предназначенные для отслеживания того, кому в сообществе позволено иметь доступ к ресурсам. На вершине любой Grid системы находится пользовательское приложение, которое конструируется в терминах компонентов из любого другого уровня, на которых и будет базироваться в дальнейшем. Например, приложение анализа, применяемое в физике высоких энергий, зависит от выполнения нескольких тысяч независимых задач, каждое из которых принимает на вход некоторый набор файлов содержащих некие события. Это приложение может действовать следующим образом: •
получение необходимых идентификационных мандатов (протоколы уровня связи)
•
запрашивание
информационной системы
и репродукционного списка для
определения доступности компьютеров, систем хранения информации и сетей, а также расположение запрашиваемых входных файлов (коллективные сервисы) •
представить на рассмотрение запросы к подходящим компьютерам, системам хранения и сетям для начала вычислений, перемещения данных и так далее (ресурсные протоколы)
•
отслеживание хода различных вычислений и перемещение данных, оповещение пользователя после выполнения всех задач, обнаружение и реагирование на аварийные события (протоколы ресурсов).
Многие из этих функций могут быть разнесены по различным инструментам, которые способны
автоматизировать
и
более
сложные
задачи.
Примером
мощного,
полнофункционального брокера задач можно назвать систему Condor-G, созданную в университете Висконсина.
- 18 -
Принципы функционирования и структура GRID
Идентификация, авторизация и политика использования Идентификация, авторизация и политика использования являются одними из наиболее важных и непростых проблем в приложении к метакомпьютингу. Традиционные технологии безопасности относятся первично к организации защиты взаимодействия между клиентами и серверами. При таких взаимодействиях, клиент (он же пользователь) и сервер нуждаются в обоюдной идентификации (то есть проверке) подлинности друг друга, в то время сервер должен определить следует ли авторизировать запросы присланные клиентом. Разработаны сложнейшие технологии для осуществления этих базовых операций, и в том числе для обнаружения и предотвращения различных форм атак. Подобные технологии постоянно сопровождают деятельность сайтов коммерческой направленности, например, при оплате онлайн-покупки. В случае Grid окружения, ситуация еще более сложная. Различие между клиентом и сервером имеют тенденцию к исчезновению, потому что индивидуальный ресурс может действовать как сервер. В один момент времени (по получению запроса) и как клиент в другой момент (в момент издания запроса к другому ресурсу). Например, когда выдается запрос на выполнение кода на компьютере другого коллеги, в этот момент запрашивающий компьютер является клиентом, а запрашиваемый – сервером. Но спустя некоторое время, тот же самый исполняющийся код и компьютер из сервера превращается в клиента выдающего запросы от своего имени к другим компьютерам, чтобы получить доступ к входным наборам данных и для выполнения вспомогательных вычислений. Управление транзакциями подобного рода вызывает появление некоторого числа интересных требований к системам: •
Один вход. Одиночное вычисление может повлечь за собой доступ ко многим ресурсам, но каждый раз запрашивать пользователя производить повторную идентификацию
(например,
вводом
пароля),
представляется
совершенно
непрактичным и неприемлемым. И в самом деле, пользователь должен иметь возможность идентифицировать себя один раз, а затем дать право самому процессу вычисления работать от своего имени, скажем, на определенный период времени, либо по достижению определенных результатов. Возможность такой работы достигается с помощью создания доверительного набора прав. На рис.4, программа, выполняемая пользователем (точнее, пользовательским доверителем) использует доверительный набор прав для идентификации на двух различных сайтах. Эти сервисы управляют запросами для создания новых процессов.
- 19 -
Принципы функционирования и структура GRID
(Механизмы обеспечения безопасности Grid) •
Рис.4 Отображение на частные механизмы безопасности. Различные сайты могут использовать различные частные решения обеспечения безопасности, такие как Kerberos и применяемые в операционной системе Unix механизмы безопасности как изображено на рис.4. Инфраструктура безопасности Grid нуждается в отображении этих частных решений на каждом из сайтов, так чтобы локальные процессы могли бы проходить с подходящим привилегиями. На рис.4, процессы выполняются под местным идентификатором. И, на сайте A выдается Kerberos-удостоверение, то есть набор прав используемый системой идентификации Kerberos для отслеживания запросов.
•
Делегирование. Создание доверительного набора прав является одной из форм передачи полномочий (делегирования), процедуры фундаментальной по своей важности в метакомпьютинге. Вычисление, которое охватывает сразу несколько ресурсов,
вызывает появление
подвычислений
(вспомогательные
вычисления),
которые могут сами по себе генерировать запросы к другим ресурсам и сервисам, что вполне возможно, в свою очередь может вызвать создание дополнительных подвычислений, и так далее. На рис.4, два подвычисления созданных в рамках сайтов A и B, оба взаимодействуют между самими собой и получают доступ к файлам на сайте C. Действия по идентификации, а отсюда и дальнейшие делегированные наборы прав, вовлекаются в процесс на каждой его стадии, так как с их помощью задействованные ресурсы определяют, позволять ли обслуживать данные запросы, а сами вычисления определяют, можно ли доверять этим ресурсам. В дальнейшем, эти - 20 -
Принципы функционирования и структура GRID делегированные наборы прав рассеиваются, так как возрастает риск, что они могут быть перехвачены и использованы не по назначению неуполномоченной стороной. Так что, операции делегирования и наборы прав, позволяющие их появление, должны управляться с большой осторожностью. •
Авторизация в рамках сообщества и политика применения. В большом сообществе, линии поведения (политики), которые определяют, кто, когда и как может использовать ресурсы и для каких целей, не могут базироваться прямо на индивидуальном подтверждении подлинности. Это просто невыполнимая задача, чтобы каждый ресурс мог отслеживать состояние членства в сообществе и назначенные привилегии. Вместо этого, ресурсы (и пользователи) нуждаются в возможности выражения политик поведения в терминах других критериев, таких как членство в отдельной группе, которое может быть отождествлено с помощью криптографических наборов прав изданных доверительной третьей стороной. В сценарии изображенном на рис.4, файл сервер на сайте C должен детально знать, позволено ли этому пользователю получить доступ именно к определенному файлу. Система авторизации сообщества позволяет этому «политическому» решению быть делегированным в качестве представителя сообщества.
Различные поколения Grid по мере их развития История первого поколения академического Grid начинается в 1989 году. [8] Тогда этот подход был называн метакомпьютингом, работа велась по проекту CASA. В первой половине 90-х годов наиболее активно развивались проекты FAFNER и I-WAY. При видимом различии (в FAFNER акцент был сделан на рабочие станции, а в I-WAY — на суперкомпьютеры) общим было то, что в них решались проблемы коммуникации, управления ресурсами, манипуляции удаленными данными. Стимулом для появления проекта FAFNER (Factoring via Network Enabled Recursion; факторизация с помощью рекурсии, поддерживающей сетевой обмен данными) стал конкурс Factoring Challenge, объявленный компанией RSA, первой предложившей криптосистему с открытым ключом. Эта система основана на том факте, что неизвестно сколько-нибудь приемлемого по времени работы алгоритма разложения произведения двух больших простых чисел на множители. Поскольку есть возможность для распараллеливания алгоритмов разложения и не требуется высокая скорость обмена, для решения этой задачи была создана «паутина» из рабочих станций. По своей логике проект FAFNER очень близок к SETI; участие в нем носит добровольный характер.
- 21 -
Принципы функционирования и структура GRID Изюминка
проекта
I-WAY
заключалась
в
том,
что
для
объединения
17
высокопроизводительных узлов не строилась специальная высокопроизводительная сеть, а виртуализировались объединенные ресурсы десяти существующих сетей, построенных на основе технологии ATM (режим асинхронной передачи данных). В отличие от FAFNER, в этом проекте требовалась высокая скорость обмена данными между узлами. Для управления этой системой был создан брокер вычислительных ресурсов Computational Resource Broker, состоящий из центрального управляющего узла и агентов в каждом из остальных, а также распределенной файловой системой. Первые опыты Grid были не слишком удачны. Проект FAFNER требовал очень большого человеческого участия, а проект I-WAY с трудом поддавался масштабированию и обладал низкой надежностью. На основании этих двух проектов были выработаны качества, которыми должен обладать Grid второго поколения:
Административная иерархия как способ взаимодействия отдельного узла со всем Grid в целом.
Коммуникационные службы, обеспечивающие должное качество обслуживания (quality of service, QoS), полосу пропускания, задержку, надежность.
Информационные службы, обеспечивающие доступность ресурсов всем процессам системы.
Службы имен, образующие единое пространство имен.
Распределенные файловые системы и кэширование.
Безопасность и авторизация.
Представителями второго поколения Grid можно считать проекты Globus и Legion. Впрочем, проект Globus, ставший развитием проекта I-WAY, развивался и дальше; его нынешняя версия относится к третьему поколению. Это также географически распределенный вычислительный Grid. Центральным элементом проекта является инструментарий Globus Toolkit, который включает:
построенный на основе HTTP протокол резервирования вычислительных ресурсов GRAM (Globus Toolkit Resource Allocation Management);
расширенную версию протокола для передачи файлов GridFTP;
службу аутентификации и безопасности GSI (Grid Security Infrastructure);
распределенный доступ к информации на основе протокола LDAP (Lightweight Directory Access Protocol);
удаленный доступ к данным через последовательный и параллельный интерфейс GASS (Globus Access to Secondary Storage);
резервирование ресурсов GARA (Globus Reservation and Allocation).
- 22 -
Принципы функционирования и структура GRID Проект Legion, [9] построенный как объектно-ориентированная метасистема, позволяет пользователям со своих рабочих станций получать доступ к интегрированной инфраструктуре вне зависимости от масштаба, физического расположения, языка и операционных систем. Legion «стартовал» в 1997 году. В 1998 году была создана компания Applied Metacomputing, начавшая коммерческую эксплуатацию идей Globus; в 2001 году она была преобразована в компанию Avaki, занимающую одно из лидирующих мест в области Grid. Сегодня появляются принципиально новые инструменты:
научные порталы, которые позволяют вызывать по сети пакеты, специализированные на решении определенных задач;
средства для организации распределенных вычислений, собирающие для решения задач десятки тысяч компьютеров;
анализ
сверхбольших
объемов
данных,
возможный
благодаря
объединению
средствами Grid систем хранения;
объединение больших вычислительных ресурсов для обработки экспериментов в режиме онлайн.
В качестве коммуникационной основы для академических структур Grid третьего поколения используются высокопроизводительные сети, относящиеся к Internet 2. В их числе — Albiene (10 Гбит/с), английская SuperJanet, общеевропейская GEANTnet, канадская CA*net3 и азиатская APAN и еще целый ряд сетей. Обычно эти сети предоставляют разные по производительности каналы, национальные, коммерческие и индивидуальные соотносятся между собой в пропорции 10:1:0,1. Один из наиболее грандиозных сетевых проектов стартовал в США в 2002 году (см. Приложение). Под управлением Национального научного фонда США в период до 2006 года будет строиться трансконтинентальная сеть Global Terabit Research Network (ее еще называют GTRN или Tera-Grid). GTRN физически будет иметь каналы в Европе и Америке, логически же она объединится с существующими азиатскими и европейскими сетями. Сеть будет предоставлять четыре уровня услуг: национальную магистраль, магистраль для предприятий, оптическое подсоединение к персональным компьютерам и медное подсоединение к персональным компьютерам; они будут иметь пропускную способность 1000, 100, 10 и 1 Гбит/с соответственно. Первыми к магистрали подключаются суперкомпьютерные центры университета штата Иллинойс и Калифорнийского университета в Сан-Диего, Национальной Аргоннской лаборатории (одно из ведущих исследовательских учреждений в области Grid) и Калифорнийского технологического института в Пасадене. По оценкам, совокупная вычислительная мощность первой очереди составит 13,6 TFLOPS, а к концу десятилетия возможен выход в петафлопный диапазон.
- 23 -
Принципы функционирования и структура GRID Не менее стремительно развиваются средства программного обеспечения для создания Gridприложений. Особое место принадлежит ОС Linux, поскольку Linux-кластеры составят основу вычислительной мощности TeraGrid. Прорывом стала CORBA (Common Object Request Broker Architecture), технологии Jini (универсального взаимодействия различных устройств от Sun) и Java RMI (Remote Method Invocation). В апреле 2001 года компания Sun предложила проект Project JXTA, ориентированный на создание пятиуровневой сетевой операционной среды, где верхним может быть уровень Grid-приложений. Разумеется, в условиях массового развития Grid первостепенное значение
приобретают вопросы
стандартизации. Наряду с широко используемыми стандартами TCP/IP и HTTP оказались к месту и стандарты, обеспечивающие взаимодействие на уровне служб (SOAP, XML, WSDL и другие), поскольку в Grid это одна из самых удачных платформ для слабосвязанных приложений. Форум Grid Forum создает специализированные стандарты, в том числе Open Grid Service Architecture (OGSA) и GridRPC.
Текущий статус и будущие направления По мере того как Grid приобретает все более сформировавшийся вид, стандартные технологии смещаются в сторону базисных операций компьютинга. В частности, базирующийся на подходе совместной разработки, проект с открытым кодом Globus Toolkit применяется в большинстве основных проектов компьютинга. Мир бизнеса также уже начинает инвестировать разработки Grid приложений. К концу 2001-го, уже 12 компаний объявили о поддержке Globus Toolkit. Но все-таки, словом Grid слишком многое названо. Это и собственно аппаратнопрограммная информационная инфраструктура, это и отдельные, еще не многочисленные приложения, это и попытки строить по новым принципам корпоративные системы. Ситуация, сложившаяся вокруг Grid, напоминает события 25-летней давности, когда зарождался Internet, когда не было ни электронной почты, ни Web. Однако нынешние технологии находятся на качественно новой ступени. Grid, как Internet в свое время, нуждается в своем собственном «убийственном приложении». Но приложение это явно не будет таким простым, как электронная почта, — условия для его появления совсем иные. Эти условия отличаются «более высокой наукоемкостью решений». Так, в качестве подобного приложения называют Semantic Grid, который мог бы оперировать в рамках известной триады «Данные —> Информация —> Знание». Правда, современный уровень знаний в области теории информации явно недостаточен. Также в качестве одного из основных признаков изменившихся условий можно назвать такое качество современных систем, как сложность. Практически на всех уровнях, от процессоров для корпоративных систем достигнут (или вот- 24 -
Принципы функционирования и структура GRID вот будет достигнут) тот предел сложности, до которого можно было развиваться, опираясь в основном на инженерные знания. Для понимания особенностей условий, в которых появилась архитектура Grid, и ее перспектив, стоит обратить внимание на дисциплины, выходящие за рамки традиционного инженерного круга знаний, — кибернетику, общую теорию систем, синергетику (переводится как "энергия совместного действия", от греч. «син» — «со-», «совместно» и «эргос» — «действие») и др. Наметился прогресс и на организационном фронте. Тысячи компетентных людей принимают участие во всемирном метакомпьютинговом форуме (Global Grid Forum, http://www.gridforum.org). И это уже существенная сила, так как эти люди принимают активное участие в создании и укреплении стандартов и дальнейшем развитии сообщества. На встречах в рамках этого форума, которые проходят 3 раза в год, принимают участие сотни посетителей
из
более,
нежели
200
организаций.
А
международная
лаборатория
метакомпьютинга виртуальных данных (International Virtual Data Grid Laboratory, iVDGL, http://www.ivdgl.org)
была
признана
как
- 25 -
международная
Grid
система
(рис.5).
Принципы функционирования и структура GRID (Распределение сетевых связей международной лаборатории метакомпьютинга виртуальных данных iVDGL по всему миру)
Рис.5 Широко известен факт, что люди склонны переоценивать воздействие чего-либо в рамках ближайшего временного периода, и недооценивать эффект воздействия на протяжении большого отрезка времени. Уверенно можно сказать, что понадобится намного больше времени, нежели ожидалось ранее, чтобы концепции метакомпьютинга и его технологии видоизменили
практику
экспоненциальных
науки,
инженерного
технологических
тенденций
искусства и
и
бизнеса.
прогресс
в
Но
сочетание
исследовалельско-
разработческой деятельности, уже упомянутых ранее, совершенно реальны и, в конечном счете, окажут разительное воздействие на многие аспекты жизни. В будущем, в котором вычисление, хранение информации и программное обеспечение больше не будут чем-то таким, чем мы можем владеть, а просто коммунальными услугами, на которые мы можем подписаться. Большинство успешных научных сообществ, вероятно, будут из тех, которые преуспеют в настройке и найдут эффективное использование подходящих Grid-инфраструктур, таким образом, ускоряя разработку и принятие новых методов решения проблем в своих областях. Конечно, существуют и неоднозначные прогнозы на влияние метакомпьютинга на ход развития бизнеса информационных технологий. Вплоть до того, что Grid выступит в роли катализатора безработицы в данной сфере бизнеса. [15] Это мнение аналитика компании Gartner Тома Биттмана. Он считает, что повышение эффективности использования ИТ, в особенности развитие Grid, способно привести к «миллионным увольнениям». По словам Биттмана, эффективность оптических сетей улучшается ежегодно на 100%, вычислительная мощность — на 60%, тогда как эффективность человеческого труда остается без изменений. Когда вычисления по сравнению с каналами обходятся недорого, системы стремятся размещать в организациях, и количество оборудования нередко превышает требуемое, поскольку мощности большинства серверов задействуются лишь на 5-15%. С удешевлением каналов связи появляется возможность вынести вычисления за пределы организации. По мнению Биттмана, использование Grid позволяет отказаться от большей части персонала, отвечающего за управление ИТ-системами. Согласно прогнозу, применение Grid крупными корпорациями начнется в 2006 году. И по данным исследовательской компании IDC, к 2006 году рынок программного обеспечения, предоставляемого по требованию, составит 20 млрд. долл. Аналитики из META Group считают, что более 90% корпораций к 2007 году в том или ином виде будут использовать Grid для доступа к ресурсам и Web-службам.
- 26 -