Каждая эпоха имеет свои модные словечки. Индустрия информационных технологий не исключение: в 80-е годы таким словечком было «мультимедиа», в 90-е — «интерактивный», а в последние годы — «web 2.0». Не успевают все привыкнуть к очередному неологизму, как появляется следующий. Последней новинкой стало выражение in-the-cloud («облачный»). Как и сами облака, концепция «облачных» вычислений довольно туманна, но мы попробуем разобраться, что же представляют собой «облачные вычисления».
Если вы когда-нибудь видели рисунок, на которой был схематично изображен интернет, вы, возможно, заметили, что в качестве стандартного символа интернета используется облако. В этом есть определенный смысл: вы не видите, что внутри облака — как не видно и того, какие компьютеры в данный момент находятся «в» интернете. Если небо затянуто облаками, можно сделать вывод, что пойдет дождь, и при этом не надо знать, что происходит внутри облака. Что касается интернет-«облака», необходимо знать только то, что оно есть и что к нему можно подключиться. А что там внутри происходит, точно понимать не обязательно.
«Облачные вычисления», которые являются смежным и близким понятием с распределенными вычислениями и виртуализацией, функционируют по следующему сценарию. Конечный пользователь обладает устройством, имеющим соединение с Интернетом, – например, мобильным телефоном или ноутбуком. Из программного обеспечения требуется браузер с поддержкой используемых в сервисе функций, таких, как javascript, Flash или Silverlight. Требования к скорости интернет соединения опять же зависят от разработчиков, но чаще всего речь идет о широкополосном доступе на скоростях не менее 128 кбит/с.
Подобные вычисления организуются следующим образом: имеется какое-то приложение, которое работает на мощностях удаленного сервера в условиях некоторой инфраструктуры (Platform as a Service, PaaS — платформа как сервис»). Пользователю остается только подключиться к системе, авторизоваться и начать работу.
Рис. 1. Соединение с Интернетом через портативные устройства
Несмотря на то что мэйнфреймы с тонкими клиентами могут рассматриваться как предвестники cloud computing, между этими двумя концепциями есть существенная разница. Компании, внедряющей технологию тонких клиентов, обычно приходится покупать собственный сервер, обеспечивать его размещение, электропитание и т.п. А в случае cloud computing все оборудование приобретает провайдер сервиса in-the-cloud, сдающий в аренду свободные мощности тем, кто в них нуждается. Интересно, что клиенты арендуют не весь сервер, а только определенное количество памяти или процессорных циклов. Клиенту не нужно знать, размещено ли все на одном компьютере или распределено на нескольких. Провайдер даже может заменить компьютер, на котором выполняется используемое клиентом программное обеспечение, благодаря технологиям, специально разработанным для подобной «горячей» замены без ощутимого влияния на работу клиента. Вот это и есть суть «облака»: клиенту не нужно беспокоиться о деталях; если требуется больше памяти или мощности процессора, достаточно щелкнуть мышью по соответствующей кнопке, чтобы запросить нужный сервис.
А теперь немного подробнее об «облаке».
Слово «облако» (cloud) использовалось в 1990-х годах для метафорического обозначения Интернета: тогда Глобальная сеть представлялась чем-то загадочным, неопределенным в своих пространственных границах, неотличимым от своих внутренних элементов и быстро изменяющимся. Зафиксированное в статье под заголовком «ORGs for Scalable, Robust, Privacy- Friendly Client Cloud Computing» определение «облачных вычислений» гласит: «Это тот случай, когда информация постоянно хранится на серверах в Сети и временно сохраняется на стороне клиента — например, на настольных компьютерах, планшетах, ноутбуках, мини-компьютерах и так далее». Идея «облачных вычислений» была сформулирована еще в 1960 году Джоном Мак- Карти, специалистом по вычислительной технике, известным своими публикациями по теории искусственного интеллекта. Он высказал предположение, что когда-нибудь вычисления будут организованы по принципу коммунальных услуг, то есть будут предоставляться за отдельную плату. В 1993 году термин «облако» был впервые использован в коммерческих целях для описания крупных сетей, задействующих технологию высокоскоростной одновременной передачи трафика всех видов (данные, голос и видео) в сетях с коммутируемыми каналами. В них появлялось промежуточное виртуальное соединение между отправителем и получателем, упрощающее процесс передачи информации [1].
В начале XXI в термин «облачные вычисления» стал употребляться применительно к возникшему тогда направлению SaaS (Software as a Service — «программное обеспечение как услуга»). Первопроходцем в этом отношении стал интернет-магазин Amazon. А в 2002 г. были созданы веб-сервисы Amazon. Они представляли собой то, что спустя пять лет стало называться «облаком», — набор сервисов, расположенных на удаленных серверах, к которым пользователь может получить доступ через веб-браузер из любого места, где есть Интернет [1].
Модели обслуживания облачных вычислений представляют такие службы как:
- программное обеспечение как услуга (англ. SaaS or Software-as-a-Service). Потребителю предоставляется возможность использования приложений провайдера, работающих в облачной инфраструктуре. Приложения доступны из различных клиентских устройств или через интерфейс "тонкого клиента", такие как веб-браузер (например, веб-почта) или интерфейс программы. Контроль и управление основной физической и виртуальной инфраструктурой облака в том числе сети, серверов, операционных систем, хранения, или даже индивидуальных возможностей приложения (за исключением ограниченного набора пользовательских настроек конфигурации приложения) осуществляется облачным провайдером;
- платформа как услуга (англ. PaaS or Platform-as-a-Service). Потребителю предоставляется возможность использования облачной инфраструктуры для размещения и последующей разработки новых или существующих (собственных или приобретенных приложений) созданных с помощью языков программирования, библиотек, служб и средств предоставляемых облачным провайдером. Контроль и управление основной физической и виртуальной инфраструктурой облака в том числе сети, серверов, операционных систем, хранения осуществляется облачным провайдером, за исключением разработанных или установленных приложений, а также по возможности параметров конфигурации среды (платформы);
- инфраструктура как услуга (англ. IaaS or Infrastructure-as-a-Service). Потребителю предоставляется возможность использования облачной инфраструктуры для самостоятельного управления ресурсами обработки, хранения, сети и другими фундаментальными вычислительными ресурсами, например потребитель может устанавливать и запускать произвольное программное обеспечение, которое может включать в себя операционные системы и приложения. Потребитель может контролировать операционные системы, виртуальные системы хранения данных и установленные приложения, а также ограниченный контроль набора доступных сервисов (например, сетевой файрвол, DNS или мониторинг). Контроль и управление основной физической и виртуальной инфраструктурой облака в том числе сети, серверов, типов используемых операционных систем, систем хранения осуществляется облачным провайдером. [2].
Что же такое облачные среды?
Облачная модель вычислений подразумевает предоставление ИТ ресурсов как стандартизированных сервисов, с возможностью динамического масштабирования объема потребляемых ресурсов. Облачные среды должны обладать следующими атрибутами:
- сервисной моделью, определяющей тип и характеристики сервисов, которые облако будет предоставлять потребителю;
- высокой автоматизацией процесса предоставления сервиса по запросу потребителя и возможностью самообслуживания потребителя в рамках предоставляемого сервиса;
- возможностью динамического масштабирования объема предоставляемой услуги, например, увеличения количества процессорной мощности, предоставляемой потребителю для обработки пиковых нагрузок;
- эластичностью и разделяемостью, то есть уметь перераспределять имеющиеся ресурсы между потребителями и давать возможность прозрачного для потребителей расширения пула доступных ресурсов;
- возможностью учета потребления ресурсов.
Частное облако – это реализация модели облачных вычислений на ресурсах, имеющихся в распоряжении у вашей компании, для обслуживания внутренних потребителей. При этом вычислительные ресурсы: серверы, сети, устройства хранения, базовая программная инфраструктура, интегрируются в частное облако с помощью специализированного программного обеспечения, которое позволяет реализовать функциональные атрибуты облака: сервисную модель, автоматизированное обслуживание потребителей, масштабируемость и т.д. Сервисная модель частного облака зависит от того, кто является внутренними потребителями облака, и какие именно ИТ-сервисы им требуются. В зависимости от структуры предприятия такими внутренними потребителями могут стать различные подразделения компании:
- дочерние компании в холдинге, получающие приложения (корпоративную почту, внутренние порталы и т.д.) из ЦОД, обслуживаемого сервисным подразделением;
- отделы департамента ИТ, отвечающие за бизнес-приложения, получающие инфраструктуру как сервис из облака, обслуживаемого инфраструктурной группой.
Как видно из приведенных примеров, типы ИТ-сервисов могут быть разными: от готовых приложений до инфраструктуры. В любом случае при использовании облака открываются новые возможности внутри компании:
- за счет автоматизации накладные расходы на оказание ИТ-сервиса резко падают, снижается время ожидания предоставления ресурсов;
- облако способствует эффективному распределению ресурсов внутри организации, динамически перераспределяя нагрузку между физическими системами центра обработки данных;
- появляется возможность отслеживать реальное потребление ИТ-ресурсов внутри компании и распределять затраты на поддержку и расширение базовой инфраструктуры между потребителями на основании бизнес-ценности. [3].
Также при добавлении возможности переноса нагрузок в публичное облако появляется возможность гибкого распределения вложений на ИТ-обслуживание предприятия между капитальными – расширением собственного облака для поддержки постоянных критических сервисов, и операционными, направляемыми на оплату ресурсов публичного облака, использованных для размещения временных или других специфических нагрузок.
Организации, заинтересованные в использовании услуг, предоставляемых поставщиками услуг размещения внешних облаков, требуют как можно более своевременного предоставления таких услуг. Поставщики услуг могут использовать преимущества проверенной технологической платформы, рекомендаций и опыта Майкрософт, для построения собственных предложений по размещению внешних облаков [4].
Используя эту гибкую и хорошо знакомую платформу, поставщики услуг размещения могут расширить диапазон предоставляемых услуг, включая, в том числе, следующие сценарии:
- среды тестирования и разработки без дополнительных капиталовложений;
- динамическое увеличение мощности, что позволяет ИТ - отделу быстро реагировать на изменения потребностей бизнеса;
- экономичное решение аварийного восстановления с использованием сред аварийного восстановления внешнего размещения.
Преимущества и недостатки «облаков».
Основное преимущество «облачных вычислений» состоит в снижении эксплуатационных затрат на аппаратное и программное обеспечение. Расходы на электроэнергию, площади под серверы, работу системных администраторов и прочее несет провайдер «облака», а за счет концентрации в одном месте вычислительных ресурсов, распространяющихся на множество клиентов, его издержки в расчете на одно рабочее место оказываются значительно ниже. Аналитики обращают внимание на тот факт, что «облака» являются самоокупаемыми, если ими пользуются 24 ч, семь дней в неделю, 365 дней в году — ни в одной небольшой или средней компании сервер не будет выдавать 100% своих возможностей, простаивая в выходные и ночью. Кроме того, «облака» по мощности уже сопоставимы с некоторыми суперкомпьютерами: естественно, что при объединении нескольких тысяч высокопроизводительных машин вычислительная мощность этого «союза» будет высокой [5].
Тем не менее помимо людей, оптимистично смотрящих в будущее «облачных вычислений», встречаются скептики и пессимисты. К мелким производителям аппаратного и программного обеспечения, которые рискуют потерять свой бизнес из-за перехода на «облачную» модель (например, вендоры устройств хранения и архивации данных), присоединяются некоторые эксперты по информационной безопасности. Последние отмечают, что если пользователь соглашается передать свои данные на сервер компании, обслуживающей «облако», значит, он согласился с ними, условно говоря, расстаться. Естественно, что некоторая статистическая информация также может быть «слита» с подобных сайтов, причем с согласия самого пользователя (его почту могут «подписать» на получение рекламных предложений партнеров- спонсоров проекта; отчеты об ошибках, передаваемые в администрацию сервиса, как правило, содержат некоторые конфиденциальные данные).
Еще одно распространенное явление — предугадывание предпочтительного контента для пользователя сервиса на основе уже имеющихся данных (так называемый «скрытый веб», когда, например, в интернет-магазине вам предлагают купить схожие по теме и содержанию книги или фильмы). [6]. Естественно, проблему «облачных вычислений» представляет также надежность оборудования и его доступность. Предполагается, что разработчики сервиса следят за ним и не допускают критических или аварийных ситуаций, но они вправе, например, осуществлять профилактические работы в удобное для них время.
Таким образом, рынок налицо. Этот рынок будет быстро расти, и задача сервис-провайдеров — предложить оборудование, отвечающее потребностям клиентов. Размещение этих компьютеров будет одной из наиболее трудных задач: когда появится значительный спрос на услуги in-the-cloud, будет требоваться все больше серверных центров. Такие центры должны быть географически расположены поблизости от клиентов, поскольку каждый лишний километр увеличивает задержку в обмене данными между клиентским компьютером и сервером. Несмотря на то что задержка эта минимальна, для таких пользователей, как, например, геймеры, которым необходима высокая производительность, даже задержка в 200 миллисекунд неприемлема, поскольку она не позволяет насладиться игрой в реальном времени. Когда у пользователей — частных лиц появится интерес к in-the-cloud-сервисам, провайдерам придется приобретать много дополнительного оборудования, чтобы удовлетворить выросший спрос. В ближайшие лет десять серверные центры появятся в каждом городе, даже небольшом. Возможно, свои центры будут даже в многоквартирных домах, где живут больше ста человек. [7].
Несмотря на то что сейчас провайдеры in-the-cloud-сервисов ориентируются прежде всего на бизнес-клиентов, успешность этой концепции, скорее всего, будет зависеть от индивидуальных пользователей вследствие их многочисленности. У компаний есть собственные специалисты по информационным технологиям, а для отдельного человека пользование компьютером может быть сопряжено со значительным стрессом. Сначала надо приобрести компьютер. Эта задача лишь кажется простой: что больше соответствует вашим потребностям — компактный и мобильный ноутбук или настольный компьютер, который будет дешевле и почти наверняка производительнее? В мире cloud computing можно совместить портативность с производительностью, купив дешевый ноутбук, который вы будете использовать как тонкий клиент (при желании его можно присоединить к монитору и клавиатуре) меньше чем за 300 евро. Затем достаточно подключить его к провайдеру сервисов in-the-cloud и получить такую производительность и объем памяти, какие пожелаете (или сможете себе позволить). Два года спустя вы по-прежнему сможете пользоваться тем же тонким клиентом, в то время как обычный ноутбук к этому времени уже устарел бы и нуждался бы в замене. Ведь в данном случае производительность зависит не от вашего компьютера, а от сервис-провайдера. [8].
Проблемы владельцев компьютеров не ограничиваются лишь аппаратной частью. Обновление операционной системы и приложений, а также установка патчей для устранения уязвимостей бывает непростой задачей. Cloud computing решает все эти проблемы, уменьшая стоимость владения домашним компьютером и обеспечивая при этом более высокий уровень безопасности и надежности.
Cloud computing также пойдет на пользу индустрии создания контента. Ни один из использовавшихся до сих пор методов защиты от незаконного копирования музыки и кино не
лишен недостатков. Случается, что защищенные от копирования компакт-диски не проигрываются некоторыми CD-плеерами, а усилия компании Sony по защите контента привели к скандалу и отказу от используемой технологии. Все больше магазинов, торгующих музыкой в формате MP3, отказываются от материала, защищенного системой DRM (Digital Rights Management) и предлагают не защищенные от копирования музыкальные файлы. Однако cloud computing дает системе DRM новый шанс: производители контента получают возможность напрямую предлагать потребителю фильмы, игры и музыку. Подобный контент будет рассчитан на то, чтобы проигрываться внутри системы cloud computing, и для незаконного копирования музыки и фильмов, доставляемых пользователю таким образом, потребуется больше времени и усилий. В конечном счете, все это выльется в уменьшение числа незаконных копий и увеличение прибыли производителей контента.
Преимущества cloud computing очевидны, но риск также присутствует. Почти ни дня не проходит без сообщений об утечке или потере данных. Использование in-the-cloud-сервисов требует беспрецедентно высокого уровня доверия к провайдеру. Найдется ли компания, которой вы доверяете настолько, что предоставите ей полный доступ не только к своей электронной почте, но и к вашим личным документам, банковским реквизитам, паролям, чатлогам и семейным фотографиям? Даже если компании вы доверяете, нет никакой гарантии, что ваши данные не попадут не в те руки. Конечно, кража данных — проблема, затрагивающая не только cloud computing, но дело в том, что в данном случае провайдеры будут иметь доступ ко всем вашим данным, а не только к небольшой их части. Поэтому если утечка данных действительно произойдет, это может иметь для вас далеко идущие последствия.
Может ли риск вытеснить cloud computing из бизнеса? Это представляется чрезвычайно маловероятным, поскольку cloud computing — сервис, удобный пользователям и выгодный провайдерам. В будущем полный отказ от использования in-the-cloud-сервисов будет способен вызвать изоляцию компании (и невозможность вести дела) в той же степени, что отказ от использования электронной почты в наши дни. Создание нового законодательства и строгих правил работы для провайдеров, а также технологий, делающих (почти) невозможной кражу пользовательских данных для сотрудников провайдера — гораздо более продуктивный подход, чем бойкот этой технологии. Сейчас не существует никаких ограничений для компаний, желающих выйти на рынок с предложением in-the-cloud-услуг. Однако через десять лет картина будет совершенно иная. Провайдеры, желающие предоставлять подобные услуги, будут вынуждены придерживаться строгих стандартов.
ЛИТЕРАТУРА
- Облачные вычисления витают в облаках. Автор: Михаил Демидов.Источник: компьютерный журнал CHIP, февраль 2010.
- http://ru.wikipedia.org/wiki/Облачные_вычисления
- «Cisco, EMC и VMware будут совместно продвигать частные «облачные» инфраструктуры», 05 ноября 2009, http://corp.cnews.ru/news/line/index.shtml?2009/11/05/368581.
- «Частные облачные вычисления обретают популярность», 10-16 марта 2009, http://www.pcweek.ru /themes/detail.php?ID=116739.
- «Кто есть кто в облаках», http://m.habrahabr.ru/post/73564/.
- ««Облака» принесут $44,2 млрд в 2013 г.», 13 октября 2009, http://www.cnews.ru /news/top/index.shtml?2009/10/13/365448.
- «Gartner: через пару лет каждая пятая компания откажется от ИТ-активов», 14 января 2010, http://business.compulenta.ru/495018/.
- Магнус Калькуль «Ясное небо до самого горизонта: «облачные» вычисления и безопасность «из облака», 24 апр 2009.
- Мэйнфрейм - большая универсальная ЭВМ — высокопроизводительный компьютер со значительным объёмом оперативной и внешней памяти, предназначенный для организации централизованных хранилищ данных большой ёмкости и выполнения интенсивных вычислительных работ.
- Тонкий клиент (англ. thin client) — компьютер или программа-клиент в сетях с клиент-серверной или терминальной архитектурой, который переносит все или большую часть задач по обработке информации на сервер. Примером тонкого клиента может служить компьютер с браузером, использующийся для работы с веб-приложениями.
- Интернет-прова́йдер (иногда просто Провайдер, от англ. Internet Service Provider, "поставщик Интернет- услуги") — организация, предоставляющая услуги доступа к сети Интернет и иные связанные с Интернетом услуги.
- SaaS (Software-as-a-Service) - программное обеспечение как услуга
- PaaS (Platform-as-a-Service) - платформа как услуга
- IaaS (Infrastructure-as-a-Service) - инфраструктура как услуга