Сервисы облачных вычислений

Лекция №__

Сервисы облачных вычислений

 

 

Развитие программного обеспечения (soft) неразрывно связано с развитием  самих электронно-вычеслительных машин (hard). Те программы, которыми мы привыкли пользоваться ежедневно, еще лет 10 назад  казались бы фантастикой. Все мы знаем, что для того чтобы красочная  игра “пошла” на нашем компьютере, нам надо его “апгрейдить”, докупив  оперативной памяти и поставив мощную видеокарту. Все это очень затратно и хлопотно.

Помимо непосредственно  харда и софта, в ИТ-инфраструктуре в последние годы наметился еще  один существенный фактор - скорость, надежность и цена передачи информации. Повсеместное развитие технологий мобильной связи, беспроводной передачи данных позволили  существенно снизисть стомость передачи данных при одновременном увеличении скорости.

Совокупность развития технологий программного и аппаратного обеспечения  с развитием сети Интернет привело  к забавному парадоксу - программное  обеспечение в привычном понимании (коробки с дисками) может в  ближайшем времени исчезнуть, прервав  симбиоз софта с хардом. Как  такое может быть осуществимо? Ответ  прост - облачные вычисления.

 

Облачные вычисленния  позовляют создавать онлайновые приложения, доступ к которым обеспечивается посредством обычного интернет-браузера. Нет никакой особой разницы, развлекательные ли это сервисы, или специализированные бизнес-приложения, суть одна: пользователю совершенно не нужно обладать определенным производительным "железом" для запуска специфического программного приложения, ему достаточно лишь обратиться через интернет к соответствующему провайдеру и попросту оплатить услугу, в идеальном случае - получить ее бесплатно, с просмотром рекламы от спонсоров и т.д.

 

Облачные вычисления представляют собой динамически масштабируемый способ доступа к внешним вычислительным ресурсам в виде сервиса, предоставляемого посредством Интернета, при этом пользователю не требуется никаких  особых знаний об инфраструктуре "облака" или навыков управления этой "облачной" технологией.

 

В информатике — это модель обеспечения повсеместного и удобного сетевого доступа по требованию к общему набору конфигурируемых вычислительных ресурсов (например, сетям передачи данных, серверам, устройствам хранения данных, приложениям и сервисам — как вместе, так и по отдельности), которые могут быть оперативно предоставлены и освобождены с минимальными эксплуатационными затратами и/или обращениями к провайдеру.

 

Под облаком следует понимать не сам Интернет, а весь тот набор аппаратного и программного обеспечения, который обеспечивает обработку и исполнение клиентских заявок "с той стороны". Если не мудрить с определениями и вглядеться в суть, даже самое простое действие посредством Интернета – запрос страницы сайта, в какой-то степени представляет собой пример облачного вычисления. Интернет, по сути, и возник именно для того, чтобы предоставлять удаленный доступ к различным вычислительным ресурсам.

 

Впервые об идее совместного  использования вычислительных ресурсов для решения вычислительных задач  выдвигались еще в 1960-х годах, однако технологии были еще очень  далеки от реализации этих идей.

Возникновение англоязычного  термина (Cloud computing) начало активно обсуждаться  в 2008 году в одной из тематических интернет-конференций. В результате дискуссии выдвигались различные  версии, по одной из которых термин сloud был впервые использован главой компании Google Эриком Шмидтом в своем  выступлении и получил распространение  в средствах массовой информации. Другая популярная версия предполагает, что термин cloud computing стал широко употребляться  в США с 2005 года после запуска  компанией Amazon.com проекта Elastic Compute Cloud и  широко распространился в бизнесе, среди поставщиков информационных технологий и в научно-исследовательской  среде. Термин «облако» используется как  метафора, основанная на изображении  Интернета на диаграмме компьютерной сети, или как образ сложной  инфраструктуры, за которой скрываются все технические детали.

 

