Cloud Computing: высокая облачность
АрхивИнтерактив"Компьютерра-Онлайн" встретилась со специалистами в области облачных вычислений и узнала несколько любопытных подробностей о новой технологии, на которую делают ставку многие титаны рынка.
О новом типе компьютерной инфраструктуры Cloud Computing в последнее время говорят очень много, но далеко не каждый может доходчиво объяснить суть данного термина и рассказать о принципах работы технологии, на которую делают ставку многие титаны рынка. Для всестороннего раскрытия темы "Компьютерра-Онлайн" решила обратиться к специалистам в области облачных вычислений, и на вопросы редакции любезно согласились ответить советник по платформенной стратегии Департамента Стратегических Технологий Microsoft Дмитрий Мартынов и руководитель отдела исследований и разработки новых продуктов компании Quest Software Дмитрий Сотников.
Начнём с самого главного: что же, все-таки, подразумевается под понятием "клауд компьютинг"?
Дмитрий Сотников: Если говорить совсем грубо, то облачные вычисления есть некие сервисы из Интернета. Это в простейшем приближении. Если же рассматривать термин более широко, то существует несколько присущих Cloud Computing характеристик. К ним относятся: предоставление возможностей системы удаленно, сокрытие ее физической реализации, организация взаимоотношений с системой по принципу динамического самообслуживания и оплата услуг по схеме "сколько потратил вычислительных ресурсов, столько и заплатил".
Дмитрий Мартынов: Существует несколько условных категорий Cloud Computing. Первая - Software as a Service (SaaS) - объединяет так называемые законченные, не допускающие кастомизации продукты, например, почтовые службы или порталы. Во вторую группу, именуемую Platform as a Service (PaaS), входят облачные сервисы для разработчиков, которые, по большому счету, представляют собой масштабируемые и автоматически управляемые хостинг-ресурсы. Яркими примерами таких платформ являются Google App Engine и Windows Azure. И ещё одна категория - инфраструктура как сервис (Infrastructure as a Service, IaaS), представляющая хостинги виртуальных машин. В последнее время наметилась тенденция к организации ещё одной модели Everything as a Service (XaaS), но её внедрение, на мой взгляд, носит исключительно маркетинговый характер, поскольку даже те три вида клауд-сервисов, которые я кратко рассказал, до сих пор находятся на этапе развития.
Д.С.: Добавлю, что в некоторых случаях нельзя говорить о чётких границах между категориями "облаков". Они размыты и в общем случае свидетельствуют об уровне близости разработчика к "железу".
Существует ли какая-нибудь взаимосвязь между Cloud Computing и Grid-системами, используемыми для организации распределённых вычислений?
Д.М.: В первом приближении обе эти технологии похожи, так они позволяют решать задачи с использованием большого количества распределенных узлов. Принципиальная разница заключается в подходах к решению этих задач. Для работы в Grid необходимо владеть определёнными навыками управления обработчиками, очередями, выполняющимися в сети процессами и прочими специфическими вещами. В облачных системах аналогичного рода задачи решаются намного проще: пишется веб-приложение на .NET, например, и далее оно просто запускается в "облаке". Кроме того, необходимо учитывать доступность Grid- и Cloud-систем. Первые, как правило, используются в академических кругах, для выполнения каких-то специализированных вычислений и так далее, вторые же характеризуются коммерческой применимостью с низким порогом вхождения.
Как решаются в Cloud Computing вопросы информационной безопасности? Ведь не каждая компания согласится использовать для решения своих коммерческих задач невесть где расположенные аппаратные ресурсы?
Д.С.: Во-первых, следует учитывать, что любой поставщик облачных услуг заинтересован в обеспечении безопасности обрабатываемых в дата-центре клиентских данных и проводит в этом направлении довольно большую работу. Ведь информационная безопасность в клауд-системах - это важнейший принцип, создающий основу для успешного ведения бизнеса и экономического процветания. Во-вторых, нельзя забывать о юридически оформляемых соглашениях с организациями, работающими на рынке Cloud-компьютинга. Наконец, в-третьих, ничто не мешает компаниям-потребителям использовать дополнительные уровни безопасности, встраиваемые в веб-приложения, будь то системы аутентификации, шифрования, безопасной передачи данных, надёжного разграничения данных различных пользователей и их прав, а также прочие механизмы.
Нужно понимать важный момент: вне зависимости от того, переходят или не переходят вычисления в "облако", требования к безопасности не меняются. Когда данные находятся внутри предприятия, компания всё равно должна обеспечивать их надежное хранение. Ведь согласно статистике различных исследований, процент утечек важной информации, вызванных офисными сотрудниками, превышает процент утечек данных от внешних взломов. Поэтому, даже если информация хранится на собственных серверах, фирма в любом случае должна контролировать к ним доступ: ставить камеры и прочее хитрое видеооборудование, внедрять пропускную систему, проводить инструктажи с персоналом и т.д. Вот тут и возникают у компании вопросы финансового характера: а стоит ли тратиться на подобные системы защиты или лучше доверить обработку данных специализированным дата-центрам, гарантирующим надёжность хранения информации?
Д.М.: Подчеркну, что еще существует набор сертификаций по безопасности, то есть, формальная часть вопроса. И если подавляющее большинство заказчиков, пользующихся собственной IT-инфраструктурой, для организации безопасности руководствуются определёнными процедурами, то в облачных системах всё намного серьёзнее. Особое внимание компании и фирмы, работающие в сфере "вычислительных облаков", уделяют прикладной безопасности по той простой причине, что задачи разных пользователей выполняются на общем оборудовании, и сбои на данном уровне должны быть стопроцентно исключены, так как противном случае это нарушит всю идеологию облачных вычислений.
Получается, что с одной стороны в Cloud Computing решается задача безопасности программного обеспечения, а другой - его сертификации, и в конечном итоге всё это сводится к доверию к подобного рода системам. В качестве примера можно привести те же банкоматы: ведь никого же не волнует то, кем они установлены, к какой сети подключены и кем обслуживаются. Почему? Да потому что работа с установленными на каждом углу банкоматами проста и удобна, а люди, которые ими повседневно пользуются, доверяют электронным банковским системами и не боятся с ними работать. И я уверен, что со временем аналогичный уровень доверия удастся завоевать и облачным технологиям.
Дмитрий Мартынов (слева) и Дмитрий Сотников
Такой вопрос: насколько высока облачность? Иными словами, все ли локальные, скажем так, приложения можно переписать для выполнения в "облаке"?
Д.М.: Далеко не все программы и сценарии могут работать в Cloud'е. Это очевидно. Банковские продукты, разработки в области медицины, государственные системы с грифом секретности - вот некоторые из приложений, переход которых на рельсы Cloud Computing маловероятен. И дело даже не в вопросе защиты конфиденциальной информации, а в технологиях работы с используемыми в упомянутых системах данными и способах управления ими. Подход корпорации Microsoft как раз и заключается в том, чтобы не переводить всех и вся на клауд-системы, а находить и предлагать заказчикам варианты наиболее оптимального и максимально эффективного использования облачных инфраструктур. Если используемое компанией приложение можно запустить в "облаке", то она, в зависимости от экономической выгоды, может либо полностью перевести все модули продукта в Cloud-окружение, либо только те, которые функционируют с пиковой нагрузкой. В ряде случаев подобная гибридная модель позволяет добиться существенной экономии средств.
Узким местом концепции облачных вычислений является жесткая привязка к сетевому каналу. Ведутся ли разработки каких-нибудь решений, обеспечивающих бесперебойное взаимодействие с веб-приложениями в случае временного отсутствия связи с Интернетом?
Д.С.: Технологии оффлайновой работы для клиентской браузерной части сейчас активно развиваются. У "Майкрософта" есть Silverlight, который умеет работать в режиме offline, у Adobe имеется платформа AIR, обеспечивающая функционирование флэш-приложений в случае отсутствия соединения с Интернетом. Многие наверняка слышали о технологии Google Gears, которую можно использовать не только с разработками Google, но и с любыми другими продуктами. Вот три механизма, которые уже сейчас реально работают. Естественно, ведутся разработки и других программных решений.
Д.М.: Кстати, по поводу других программных решений. Некоторые компании, стремясь обеспечить бесперебойный доступ клиентов к Cloud-системам, реализуют интересные решения, функционирующие по схеме peer-to-peer. Если, допустим, у одного сотрудника есть доступ в Интернет, а у другого нет, то их компьютеры сначала друг с другом синхронизируются, а затем подключенная в Сети машина транслирует необходимую информацию в "облако". Такие решения действительно существуют и успешно выполняют свои задачи.
Бытует мнение, что активное развитие Cloud Computing в конечном счете приведет к исчезновению пиратского софта. Что вы думаете по этому поводу?
Д.М.: Интересное предположение. Действительно, работая с "облаком" как с сервисом, по подписке, пиратствовать в клауде очень сложно. Это, примерно, то же самое, что взламывать банкомат и пытаться пройти через его многоуровневые системы защиты. И, на мой взгляд, Cloud Computing снижает уровень пиратства в разы. Это мое личное мнение.
Д.С.: Я думаю, что для производителей программного обеспечения, распространяющих свои продукты на рынках с высоким уровнем пиратства, Cloud Computing является крайне привлекательной бизнес-моделью. Потому что, с одной стороны, изобретательным клиентам в таком случае труднее обмануть разработчика, а с другой - поставщик может устанавливать приемлемые цены на предоставляемые услуги и тем самым сводить потребность в пиратстве на нет.
Практически неограниченный вычислительный потенциал Cloud-систем может приглянуться злоумышленникам для организации, например, botnet-сетей, выполняющих хакерские атаки и прочие нелегальные действия. Какие средства используются в облачных платформах для пресечения деятельности таких изворотливых товарищей?
Д.М.: Да, вы правы: всегда найдутся маргиналы, которые будут использовать хорошую вещь плохим способом, несмотря на заключенные с владельцем дата-центра договоры. Для их выявления можно использовать средства мониторинга, анализировать отзывы облачного сообщества и применять прочий комплекс мер, но однозначного механизма с борьбы с ними не существует. Ведь веб-приложения, созданные для решения "хороших" или "плохих" задач не отличаются с точки зрения архитектуры и поэтому не так-то просто с ходу отследить, какой сервис они представляют.
Д.С.: С точки зрения разработчика могу сказать, что тот же ботнет гораздо проще развертывать на компьютерах конечных пользователей. Плюс нужно учитывать коммерческую составляющую Cloud Computing, предполагающую использование ресурсов системы по подписке. Вряд ли хакеры и прочие нехорошие товарищи захотят вкладывать какие-либо финансы в создание распределённой сети на основе Cloud-инфраструктуры. В этом нет смысла. Поскольку, во-первых, за её поддержание в работоспособном состоянии придется, так или иначе, платить, а во-вторых, рано или поздно нелегальная сеть будет закрыта провайдером.
И последний вопрос: какие решения в области облачных вычислений в настоящий момент предлагает Microsoft?
Д.М.: Для конечных пользователей Microsoft предлагает бесплатные облачные сервисы Live - электронную почту Hotmail, поиск Bing, сетевое хранилище SkyDrive и прочие известные многим сетевым пользователям системы. Для бизнес-партнеров компания предлагает онлайновые сервисы по подписке с соответствующим уровнем гарантий. К ним относятся Exchange, Office Live Meeting и Office Communication Server. Наконец, для разработчиков мы предлагаем доступ к веб-платформе Windows Azure, в состав которой входят все необходимые для создания облачных приложений компоненты, включая сервисы NET, обеспечивающие их совместимость. При этом заказчики после выхода финального релиза системы смогут оплачивать услуги, предоставляемые на базе платформы Windows Azure, по схеме фактического использования ресурсов. То есть платить придется только за те сервисы, которые требуются. Пока система Windows Azure доступна в бета-версии, и оценить её преимущества может любой желающий совершенно бесплатно.