Облачные вычисления
Реферат, 20 Мая 2013, автор: пользователь скрыл имя
Описание работы
Сначала эта идея реализовалась в виде статических библиотек, потом возникла необходимость динамически обновлять объекты – появились DLL и компоненты (COM, сборки .NET), а с появлением сетей понадобилось вызывать компонент, физически размещенный на другом компьютере, для чего стали использоваться протоколы типа RPC, DCOM или .NET Remoting для объектного взаимодействия (см. рис. 1). В процессе стандартизации идея вызывать код по сети трансформировалась в концепцию сервис-ориентированной архитектуры (Service-Oriented SOA), представляющую, в конечном счете, обычную абстракцию вызова кода по сети. Наиболее важной частью SOA является независимое развертывание сервисов. Если в случае DLL надо быть готовым к динамическим изменениям версии и возможностей библиотеки, то в случае SOA это явным образом заложено в архитектуру – вызывая сервис, мы не знаем, как он реализован и не можем управлять его обновлениями.
Содержание работы
ВВЕДЕНИЕ 3
ОСНОВНЫЕ НАПРАВЛЕНИЯ РАЗВИТИЯ ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ. 7
ДОСТОИНСТВА ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ 11
НЕДОСТАТКИ ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ 15
ПОСТАВЩИКИ «ОБЛАКОВ» 16
Azure Services Platform 17
Windows Azure 18
Google App Engine 20
Amazon Web Servic 21
ОБЛАЧНЫЕ ВЫЧИСЛЕНИЯ В РОССИИ 23
БИЗНЕС И ОБЛАЧНЫЕ ВЫЧИСЛЕНИЯ 24
ПЕРСПЕКТИВЫ ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ 25
ЗАКЛЮЧЕНИЕ 26
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 28
Файлы: 1 файл
Облачные вычисления.doc
— 738.50 Кб (Скачать файл)
Содержание
Введение
Тема облачных вычислений становиться все популярней в бизнесе. Раньше многие компании приобретали сервера, которые затем объединяли в кластеры и центры данных, приобретали программное обеспечение, для развертывания всей инфраструктуры и построения масштабируемой системы. Затем оценивали риски, связанные с недооценкой или переоценкой загрузки, – инвестировав в разработку, и возможно не получив ожидаемого притока клиентов и поняв, что все средства были потрачены в пустую.
Избежать все этого
позволяет модель аренды, которая
может еще оказаться и
Например, две компании одновременно запускают аналогичный сервис, но одна строит ЦОД (Центр Обработки Данных) самостоятельно, а другая сразу разворачивает сервис на масштабируемой облачной платформе. Каждый месяц число пользователей сервиса увеличивается в разы и очень скоро первая компания понимает, что существующих мощностей недостаточно, и тратит месяц на увеличение мощности своего ЦОД или на переписывание приложения с учетом масштабируемости. Вторая компания в этом случае лишь увеличивает арендованные мощности. К тому моменту пока первая компания перепишет сервис или нарастит мощность оборудования, вторая переманит у нее новых клиентов.
Для решения проблемы сложности программных систем в свое время была предложена идея повторного использования кода, получившая развитие в двух направлениях – подпрограммы (процедуры и функции) и объекты.
Сначала эта идея реализовалась в виде статических библиотек, потом возникла необходимость динамически обновлять объекты – появились DLL и компоненты (COM, сборки .NET), а с появлением сетей понадобилось вызывать компонент, физически размещенный на другом компьютере, для чего стали использоваться протоколы типа RPC, DCOM или .NET Remoting для объектного взаимодействия (см. рис. 1). В процессе стандартизации идея вызывать код по сети трансформировалась в концепцию сервис-ориентированной архитектуры (Service-Oriented SOA), представляющую, в конечном счете, обычную абстракцию вызова кода по сети. Наиболее важной частью SOA является независимое развертывание сервисов. Если в случае DLL надо быть готовым к динамическим изменениям версии и возможностей библиотеки, то в случае SOA это явным образом заложено в архитектуру – вызывая сервис, мы не знаем, как он реализован и не можем управлять его обновлениями.
Рис.1. Развитие компонентного подхода
Облако – это дальнейшее развитие идей компонентного подхода, если речь идет о серверной части приложений, то одной из возможных платформ могут быть серверы, расположенные не в локальном ЦОД компании, а в облаке, из которого можно арендовать мощности.
ИТ-индустрия сегодня уже сформулировала определение «облачных» вычислений, а аналитики начали рисовать радужные перспективы, представляя «облачные» вычисления не как новый вид сервиса, а как объединение разных видов сервисов, для предложения которых нужна одна инфраструктура – удаленный сервер для выполнения приложения, за работоспособность которого отвечает третья сторона. «Облачные вычисления» (cloud computing) — концепция «вычислительного облака», согласно которой программы запускаются и выдают результаты работы в окно стандартного веб-браузера на локальном ПК, при этом все приложения и их данные, необходимые для работы, находятся на удаленном сервере в Интернете. «Облака» объединяют множество областей ИТ, которые раньше, имея много общего, разделялись. Из «облаков» подразумевается получать платформы для вычислений (серверы и виртуальные машины) или приложений, а также сами приложения, доставляемые в рамках концепции SaaS. Работа «облака» обеспечивается неким комплексом аппаратных и программных средств – операционной системой «облака» (ОСО), которая поддерживает работу с клиентом, опираясь на сеть крупных центров хранения и обработки данных.
Основные направления развития облачных вычислений
Четыре основных направления развития облачных вычислений являются Internet-сервисы, IaaS, PaaS и SaaS. (см. рис.2). [1] Рассмотрим их и другие аббревиатуры *aaS.
- Некоторые продукты напрямую предоставляют пользователям та
кие Internet-сервисы, как системы хранения, программное обеспечение промеж уточного слоя, поддержка совместной работы и базы данных. - IaaS (Infrastructure as a Service) – инфраструктура как сервис. Аренда сервера/кластера и плата за использованные ресурсы. Здесь наиболее широкие возможности для творчества – возможен выбор ОС, необходимых сервисов и написание конечных приложений. Это самый дорогой вариант, но зато имеется полная свобода действий. Типичные представители: Amazon EC2, GoGrid, ElasticHosts и др.
- PaaS (Platform as a Service) – платформа как сервис. Логическое продолжение IaaS, но уже есть ОС, определённый набор ПО и все это уже настроено. Не нужно вникать глубоко в недры всей системы , т.к. уже предоставлен некий набор API для работы. Этот вариант гораздо дешевле предыдущего, но всё равно необходимо писать приложение. Оплачиваются только израсходованные ресурсы. Подходит подавляющему числу разработчиков. Типичные примеры: Google App Engine, Windows Azure, AptanaCloud.
- SaaS (software as a Service) – программное обеспечение как сервис. Готовое приложение для конечных пользователей. Вариантов оплаты огромное множество – за ресурсы, просмотр рекламы, абонентская плата и т.д. Типичные представители: современные почтовые службы (Gmail, Yandex, Rambler), файлообменники, многие CRM/ERP-системы. Отличительной чертой является доступ к приложению посредством веб-браузера, но не всегда.
Рис.2. Четыре основных вида сервисов на базе вычислений из облака.
Другие *aaS: например, DaaS (Desktop as a Service) предлагает каждому пользователю стандартизированное виртуальное рабочее место, с возможностью настройки и установки других программ. Доступ осуществляется по сети посредством тонкого клиента, которым может быть что угодно от обычного ПК до смартфона (Google Chrome OS).
CaaS (Communications as a Service) –
сочетания программно-
Альтернативный вариант SaaS продвигает корпорация Microsoft, называется он S+S (Software+Services) и сочетает в себе сильные стороны типичного SaaS и обычного десктопного приложения. Это обычное ПО, но с ориентацией на удалённые сервисы.
Вычисления в облаке превращаются в серьезную технологическую тенденцию — многие эксперты полагают, что в ближайшие пять лет cloud computing изменит не только ИТ-процессы, но и сам рынок информационных технологий. Благодаря этой технологии пользователи устройств самых разных видов, в том числе ПК, ноутбуков, смартфонов и КПК, смогут получать доступ к программам, системам хранения и даже к платформам разработки приложений по Internet, через сервисы, предлагаемые провайдерами вычислений в облаке, причем ресурсы в этом случае размещаются на серверах провайдеров.
Сторонники вычислений в облаке особо подчеркивают их преимущества: снижение затрат, высокая готовность и масштабируемость. Согласно прогнозам, расходы на ИТ-сервисы из облаков (рис. 3) вырастут с 16 млрд в 2008 году до 42 млрд долл. в 2012-м. Аналитики считают, что на долю вычислений в облаке придется 25% годового увеличения расходов на ИТ к 2012 году.
Рис.3. Прогнозы роста расходов на ИТ-сервисы в «облака».
«Переход на вычисления в облаке значительно сократит расходы на информационные технологии», — утверждает Русс Даниэлс, директор компании HP по стратегии вычислений в облаке. — Но одной только экономией средств дело не ограничивается. Эта технология освобождает потребителей от расходов и сложностей, связанных с установкой и поддержкой приложений». Кроме того, вычисления в облаке снижают стоимость разработки приложений и делают процесс более масштабируемым, отметил Симон Херон, аналитик компании Network Box, специализирующейся на вопросах Internet-безопасности.
Достоинства облачных вычислений
- Снижение требований к вычислительной мощности ПК. Пользователям нет необходимости покупать дорогие компьютеры, с большим объемом памяти и дисков, чтобы использовать программы через веб-интерфейс. Также нет необходимости в СD и DVD приводах, так как вся информация и программы остаются в "облаке". Пользователи могут перейти с обычных компьютеров и ноутбуков на более компактные и удобные нетбуки. Непременным условием является только наличие доступа в Интернет
- Уменьшение затрат и увеличение эффективности IT инфраструктуры. Обычные сервера средней компании загружены на 10-15%. В одни периоды времени есть потребность в дополнительных вычислительных ресурсах, в других эти дорогостоящие ресурсы простаивают. Используя необходимое количество вычислительных ресурсов в "облаке" в любой момент времени, компании сокращают затраты на оборудование и его обслуживание до 50%. При этом многократно увеличивается гибкость производства в постоянно меняющейся экономической обстановке. Если достаточно большая фирма обеспокоена тем, что ценная информация будет храниться и обрабатываться на стороне, для такой фирмы можно построить свое собственное "облако" и наслаждаться всеми выгодами от виртуализации инфраструктуры.
- Уменьшение проблем с обслуживанием. Так как физических серверов с внедрением Cloud Computing становится меньше, их становится легче и быстрее обслуживать. Что касается программного обеспечения, то последнее установлено, настроено и обновляется в "облаке".
- Уменьшение затрат на приобретаемое программное обеспечение. Вместо приобретения пакетов программ для каждого локального пользователя, компании покупают нужные программы в "облаке". Данные программы будут использоваться только теми пользователями, которым эти программы необходимы в работе. Более того, стоимость программ, ориентированных на доступ через Интернет, значительно ниже, чем их аналогов для персональных компьютеров. Если программы используются не часто, то их можно просто арендовать с почасовой оплатой. Затраты на обновление программ и поддержку в работоспособном состоянии на всех рабочих мечтах вовсе сведены к нулю.
- Постоянное обновление программ. В любое время, когда пользователь запускает удаленную программу, он может быть уверен, что эта программа имеет последнюю версию - без необходимости что-то переустанавливать или платить за обновления.
- Увеличение доступных вычислительных мощностей. По сравнению с персональным компьютером вычислительная мощь, доступная пользователю "облачных" компьютеров, практически ограничена лишь размером "облака", то есть общим количеством удаленных серверов. Пользователи могут запускать более сложные задачи, с большим количеством необходимой памяти, места для хранения данных, тогда, когда это необходимо. Т.е. пользователи могут при желании легко и дешево поработать с суперкомпьютером без каких-либо фактических приобретений.
- Неограниченный объем хранимых данных. По сравнению с доступным местом для хранения информации на персональных компьютерах объем хранилища в "облаке" может гибко и автоматически подстраиваться под нужды пользователя. При хранении информации в "облаке" пользователи могут забыть об ограничениях, накладываемых обычными дисками, - "облачные" размеры исчисляются миллиардами гигабайт доступного места.
- Совместимость с большинством операционных систем. В Cloud Computing операционные системы не играют никакой роли. Пользователи Unix могут обмениваться документами с пользователями Microsoft Windows и наоборот без каких либо-проблем. Доступ к программам и виртуальным компьютерам происходит при помощи веб-браузера или другими средствами доступа, устанавливаемые на любой персональный компьютер с любой операционной системой.
- Улучшенная совместимость форматов документов. Если пользователи пользуются одной "облачной" программой для создания и редактирования документов, у них просто нет несовместимости версий и форматов, в отличие от тех, кто, например, получит документ Word 2007 и не сможет прочитать его на локальном компьютере с Word 2003 или OpenOffice. Хорошим примером совместимости является офисный пакет Google Docs, позволяющий совместную работу над документами, презентациями и таблицами имея под рукой любой компьютер с веб-браузером.
- Простота совместной работы группы пользователей. При работе с документами в "облаке" нет необходимости пересылать друг другу их версии или последовательно редактировать их. Теперь пользователи могут быть увереными, что перед ними последняя версия документа и любое изменение, внесенное одним пользователем, мгновенно отражается у другого.
- Повсеместный доступ к документам. Если документы хранятся в "облаке", они могут быть доступны пользователям в любое время и в любом месте.
- Всегда самая последняя и свежая версия. В "облаке" всегда находится самая последняя и самая свежая версия программы или документа.
- Доступность с различных устройств. Пользователи Cloud Computing имеют гораздо более широкий выбор устройств доступа к документам и программам.
- Дружелюбие к природе, экономное расходование ее ресурсов. Cloud Computing позволяет не только экономить на электричестве, вычислительных ресурсах, физическом пространстве, занимаемом серверами, но и разумно подходить к расходованию природных ресурсов.
- Устойчивость данных к потере или краже оборудования. Если данные хранятся в "облаке", их копии автоматически распределяются по нескольким серверам, возможно находящимся на разных континентах. При краже или поломке персональных компьютеров пользователь не теряет ценную информацию, которую он к тому же может получить с любого другого компьютера.
Недостатки облачных вычислений
- Постоянное соединение с сетью Интернет. Cloud Computing всегда требует соединения с сетью Интернет. Или почти всегда. Некоторые "облачные" программы загружаются на локальный компьютер и используются в то время, когда Интернет недоступен. В остальных случаях, если нет доступа в Интернет - нет работы, программ, документов.
- Плохая работа с медленным Интернет-доступом. Многие "облачные" программы требуют хорошего Интернет-соединения с большой пропускной способностью.
- Программы могут работать медленнее, чем на локальном компьютере. Некоторые программы, в которых требуется передача значительного количества информации, будут работать на локальном компьютере быстрее не только из-за ограничений скорости доступа в Интернет, но и из-за загруженности удаленных серверов и проблем на пути между пользователем и "облаком".
- Не все программы или их свойства доступны удаленно. Если сравнивать программы для локального использования и их "облачные" аналоги, последние пока проигрывают в функциональности. Например, таблицы Google Docs имеют гораздо меньше функций и возможностей, чем Microsoft Excel.
- Зависимость сохранности пользовательских данных от компаний, предоставляющих услугу cloud computing.
- Если Ваши данные в "облаке" потеряны, они потеряны навсегда - это факт. Но потерять данные в "облаке" гораздо сложнее, чем на локальном компьютере.
- Появление новых («облачных») монополистов.
Поставщики «облаков»
Классификация поставщиков «облаков» (рис. 4), в которой выделяются две большие группы: поставщики платформных «облаков» (ИТ-компании, предлагающие хостинг на базе собственного ПО) и поставщики «облаков» услуг, использующие для создания сервисов ПО других компаний. Первая группа поставщиков делится на три подгруппы: Google, Microsoft и другие крупные компании (IBM, Apple, а также Yahoo!, EMC, HP/EDS, Amazon, Facebook, Adobe и т.д.). Ко второй группе поставщиков «облачных» вычислений можно отнести независимых сервис-провайдеров, предоставляющих услуги внешним клиентам, а также внутрикорпоративных провайдеров, обслуживающих филиалы, отделы и дочерние подразделения, а также сотрудников и партнеров.