Национальным институтом стандартов и технологий США зафиксированы  следующие обязательные характеристики облачных вычислений:

  • Самообслуживание по требованию (англ. self service on demand), потребитель самостоятельно определяет и изменяет вычислительные потребности, такие как серверное время, скорости доступа и обработки данных, объем хранимых данных без взаимодействия с представителем поставщика услуг;
  • Универсальный доступ по сети, услуги доступны потребителям по сети передачи данных вне зависимости от используемого терминального устройства;
  • Объединение ресурсов (англ. resource pooling), поставщик услуг объединяет ресурсы для обслуживания большого числа потребителей в единый пул для динамического перераспределения мощностей между потребителями в условиях постоянного изменения спроса на мощности; при этом потребители контролируют только основные параметры услуги (например, объем данных, скорость доступа), но фактическое распределение ресурсов, предоставляемых потребителю, осуществляет поставщик (в некоторых случаях потребители все-таки могут управлять некоторыми физическими параметрами перераспределения, например, указывать желаемый центр обработки данных из соображений географической близости);
  • Эластичность, услуги могут быть предоставлены, расширены, сужены в любой момент времени, без дополнительных издержек на взаимодействие с поставщиком, как правило, в автоматическом режиме;
  • Учет потребления, поставщик услуг автоматически исчисляет потребленные ресурсы на определенном уровне абстракции (например, объем хранимых данных, пропускная способность, количество пользователей, количество транзакций), и на основе этих данных оценивает объем предоставленных потребителям услуг.

С точки зрения поставщика, благодаря объединению ресурсов и непостоянному характеру потребления  со стороны потребителей, облачные вычисления позволяют экономить  на масштабах, используя меньшие  аппаратные ресурсы, чем требовались  бы при выделенных аппаратных мощностях  для каждого потребителя, а за счет автоматизации процедур модификации  выделения ресурсов существенно  снижаются затраты на абонентское  обслуживание.

С точки зрения потребителя, эти характеристики позволяют получить услуги с высоким уровнем доступности  и низкими рисками неработоспособности, обеспечить быстрое масштабирование  вычислительной системы благодаря эластичности без необходимости создания, обслуживания и модернизации собственной аппаратной инфраструктуры.

Удобство и универсальность  доступа обеспечивается широкой  доступностью услуг и поддержкой различного класса терминальных устройств (персональных компьютеров, мобильных  телефонов, интернет-планшетов).

 

Выделяют четыре модели развертывания  облаков:

Частное облако (англ. private cloud) — инфраструктура, предназначенная для использования одной организацией, включающей несколько потребителей (например, подразделений одной организации), возможно также клиентами и подрядчиками данной организации. Частное облако может находиться в собственности, управлении и эксплуатации как самой организации, так и третьей стороны (или какой-либо их комбинации), и оно может физически существовать как внутри, так и вне юрисдикции владельца.

Публичное облако (англ. public cloud) — инфраструктура, предназначенная для свободного использования широкой публикой. Публичное облако может находиться в собственности, управлении и эксплуатации коммерческих, научных и правительственных организаций (или какой-либо их комбинации). Публичное облако физически существует в юрисдикции владельца — поставщика услуг.

Гибридное облако (англ. hybrid cloud) — это комбинация из двух или более различных облачных инфраструктур (частных, публичных или общественных), остающихся уникальными объектами, но связанных между собой стандартизованными или частными технологиями передачи данных и приложений (например, кратковременное использование ресурсов публичных облаков для балансировки нагрузки между облаками).

Общественное  облако (англ. community cloud) — вид инфраструктуры, предназначенный для использования конкретным сообществом потребителей из организаций, имеющих общие задачи (например, миссии, требований безопасности, политики, и соответствия различным требованиям). Общественное облако может находиться в кооперативной (совместной) собственности, управлении и эксплуатации одной или более из организаций сообщества или третьей стороны (или какой-либо их комбинации), и оно может физически существовать как внутри, так и вне юрисдикции владельца.

 

Выделяют следующие модели обслуживания в облачных вычислениях.

1. Инфраструктура  как услуга (IaaS).

Это базовое предложение, по сути просто серверы, развернутые  “в облаке”, хранилище данных, или  полоса частот. Клиентами IaaS часто становятся ИТ-компании - обычно обладающие высокой  квалификацией в области ИТ. Им нужны вычислительные мощности, но они не хотят заниматься их установкой и обслуживанием.

2. Платформа как  услуга (PaaS).

Клиенты PaaS используют облачную платформу для разработки новых  приложений или создания ПО, итегрируемого  со старым. В среде PaaS должны быть развернуты инструменты разработки, чтобы клиент сразу мог приступить к работе. После того, как клиент написал  ПО, поставщик PaaS размещает его и  обеспечивает к нему широкий доступ. В настоящий момент PaaS - самый  маленький сегмет рынка облачных вычислений. К услуге PaaS нередко  прибегают крупные компании, которые  хотят арендовать часть инфрастуктуры.

3. Программное  обеспечение как услуга (SaaS).

Самая крупная и разветвленная  категория. По сути это приложение или  набор приложений, размещенных “в облаке”, а не на жестком диске  пользователя или в ЦОД компании. Сегодня “в облаке” можно найти  самые разные приложения совместного  доступа - электронные таблицы, текстовые  редакторы и многое другое. Например, Google Apps или Microsoft Office 365.

