Cloud Computing
Краткий обзор
Виртуализация
Эталонная модель
Выводы
История развития
Ключевые технологии
Спрос порождает предложение
Определение “Cloud Computing”
Краткий обзор
Виртуализация
Эталонная модель
Выводы
Эволюция технологии распределенных вычислений, 1950-2010-х годов.
5 ключевых технологий, сыгравших важную роль в реализации Cloud computing:
Распределенные системы
Виртуализация
Web 2.0
Сервис-ориентированн
ость
Utility computi
ng
Распределенная система - это набор независимых компьютеров, представляющийся пользователям единой системой.
Три основные вехи привели к облачным вычислениям: мэйнфреймы, кластеры и грид.
Распределенная система cloud computing
Виртуализация – это процесс запуска специализированного программного обеспечения под операционной системой, называемой хостом, дающего возможность создавать виртуальные машины, обладающие заданными характеристиками реальных компьютеров, и запускать на них независимо друг от друга различные гостевые операционные системы.
Web 2.0 - этот термин отражает новый способ разработки приложений и предоставления их через Интернет. Web 2.0 делает веб-страницы интерактивными и гибкими, обеспечивая увеличение пользовательского опыта, путем получения веб-доступа ко всем функциям, которые обычно присущи приложениям для настольных ПК. Это возможно благодаря внедрению стандартов и технологий, таких как XML, асинхронный JavaScript и XML (AJAX), Web Services и другие. Эти технологии позволяют создавать приложения с возможностью вклада пользователей, которые теперь стали поставщиками контента.
Сервис-ориентированная архитектура (SOA) - модульный подход к разработке программного обеспечения, основанный на использовании распределённых, слабо связанных заменяемых компонентов, оснащённых стандартизированными интерфейсами для взаимодействия по стандартизированным протоколам.
SOA представляет собой стиль создания архитектуры ИТ, направленный на превращение программы в ряд связанных сервисов - стандартных бизнес-задач, которые можно при необходимости вызывать через сеть. Это может быть Интернет, локальная сеть, объединяющая различные технологии и сочетающая сервисы из Нью-Йорка, Лондона и Гонконга так, как если бы они были установлены на локальной машине. Для выполнения определенной бизнес-задачи можно объединять множество таких сервисов.
SOA вводит 2 важных концепций, которые также имеют основополагающее значение для облачных вычислений: качество обслуживания (QoS) и Software-as-a-Service (SaaS).QoS определяет набор функциональных и нефункциональных атрибутов, которые могут использоваться для оценки поведения службы с разных точек зрения. Это могут быть метрики производительности, такие как время отклика, или атрибуты безопасности, целостность, надежность, масштабируемость и доступность.
Идея Utility computing состоит в предоставлении компьютерных ресурсов для обработки и хранения данных в качестве сервиса, оплачиваемого в зависимости от объема потребляемых ресурсов. Здесь можно провести аналогию с коммунальными платежами (оплатой газа, электричества или воды).
Cloud computing – это программно-аппаратное
обеспечение, доступное пользователю через
Интернет или локальную сеть в виде сервиса,
позволяющего использовать удобный интерфейс
для удаленного доступа к выделенным ресурсам
(вычислительным ресурсам, программам и
данным).
Краткий обзор
Виртуализация
Эталонная модель
Выводы
Определение виртуализации
Преимущества и недостатки
Основные разновидности
Под термином «виртуализация» обычно понимается абстракция вычислительных ресурсов и предоставление пользователю системы, которая «инкапсулирует» собственную реализацию.
Преимущества виртуализации:
o Эффективное использование вычислительных ресурсов.
o Сокращение расходов на инфраструктуру.o Снижение затрат на программное обеспечение.o Повышение гибкости и скорости реагирования
системы. o Несовместимые приложения могут работать на
одном компьютере.o Повышение доступности приложений и
обеспечение. непрерывности работы предприятия.
o Возможности легкой архивации. o Повышение управляемости инфраструктуры.
Недостатки использования виртуальных машин:
o Обеспечение единовременной работы нескольких виртуальных машин потребует достаточного количества аппаратных мощностей.
o В зависимости от используемого решения, операционная система виртуальной машины может работать медленнее, чем на "чистом" аналогичном аппаратном обеспечении.
Рассмотрим основные разновидности виртуализации, такие как:
o виртуализация серверов (полная виртуализация и паравиртуализация).
o виртуализация на уровне операционных систем. o виртуализация приложений. o виртуализация представлений.
Виртуализация серверов подразумевает запуск на одном физическом сервере нескольких виртуальных серверов. Виртуальные машины или сервера представляют собой приложения, запущенные на хостовой операционной системе, которые эмулируют физические устройства сервера.
В данном типе виртуализации сформировалось 2 направления:
o Поддержка неоднородных операционных сред. (Технически проблема решается путем одновременной работы на одном компьютере нескольких виртуальных машин, каждая из которых включает экземпляр операционной системы. Но реализация этого режима выполнялась с помощью двух принципиально разных подходов: полной виртуализации и паравиртуализации)
o Поддержка однородных вычислительных сред.(Подразумевает изоляцию служб в рамках одного экземпляра ядра операционной системы (виртуализация на уровне ОС), что наиболее характерно для хостинга приложений провайдерами услуг. Конечно, тут можно использовать и вариант виртуальных машин, но гораздо эффективнее создание изолированных контейнеров на базе одного ядра одной ОС)
Полная виртуализация (Full, Native Virtualization). Используются не модифицированные экземпляры гостевых операционных систем, а для поддержки работы этих ОС служит общий слой эмуляции их исполнения поверх хостовой ОС, в роли которой выступает обычная операционная система.
Паравиртуализация (paravirtualization). Модификация ядра гостевой ОС выполняется таким образом, что в нее включается новый набор API, через который она может напрямую работать с аппаратурой, не конфликтуя с другими виртуальными машинами. При этом нет необходимости задействовать полноценную ОС в качестве хостового ПО.
Виртуализация на уровне ядра ОС (operating system-level virtualization). Этот вариант подразумевает использование одного ядра хостовой ОС для создания независимых параллельно работающих операционных сред. Для гостевого ПО создается только собственное сетевое и аппаратное окружение (Virtuozzo, OpenVZ и Solaris Containers).
Виртуализация приложений подразумевает применение модели сильной изоляции прикладных программ с управляемым взаимодействием с ОС, при которой виртуализируется каждый экземпляр приложений, все его основные компоненты: файлы (включая системные), реестр, шрифты, INI-файлы, COM-объекты, службы. Приложение исполняется без процедуры инсталляции в традиционном ее понимании и может запускаться прямо с внешних носителей (например, с флэш-карт или из сетевых папок).
Виртуализация представлений (рабочих мест). Виртуализация представлений подразумевает эмуляцию интерфейса пользователя. Т.е. пользователь видит приложение и работает с ним на своём терминале, хотя на самом деле приложение выполняется на удалённом сервере, а пользователю передаётся лишь картинка удалённого приложения. В зависимости от режима работы пользователь может видеть удалённый рабочий стол и запущенное на нём приложение, либо только само окно приложения.
Краткий обзор
Основная часть
Эталонная модель
Выводы
Эталонная модель облачных вычислений
Модели обслуживания
Модели развёртывания
Эталонная модель Cloud computing
Инфраструктура-как-услуга (IaaS) решения являются самыми популярными. Они предоставляют настраиваемую инфраструктуру по требованию. Доступные опции в рамках IaaS, варьируются от одиночных серверов до всей инфраструктуры, в том числе сетевых устройств, балансировки нагрузки, баз данных и веб-серверов.
Платформа-как-услуга (PaaS) решения обеспечивают разработку и платформы развертывания для запуска приложений в облаке.
SaaS (software as a service — программное обеспечение как услуга) модель использования ПО, при которой поставщик разрабатывает веб-приложение и самостоятельно управляет им, предоставляя доступ к ПО через Интернет. В модели SaaS:
o приложение приспособлено для удаленного использования;
o одним приложением пользуется несколько клиентов (мильтитенантность);
o оплата взимается либо в виде ежемесячной абонентской платы, либо на основе объёма операций;
o техническая поддержка приложения включена в оплату;
o модернизация и обновление приложения происходит оперативно и прозрачно для клиентов.
Мультитенантность — это возможность изолированно обслуживать пользователей из разных организацией (т.е. независимых подписчиков SaaS) в рамках одного сервиса (одной инсталляции или развертывания). Основным здесь является соблюдение изолированности подписчиков друг от друга.
Структура для развертывания нового SaaS-приложения в облаке
Public, Private, Hybrid
Краткий обзор
Основная часть
Выводы
Эталонная модель
Преимущества Cloud
Недостатки Cloud
Пример
Преимущества:
Доступность и отказоустойчивость Всем пользователям, из любой точки где есть Интернет, с любого компьютера, где есть браузер.
Экономичность и эффективность Плати столько, сколько используешь.
Простота Не требуется покупка и настройка программ и оборудования, их обновление.
Гибкость и масштабируемость Неограниченность вычислительных ресурсов (память, процессор, диски).
Недостатки:
Постоянное соединение с сетью Если нет доступа в сеть - нет работы, программ, документов.
Безопасность Не все данные можно доверить стороннему провайдеру в интернете.
Зависимость от "облачного" провайдера Всегда остаётся риск, что провайдер однажды не сделает резервную копию данных.
ПРИМЕР
Top Related