Аренда армии компьютеров будет стоить 1$ в час
В ближайшее время компания Sun планирует запустить для широкого круга пользователей свой сервис Grid Utility. Его пользователи смогут “просчитать” свои задачи на сети из большого количества компьютеров по цене 1$/час. Подобные услуги предлагают и другие компании, но только Sun использует столь простой способ тарификации, похожий на счётчик электричества или воды, и не требует заключения контракта.
Концепция Sun Grid: процессорное время за деньги
В октябре 2004 года Джонатана Шварца, президента компании Sun, посетила идея нового варианта аутсорсинга ИТ-инфраструктуры. Она поражала своей неожиданной простотой по сравнению с общепринятыми моделями. Существуют многочисленные “пакетные” задачи, требующие одноразового применения значительных компьютерных мощностей. Таковы, например, расчёт (rendering) финальной версии анимационного фильма, обсчёт математической модели биологических процессов и т.д.
Для таких задач обычно используются собственные вычислительные центры. Но содержание такого центра (включая закупку техники, электричество, обслуживание, затраты на недвижимость для размещения центра и т.д.) – достаточно дорогое удовольствие. К тому же требуется постоянное обновление техники; новейшие компьютеры превращаются в музейные экспонаты за несколько лет. С учётом того, что центр работает в полную силу лишь при расчёте очередной пакетной задачи, расходы на него становятся особенно ощутимы.
Джонатан Шварц предположил, что компания Sun могла бы создать для таких задач огромные вычислительные центры. Их можно было бы расположить где угодно, хоть в Сибири (по мнению г-на Шварца, там можно сэкономить на охлаждении и на расходах на недвижимость). А клиенты смогли бы запускать свои задачи, оплачивая процессорное время, т.е. реально затраченные “процессоро-часы”.
Очень многие расчётные задачи хорошо поддаются распараллеливанию, т.е. их можно разбить на множество частей и исполнять одновременно на многих машинах. Такую задачу можно решить весьма быстро, если задействовать большое количество компьютеров, объединённых в сеть; например, вместо 100 минут расчёта на одной машине хватит 1 минуты на 100 машинах. Эта технология называется grid computing. У компании Sun есть отработанная программная система для сетевых вычислений – Sun Grid engine; её исходные коды открыты.
Именно на grid computing и основано предложение “процессорного времени за деньги”. В большом вычислительном центре Sun задача, требующая немалого количества процессорного времени, будет выполнена на множестве компьютеров и весьма быстро; клиент заплатит за процессорное время, но ему не придётся ждать. С собственным вычислительным центром, кстати, ждать бы всё-таки пришлось, поскольку мощность такого центра обычно ограничена.
Конечно, далеко не всякая задача хорошо решается в “пакетном” режиме и при помощи сетевых вычислений. Но круг подходящих задач достаточно широк, чтобы затея имела смысл.
Что предлагает Sun
В феврале 2005 года компания Sun официально представила услугу Sun Grid Utility. Установлены предельно простые и понятные цены. Процессорное время предлагается по цене 1 доллар за час (точные спецификации процессора опубликованы). Хранение пользовательских данных – 1 доллар за гигабайт в месяц. Пользователь Sun Grid Utility сможет управлять этой услугой через Web-интерфейс.
К сожалению, услуга пока что недоступна для широкого рынка. Её используют лишь некоторые крупные заказчики Sun. Ожидается, что Sun Grid Utility станет общедоступной в течение лета. Компания заявила о внушительных планах по расширению возможностей Sun Grid и добавлению новых услуг. Так, уже представлена возможность торговли приобретённым процессорным временем Sun Grid на вторичном рынке (аукционы). Обсуждается сотрудничество с провайдерами приложений (Application Service Providers, ASP).
Вероятно, самый амбициозный и интересный вариант расширения Sun Grid – это предполагаемая услуга Desktop Grid. Используя “тонкий клиент” (в частности, Sun Ray), пользователь сможет подключаться через сеть к вычислительному центру Sun и получать в терминальном режиме услуги “настольного компьютера”. Предполагается достаточно низкая цена – например, 1 доллар в месяц. Пользоваться такой схемой может во многих случаях оказаться удобнее, чем применять обычные настольные компьютеры; например, один и тот же “рабочий стол” будет доступен их любого места в Сети, с любого терминала.
Весь комплект предложений Sun Grid Utility, от нынешнего первого варианта и до Desktop Grid и других линий развития, должен “пробить дорогу” новой концепции на рынке – восприятию самой работы компьютера (computing) как услуги.
Работа компьютера как услуга
По мнению Джонатана Шварца, работа компьютера должна быть стандартной услугой, подобной электричеству и водопроводу. Первые системы электропитания были независимыми, со своими генераторами; их строили и поддерживали квалифицированные специалисты. На них очень похожи нынешние собственные вычислительные центры компаний.
Но позже электроснабжение стало стандартной услугой. Её могут предоставлять разные компании, и при этом напряжение в розетках и другие параметры сети стандартизованы; потребителю не приходится заботиться о построении своей особой системы. Sun Grid Utility претендует на то, чтобы стать первым примером “сети компьютерных услуг”, аналогичной сетям электричества, водопровода и (как любит подчёркивать г-н Шварц) канализации.
Технология распределённых сетевых вычислений (grid computing) также не является абсолютно новой. Вероятно, наиболее известным её применением стали широкие волонтёрские проекты, такие как SETI@Home и Folding@Home. Участник такого проекта запускает на компьютере (как правило, настольном) программу, которая ведёт свою маленькую часть огромного вычислительного процесса (поиск внеземных цивилизаций, расчёт биологических процессов и т.п.). Таким образом тысячи компьютеров во всём мире становятся участниками вычислительной сети (grid).
Один из наиболее значимых подобных проектов – Folding@Home; его результаты несколько раз использовались в опубликованных научных работах. Руководитель Folding@Home Виджей Пандей (Vijay Pande) сообщил, что в данный момент в проекте активны 200 тысяч процессоров; если считать, что используемая мощность двух таких процессоров примерно равна одному процессору Sun Grid Utility, то по ценам Sun проект Folding@Home “вырабатывает” около миллиарда долларов в год.
Коммерческий доступ к grid-вычислениям также известен рынку. Его предоставляют компании IBM и Hewlett Packard (HP) в рамках комплексного обслуживания своих клиентов. Однако уникальность предложения Sun – в простой системе оплаты и отсутствии необходимости в большом заказе. Если клиент IBM или HP может получить grid-вычисления лишь в контексте проекта по специализированному обслуживанию, то клиенту Sun достаточно приобрести лишь четыре часа процессорного времени.
Подключение и использование оказывается простым – как и в электросети. Оплачиваемые “процессоро-часы” - это такой же простой “счётчик”, как и электрические киловатт-часы. Таким образом, именно предложение Sun максимально приближено к концепции коммунальной услуги – и за счёт этого может надеяться покорить широкий рынок.
Хорошо забытое старое
Известное высказывание “всё новое –
это хорошо забытое старое” в полной мере относится к появлению Sun Grid Utility.
Старожилы компьютерного мира помнят, что передача пакетной задачи на выполнение
на удалённый компьютер – совсем не новая идея. Более того – с этого когда-то всё
начиналось. Программу нужно было “набить” на перфокарты или другой носитель,
потом передать в вычислительный центр, а позже – получить результат, например, в
виде распечатки. Сервис Sun Grid Utility, позволяющий передать задачу и получить
результаты по сети, – во многом тот же самый процесс на новом технологическом
уровне.
Позже пришла эра терминальных систем разделения времени. К большому компьютеру по линиям связи подключалось множество терминалов. Каждый пользователь работал на своей клавиатуре и за своим монитором; но компьютер был общим и мог находиться достаточно далеко. Предполагаемая система Desktop Grid возвращает ситуацию к тем временам – конечно, опять же на новом уровне.
От моделей запуска пакетных задач и разделения времени (кстати, операционные системы больших машин нередко поддерживали как то, так и другое – с интерактивного терминала можно было запустить пакетную задачу и позже, когда она выполнится, получить результат) мир информационных технологий отошёл, в основном, после революции персональных компьютеров. Но для всех ли оптимальны результаты этой революции?
На тот момент она была, безусловно, оправдана. Вычислительные мощности развивались быстро, а цифровая связь была медленной и сложной в применении. Выполнять все задачи как можно ближе к конечному пользователю (на его собственной настольной машине или же на сервере внутри организации) было куда проще, чем передавать их на какую-либо удалённую компьютерную систему. Конечно, терминальные решения сохранились, но были в основном “нишевыми” (например, в некоторых банках).
Однако революция ПК обернулась необходимостью множества постоянных затрат. И настольные компьютеры, и серверы требуют постоянной поддержки, периодического (и достаточно частого) обновления аппаратуры и т.п. Ошибки в поддержке приводят к проблемам в надёжности и безопасности систем; эти проблемы стали настоящим бичом ИТ.
Между тем, средства связи сейчас весьма развиты, и прежних ограничений при использовании удалённых компьютеров уже нет. При этом технологии grid позволяют создать для коммерческого удалённого обслуживания компьютерные системы весьма внушительной мощности. Их поддержка и обновление будет обеспечиваться специалистами провайдера (на данный момент Sun, но если предложенная компанией модель будет принята, наверняка появятся и другие провайдеры). Клиенту останется лишь использовать стандартное терминальное оборудование, которое отнюдь не требуется постоянно обновлять, и оплачивать “по счётчику” использованные услуги.
Конечно, в некоторых случаях переход к удалённому обслуживанию затруднён технически (например, для ряда игр) или по соображениям политики и безопасности (например, для банковской информации). Но в очень многих ситуациях “новая старая” схема работы может оказаться удобнее и выгоднее прежней. Если, конечно, компании Sun удастся сделать свою новинку действительно популярной.
Поднимется ли Солнце на новом горизонте?
Уверенности в
успехе проекта пока нет. Так, основные преимущества Grid Utility перед решениями
IBM и HP проявятся лишь при выходе на широкий рынок. Но компания Sun отложила
предоставление сервиса Grid Utility для широкого круга пользователей; оно
ожидается в июле-августе. Мощности, которые были доступны раньше, оказались
загружены несколькими крупными заказчиками, и потребовался ввод новых
вычислительных центров.
Как сообщил Павел Анни, руководитель отдела продуктов и решений российского отделения Sun, в настоящее время компания создаёт первые центры для программы Grid Utility. Они расположены в США, Канаде и Шотландии. В дальнейшем предполагается появление второй очереди центров по всему миру; идея Джонатана Шварца о Сибири ещё может реализоваться.
Наряду с проблемой мощностей, интересен вопрос о лицензировании программного обеспечения. В web-интерфейсе Sun Grid, который был продемонстрирован на февральской презентации, доступно некоторое количество стандартных программных пакетов. Но для выполнения разнообразных клиентских задач могут потребоваться и другие программы.
Если используется собственная разработка клиента или же ПО с открытым кодом, установка программы на Sun Grid становится лишь делом техники. Но во многих случаях, например, для создания анимационных фильмов, широко применяется ПО с закрытой коммерческой лицензией. Такая лицензия обычно предоставляет право использования на определённом количестве компьютеров; с концепцией Sun Grid, предполагающей подключение к работе произвольного количества машин, подобный подход несовместим. Поэтому для успешного применения Grid потребуется изменение лицензионной политики поставщиков ПО – например, они могут выделить расчётные модули для Grid в отдельный продукт с другой лицензией. Если же программный продукт предназначен только для Windows, потребуется к тому же создать расчётный модуль, работающий под управлением Solaris.
От успеха проекта Grid Utility во многом зависит будущее компании Sun. И дело не только в том, станет ли сама эта компания ведущим провайдеров новых компьютерных услуг. Изначальная бизнес-модель Sun, созданная непосредственно перед революцией персональных компьютеров, во многом была ею похоронена. Место знаменитых рабочих станций Sun, о которых в начале 90-х многие говорили с восхищением, заняли дешёвые ПК; они же позже во многом вытеснили большие серверы Sun. В мире, созданном этой революцией, для Sun было куда меньше места (несмотря на успехи платформы Java). Но в случае победы модели Grid и превращения работы компьютера в “коммунальную услугу”, поставляемую дистанционно, мир может заметно измениться – и, возможно, окажутся затребованными технологии (как программные, так и аппаратные), в которых компания Sun наиболее сильна.
“Солнце” во многом “закатилось” благодаря распространению ПК. Но компания сумела пережить эту революцию – в отличие от таких гигантов прошлых лет, как Digital. Сумеет ли она теперь “похоронить”, или как минимум потеснить, саму революцию ПК, чтобы “взойти” уже на новом горизонте? Или новая, а во многом – хорошо забытая старая модель обслуживания всё-таки не будет воспринята рынком? Этот вопрос, вероятно, решится в течение ближайших нескольких лет.