В модели SaaS:

  • приложение приспособлено для удаленного использования;
  • одним приложением пользуется несколько клиентов (приложение коммунально);
  • оплата взымается либо в виде ежемесячной абонентской платы, либо на основе объема операций;
  • техническая поддержка приложения включена в оплату;
  • модернизация и обновление приложения происходит оперативно и прозрачно для клиентов.

В рамках модели SaaS заказчики  платят не за владение программным  обеспечением как таковым, а за его  аренду (то есть за его использование  через веб-интерфейс). Таким образом, в отличие от классической схемы  лицензирования ПО, заказчик несет  сравнительно небольшие периодические  затраты, и ему не требуется инвестировать  значительные средства в приобретение ПО и аппаратной платформы для  его развертывания, а затем поддерживать его работоспособность.

Программное обеспечение  по требованию обладает следующими ключевыми  признаками:

  • доступ к программному обеспечению, разработанному в соответствии с моделью ПО как услуга, предоставляется удаленно по сетевым каналам и как правило через веб-интерфейс, кроме того, могут использоваться тонкие клиенты и терминальный доступ;
  • программное обеспечение развертывается в центре обработки данных в виде единого программного ядра, с которым работают все заказчики;
  • программное обеспечение предоставляется на условиях уплаты периодических арендных платежей;
  • обслуживание и обновление программного обеспечения выполняется централизованно на стороне поставщика приложения, предоставляемого как услуга (SaaS);
  • стоимость технической поддержки обычно включается в арендную плату.

Ключевым фактором, объясняющим  экономическую целесообразность SaaS, является «эффект масштаба» —  провайдер SaaS обслуживает единое программное  ядро, которым пользуются все клиенты, и потому тратит меньшее количество ресурсов по сравнению с управлением  отдельными копиями программного обеспечения  для каждого заказчика. Кроме  того, использование единого программного ядра позволяет планировать вычислительные мощности и уменьшает проблему пиковых  нагрузок для отдельных заказчиков. Все это позволяет поставщикам SaaS решений существенно снизить  стоимость обслуживания ПО. В конечном счете, периодическая стоимость  услуг для конечного заказчика  становится ниже издержек, возникающих  при использовании классической модели лицензирования.

Другим ключевым фактором является уровень обслуживания SaaS. Провайдер SaaS способен предложить уровень  обслуживания и поддержки ПО в  работоспособном состоянии, недоступный  для внутренних IT-отделов компаний. Это особенно ярко проявляется в  случае использования провайдером  контракта SLA.

На данный момент можно  выделить несколько основных факторов, стимулирующих использование программного обеспечения по требованию заказчиками  и развитие данных продуктов разработчиками.

Положительные факторы SaaS для  заказчиков

  • Отсутствие необходимости установки ПО на рабочих местах пользователей — доступ к ПО осуществляется через обычный браузер;
  • Радикальное сокращение затрат на развертывание системы в организации. Это расходы на аренду помещения, организацию дата-центра, оплату труда сотрудников и т. д.;
  • Сокращение затрат на техническую поддержку и обновление развернутых систем (вплоть до их полного отсутствия);
  • Быстрота внедрения, обусловленная отсутствием затрат времени на развертывание системы;
  • Понятный интерфейс — большинство сотрудников уже привыкли к использованию веб-сервисов;
  • Ясность и предсказуемость платежей, защита инвестиций;
  • Мультиплатформенность;
  • Возможность получить более высокий уровень обслуживания ПО.

Положительные факторы SaaS для  разработчиков

  • Рост популярности веб-сервисов для конечных пользователей;
  • Развитие веб-технологий, большие функциональные возможности веб-приложений и простота их реализации;
  • Быстрые процессы внедрения и сравнительно низкие затраты ресурсов на обслуживание конкретного клиента;
  • Легкое проникновение на глобальные рынки;
  • Отсутствие проблем с нелицензионным распространением ПО;
  • В отличие от классической модели, заказчик SaaS привязывается к разработчику — он не может отказаться от услуг разработчика и продолжать использовать систему. Таким образом, обеспечивается защита инвестиций разработчика в процесс продаж;
  • В долгосрочном периоде доходы от SaaS могут оказаться выше прибыли, полученной от продажи лицензий и оказания технической поддержки (даже с учетом расходов на хостинг и управление приложениями).

 

Все три модели обслуживания объединяют несколько общих экономических  черт.

Во-первых, клиенты не покупают, а арендуют ИТ, тем самым переводя соответствующие затраты с капитальных  на текущие.

Во-вторых, поставщики облачных вычислений выполняют всю рутинную работу - поддержку, администрирование, планирование мощностей, устранение неполадок, резервное копирование и т.п.

В-третьих, клиенту обычно несложно расширить свои возможности: получить больше  места для хранения от поставщика IaaS, договориться о реализации дополнительных проектов с поставщиком PaaS или увеличить число пользователей  приложения SaaS.

 

Зачастую можно услышать такие высказывания, что в облачных вычислениях нет ничего такого, что  принципиально невозможно было бы выполнять  в собственном ИТ-центре.Теоретически это так. Если вы богатейшая корпорация, то вам по силам закупить или разработать  свое программное обеспечение, установить его на своих серверах и нанять лучших специалистов для обслуживания этого хозяйства. Они будут адаптировать написанное ПО для работы в сети, с любого устройства, займутся разграничением прав пользователей и т.п.

Гиганская корпорация все  это может, но лишь в теории. На практике обязательно какой-нибудь компонент  всегда отстает от потребностей. На решение каждой из упомянутых задач  уходит масса времени иденег, особенно ели они решаются на базе старого  ПО.

Согласно данным Microsoft, в  среднем на разработку новых приложений выделяется только 11% бюджета на ИТ. Все остальное тратится на обслуживание и инфраструктуру.

В этой связи, с экономической  точки зрения, перевод ИТ-ресурсов компании в “облако” является однозначно выгодным.

 

Преимущества  использования облачных вычислений.

1. Повышается производительность  каждого сотрудника.

Во многих компаниях, сотрудники которых не сидят целыми днями  в одном офисе, нуждаются в  гибкой системе обмена документацией. Ранее проблему обмена документами  решала или электронная почта  или корпоративный FTP-сервер, обслуживаемый  отделом ИТ. Это создавало некоторые  неудобства, например при желании  сотрудника “поделиться” документом с коллегой. Облачные вычисления позволяют  храниить документы в облаке, а  доступ к ним предоставлять сотрудникам, при этом гибко настраивая права  доступа. Сам сотрудник может  распоряжаться доступом к своим  файлам, а работать с ними он может  с любого утсройства, подключенного  к сети Интернет.

2. Новые возможности  совместной работы.

Легкость совместной работы - один из главных факторов успеха облачных вычислений. Для реализации систем совместной работы силами компании требуется  огромные финансовые вливания и высококвалифицированные  ИТ-кадры. В этом разрезе облачные вычисления могут использоваться для  совместой работой над документами,  обсуждения производственных вопросов, решения групповых задач и  т.п.

3. Продуктивный  анализ данных.

Современные компании накапливают  огромные массивы данных, и для  их анализа необходимы вычислительные мощности и алгоритмы, которые, как  правило, входят в пакет облачных услуг.

4. Разработка и  хостинг приложений.

В “дооблачные” времена  разработчикам обычно приходилось  докупать собственные серверы, а  потом тратить время на их настройку  и обслуживание. Эта рутина отвлекала  от “настоящей” работы - написания  качественного программного кода.

Поставщики облачных услуг  не только позволяют размещать у  себя чужие приложения, но и предлагают собственное программное обсечпечение.

 

Благодаря этим преимуществам, компании могут наращивать мощность своей информационной среды, оптимизировать доступ к установленным компонентам  и ускорять развертывание новых. Облачные вычисления избавляют от излишней административной работы. Они не знают  границ и снимают барьеры между  подразделениями, устройствами и регионами. Но не смотря на множество положительных  качеств, концепция использования облачных вычислений в бизнесе с трудом пробивает себе дорогу.

По данным опроса Forrester за 2009 год, 37% крупных компаний вовсе  не интересовались ОВ. Еще 39% высказывали  теоретический интерес, но не планировали  конкретных шагов. Другое исследование, проведенное в 2011 году InformationWeek, показало, что только 29% компаний изучали вопрос о потенциальном влиянии ОВ на архитектуру своего доступа к  интернету. По прогнозам Gartner (организация, специализирующаяся на исследованиях  в области ИТ-рынков), к 2015 году на ОВ будет приходится менее 5% общемировых  затрат на ИТ.

Во многом медленный переход  на ОВ объясняется тем, что для  этого требуется серьезная подготовительная работа по консолидации и стандартизации устаревышей ИТ-инфраструктуры. За годы работы в организациях накапливается  масса устаревшего разнородного оборудования, операционных систем и  приложений. Но сколько бы не приноисло  неудобств такое положение дел, лишь очень немногие согласятся поступиться  своей долей этого старья, чтобы  их компания могла перейти в “облако”.

 

Аргументы против использования  сервисов облачных вычислений.

1. Слишком дорого.

Результаты исследований вступают в противоречие друг с другом. Так, из анализа McKinsey, выполненного в 2009 году для неназванной компании, вытекает, что перевод всего ее ЦОД в  “облако” повысил бы расходы на 144%. Но уже на следующий год в  отчете Microsoft был сделан обратный вывод: любому предприятию будет только выгодно разместить свои виртуальные  серверы “в облаке”.

Но при переходе (не переходе) на “облака” делать акцент на затратах неверно по двум причинам.

Во-первых, бюджет на ИТ в  большинстве компаний сравнительно невелик, так что даже существенное его увеличение практически не изменит  общую картину. По оценке Gartner, в 2009 году в доходах компаний из списка S&P 500 доля расходов на ИТ в среднем  составляла всего 3,2%.

Во-вторых, с течением времени  ОВ будут становиться все дешевле  и дешевле. Благодаря огромным объемам  закупок поставщики облачных услуг  получают хорошие скидки на оборудование, трафик, и электроэнергию. И так  как они все время совершают  новые приобретения, в их пользу играет неизбежное удешевление вычислительных ресурсов. В совокупности эти факторы  обеспечат постоянное снижение затрат на облачные сервисы и их стоимости  для клиентов. Например, поставщики облачных услуг Amazon снижали цены около 12 раз за последние три года, несмотря на отстутствие реальной конкуренции  в их секторе рынка.

2. Ненадежно.

Многие считают, что ОВ заведомо уступают хорошо отлаженной локальной инфраструктуре по надежности, приводя в аргумент вопрос контроля. За своими серверами компания всегда сможет присмотреть, но как уследить за чужим “облаком”? Например, в апреле 2011 года значительная часть серверов Amazon Web Services не работала целых три дня. Это стало тяжелым ударом для многих клиентов сервиса. Одако тот же Amazon всегда предупреждает своих клиентов о потенциальных проблемах и советует заранее к ним подготовиться - подготовив резервные мощности в случае нештатных ситуаций. Облачные сервисы накапливают все больше резервных мощностей, и хотя провалы периодически случаются, общая надежность ОВ находится на исключительно высоком уровне, недостижимом для большинства локальных инфраструктур. Так, служба Google Gmail в 2010 году была доступна 99,984% времени. Иначе говоря, за месяц она “подвисала” в среднем на 7 минут. По оценке Redicati Group, исследующей ИТ-рынок, корпоративная почта в среднем простаивает примерно в 32 раза дольше.

3. Недостаточно  безопасно.

Разумеется, нельзя гарантировать, что в “облако” не проникнут  вирусы, черви и другие вредоносные  программы. Кроме того, любой человек, располагающий доступом к облачной инфраструктуре, может украсть бесценную  информацию или проявить халатность по отношению к ней. Но все это  верно и в отношению любой  другой компьютерной сети. Есть только один рецепт стопроцентной защиты: избавиться от всех компьютеров. Следующий  по эффективности подход включает следующие  меры: постоянное отслеживание новых  угроз, приобретение или разработка лучших технологий защиты, привлечение  к работе ведущих специалистов по безопасности. Поставщики облачных услуг  раполагают более широкими возможностями  для реализации этих мер, нежели кто-либо другой.

Помимо “внешних угроз” компании заинтересованы в контролировании  собственных сотрудников. И здесь  большинство облачных сервисов не могут  предложить такого качества контроля, какой существует в локальных  администрируемых системах. Однако, сейчас поставщики облачных услуг, ориентированные  на корпоративный сектор, добавляют  к ним инструменты для решения  административных задач. По мере совершенствования  причин сомневаться в безопасности облачных вычислений будет все меньше.

4. Сомнительно  с точки зрения законодательства.

В разных странах существуют свои законы, регламентирующие хранение, распространение и использование  информации. Так, в США существует Закон о хранении и защите данных медицинского страхования, который  предъявляет жесткие требования к процедурам аудита и доступа  информации о пациентах. Согласно законодательству Евросоюза, данные запрещено перемещать за пределы ЕС без предварительного согласия их владельца.

Исходя из этого видно, что клиенты и поставщики облачных служб не м огут не беспокоиться о том, где именно находятся данные. Поставщикам услуг приходится вносить  изменения в инфраструктуру, чтобы  в случае необходимости дать клиентам и надзорным органам гарантии того, что конкретный банк данных будет храниться в определенной стране и нигде больше.


Сервисы облачных вычислений